陳明秀
【摘? 要】 隨著現(xiàn)代信息技術(shù)快速發(fā)展及廣泛應(yīng)用,信息技術(shù)在各行各業(yè)中發(fā)揮著非常重要的作用,海量數(shù)據(jù)信息可以實現(xiàn)高效存儲共享與數(shù)據(jù)價值分析,且功能不斷擴大效果越來越穩(wěn)定,但隨之而來的安全漏洞也越來越多且復(fù)雜化。如何檢測計算機軟件中的安全漏洞并查找原因及彌補缺陷,需要計算機軟件研發(fā)人員及相關(guān)工作人員不斷思考研究,從而確保計算機軟件信息安全。文章對計算機軟件中安全漏洞特點進行分析,并列舉了部分安全漏洞檢測技術(shù),提出計算機軟件中安全漏洞檢測技術(shù)應(yīng)用策略,以期為促進計算機信息技術(shù)發(fā)展貢獻一些力量。
【關(guān)鍵詞】 計算機軟件;安全漏洞;檢測技術(shù)
隨著計算機信息技術(shù)快速發(fā)展,各行各業(yè)中應(yīng)用現(xiàn)代信息技術(shù)的范圍及深度不斷擴展,現(xiàn)代信息技術(shù)不僅簡化了辦公流程提高工作效率,也降低了對人力資源的依賴,減少了人力資源成本。為了提高工作效率及質(zhì)量,企業(yè)需要不斷引進、更新、升級計算機軟件技術(shù),因此,其源代碼數(shù)量規(guī)模不斷擴大,也出現(xiàn)了越來越多的安全風險,其中代碼中存在的安全漏洞給企業(yè)帶來較大的安全隱患,危及企業(yè)重要數(shù)據(jù)信息甚至商業(yè)秘密。因此,計算機軟件開發(fā)人員及應(yīng)用企業(yè)都必須重視軟件中的安全漏洞檢測,通過先進的檢測技術(shù)及時排查安全漏洞并制定彌補措施,從而確保企業(yè)信息安全。
一、計算機軟件安全漏洞特點分析
(一)原發(fā)性
原發(fā)性是計算機軟件中由于自身編程存在缺陷而導(dǎo)致的安全漏洞。原發(fā)性的安全漏洞會帶來較大安全風險,尤其容易被不法分子加以利用攻擊計算機軟件,導(dǎo)致應(yīng)用企業(yè)的信息泄露或被篡改、丟失等,進而給企業(yè)帶來巨大的經(jīng)濟損失。原發(fā)性的計算機軟件安全漏洞主要是由軟件編程工作人員設(shè)計系統(tǒng)時失誤而導(dǎo)致的,屬于計算機軟件的先天性缺陷,后期應(yīng)用計算機軟件過程中如未能及時發(fā)現(xiàn)及解決,將會埋下較大的安全隱患。計算機軟件開發(fā)并不是簡單的活動,由于人員水平等原因?qū)е萝浖性l(fā)性安全漏洞很難避免,開發(fā)人員及應(yīng)用企業(yè)需要對計算機軟件進行定期維護及更新,確保安全漏洞得到及時的處理。
(二)差異性
當前信息技術(shù)發(fā)展較快,不同行業(yè)對計算機軟件的應(yīng)用要求不同。市場中開發(fā)及應(yīng)用的計算機軟件類型非常多,工作環(huán)境及硬件配套設(shè)施等也各不相同。因此計算機軟件中安全漏洞也存在較大的差異。運行代碼在不同硬件設(shè)備中的運行情況也存在差異,對硬件性能等適應(yīng)性不同,安全漏洞差異性特點更加明顯。
(三)延續(xù)性
計算機軟件安全漏洞是無法永久性解決的,隨著計算機軟件技術(shù)發(fā)展,自身在不斷優(yōu)化升級的同時,安全漏洞也不斷改變,原始漏洞被發(fā)現(xiàn)并修補后又因為應(yīng)用運行環(huán)境的變化及外部攻擊技術(shù)的發(fā)展等產(chǎn)生新的漏洞。因此,計算機軟件安全漏洞具備一定的延續(xù)性特征。
二、計算機軟件安全漏洞檢測技術(shù)分析
(一)動態(tài)檢測技術(shù)
目前動態(tài)檢測技術(shù)有多種類型,文章主要分析內(nèi)存映射、非執(zhí)行棧、沙箱和安全共享庫。
1. 內(nèi)存映射
內(nèi)存映射是關(guān)聯(lián)進程中一個虛擬內(nèi)存區(qū)域映射一個磁盤上的對象而形成的映射關(guān)系,映射過程就是將該虛擬內(nèi)存區(qū)域初始化,初始化后的虛擬內(nèi)存可以在交換空間中進行切換,其中被映射的對象叫作共享對象。當多個進程的虛擬內(nèi)存區(qū)域與同一個共享對象構(gòu)建成映射關(guān)系后,進程中對虛擬區(qū)域操作后可以映射到自身虛擬內(nèi)存區(qū)域中。
2. 非執(zhí)行棧
隨著計算機軟件技術(shù)發(fā)展,黑客攻擊技術(shù)也不斷提升。從大多數(shù)計算機軟件系統(tǒng)攻擊中可以看到,遭受嚴重攻擊的主要原因是棧被破壞了,導(dǎo)致計算機軟件系統(tǒng)棧能寫和執(zhí)行。整個環(huán)節(jié)中棧核心數(shù)組變量是計算機內(nèi)部存儲多種信息變量呈現(xiàn)出來的特征,而計算機系統(tǒng)遭受攻擊后會把惡意代碼發(fā)送到棧中,進而損害計算機內(nèi)部操作系統(tǒng),最終利用棧內(nèi)代碼快速更改以阻止此行為執(zhí)行。更改代碼后安全攻擊的成功率難以降低,這也就提高了計算機軟件系統(tǒng)的安全性能。
3. 安全共享庫
為了保護數(shù)據(jù)共享的安全性,安全共享庫是應(yīng)用比較多的計算機軟件安全漏洞檢測技術(shù)。在安全共享庫保障下的數(shù)據(jù)共享更加便利快捷且安全性高,但仍存在一定的風險性。在現(xiàn)代社會經(jīng)濟發(fā)展過程中,數(shù)據(jù)共享是必然的,數(shù)據(jù)共享是否安全與共享平臺及傳輸渠道的安全性能有密切關(guān)系。若企業(yè)共享庫運行環(huán)境安全性能較差,數(shù)據(jù)共享的安全性會大打折扣甚至出現(xiàn)泄漏情況。此外,當計算機軟件使用的共享空間安全系數(shù)較低時,產(chǎn)生安全漏洞的情況也屢見不鮮,而安全共享庫就是不斷推進信息共享庫動態(tài)運行,使計算機軟件的運行環(huán)境更加安全平穩(wěn),進而達到保護數(shù)據(jù)信息安全的目的。在計算機運行前提條件下通過保證共享庫鏈接運作的方式將計算機軟件運行過程中一些安全性較低的程序進行攔截,額外檢測計算機軟件的安全性,從而保證計算機軟件運行安全有效。
4. 沙箱
沙箱技術(shù)可有效防范計算機軟件中一些損害性比較強的攻擊行為,例如通過程序資源的訪問功能進行防范。具體來說就是計算機在運行過程中利用C語言編寫一些調(diào)動函數(shù),計算機軟件本身無法調(diào)動這些函數(shù),系統(tǒng)開啟預(yù)防操作后會生成一些行為與調(diào)動函數(shù)類似,進而判斷軟件是否被非法攻擊。利用沙箱檢測技術(shù)時要及時完成沙箱限定,進而第一時間預(yù)防非法入侵沙箱而避免計算機軟件系統(tǒng)被破壞。
(二)靜態(tài)檢測技術(shù)
1. 定理證明檢測技術(shù)
定理證明檢測技術(shù)主要應(yīng)用在計算機程序抽象公式的抽查方面,通過定理證明檢測技術(shù)可以準確地判斷出計算機軟件是否受到黑客攻擊,并可以排查出隱藏的安全漏洞。定理證明檢測技術(shù)可以精準化檢測安全漏洞和高效阻截非法入侵行為,從而保證整個計算機軟件系統(tǒng)運行的安全性能。
2. 模型檢測技術(shù)
模型檢驗是利用計算機系統(tǒng)程序中的有向圖、狀態(tài)等構(gòu)建成抽象的模型,利用模型更好地完成系統(tǒng)的特征檢驗工作。采用模型檢測技術(shù)檢測計算機軟件安全漏洞的重點是利用軟件行為及結(jié)構(gòu)構(gòu)建出相應(yīng)的模型,對計算機系統(tǒng)模式及優(yōu)先狀態(tài)進行計算和驗證,并在驗證結(jié)果的基礎(chǔ)上建模操作。然后利用模型分析計算和驗證計算機軟件程序構(gòu)造特征情況,進而分析出計算機軟件存在的安全漏洞。模型檢測技術(shù)包括模型自動轉(zhuǎn)化檢驗方法和符號化檢驗方法。其中符號化檢驗方法是將抽象模型轉(zhuǎn)換為語法樹形式,采用公式形式進行描述,通過公式與需求是否相符判斷安全漏洞。模型自動轉(zhuǎn)化檢驗方法則是將檢測程序轉(zhuǎn)變?yōu)榈葍r自動機,兩個自動機之間相互替換和補充并構(gòu)成一個新自動機,然后把判定系統(tǒng)轉(zhuǎn)換為語言形式且具備一定的容納性。
3. 類型推導(dǎo)檢測技術(shù)
類型推導(dǎo)檢測技術(shù)是靜態(tài)檢測技術(shù)中重要的組成部分。類型推導(dǎo)檢測技術(shù)主要是通過推導(dǎo)計算機的函數(shù)和程序變量等,以推導(dǎo)結(jié)果準確判斷計算機函數(shù)和程序變量中是否存在異?,F(xiàn)象,一旦存在異?,F(xiàn)象則要查找原因,判斷出計算機軟件安全漏洞所屬類型、安全漏洞產(chǎn)生的威脅或破壞情況。類型推導(dǎo)檢測技術(shù)的應(yīng)用條件具備一定特殊性,主要是應(yīng)用在與程序無任何關(guān)聯(lián)性的檢測環(huán)節(jié)中較多。
4. 規(guī)則檢測技術(shù)
規(guī)則檢測技術(shù)主要是對程序本身安全漏洞進行檢測,對操作人員操作失誤所帶來的安全漏洞檢測效果更好。計算機軟件系統(tǒng)是由程序員根據(jù)一定的規(guī)則及目的編寫出來的,程序員并不是萬能的,在操作編寫過程中難以全方位避免所有的失誤,一旦人工操作失誤會導(dǎo)致計算機軟件判斷失誤或計算失誤,最終形成一定的安全漏洞。而通過規(guī)則檢測技術(shù)則可以較好地解決人員操作失誤的問題,將描述程序規(guī)則的語法固定,然后利用規(guī)則處理器完成分析處理操作及對比程序行為,進而有效、及時地防范計算機軟件安全漏洞。
5. 靜態(tài)分析技術(shù)
靜態(tài)分析技術(shù)主要是對程序代碼進行全面截止的掃描,將程序代碼中的關(guān)鍵句及語法等提煉出來并解讀其含義,然后借助解讀分析程序行為,按照預(yù)先設(shè)定好的安全漏洞特性及計算機軟件系統(tǒng)安全標準等進行檢測以發(fā)現(xiàn)漏洞。靜態(tài)分析技術(shù)首先是分析語法和詞句,最早的靜態(tài)分析技術(shù)的核心就是語法和詞句。一般情況下系統(tǒng)程序會分成語句片段,比較語句片段與疑問數(shù)據(jù)庫,當檢測到計算機軟件存在安全漏洞時會開啟啟發(fā)式評估及判定。靜態(tài)分析技術(shù)可以在一定程度上檢測出安全漏洞,但由于檢測數(shù)量有限,容易出現(xiàn)漏報安全漏洞的情況。利用靜態(tài)分析技術(shù)檢測安全漏洞需要嚴格執(zhí)行一定的標準要求,而安全標準描述的是計算機系統(tǒng)運行具體情況,計算機軟件程序自身具備一定的編程標準,這些標準也是一般安全標準和漏洞模式。
三、計算機軟件安全漏洞檢測技術(shù)應(yīng)用策略
(一)預(yù)防競爭關(guān)系的漏洞
當計算機軟件處在一個競爭環(huán)境下,安全漏洞往往更容易產(chǎn)生。究其原因,計算機運行時會存在各種各樣的缺陷,沒有絕對安全與穩(wěn)定的運行環(huán)境。為了減少安全漏洞的產(chǎn)生必須做好預(yù)防漏洞產(chǎn)生的防范工作。例如將競爭條件下的編碼進行原子化處理進而減少安全漏洞。其中編碼是計算機軟件運行中所涉及的最小單位,在原子化操作下可以逐步減少編碼運行的干擾因素。
(二)預(yù)防緩沖區(qū)出現(xiàn)漏洞
計算機軟件中另一個極容易產(chǎn)生漏洞的地方是緩沖區(qū),計算機軟件必須針對緩沖區(qū)進行預(yù)防,例如通過軟件程序中危險數(shù)值較高的函數(shù)快速檢測緩沖區(qū)域內(nèi)的安全漏洞,同時更換安全性能更高和技術(shù)含量更高的軟件版本以減少計算機軟件運行過程中的漏洞,尤其是針對一些安全系數(shù)較低或滯后性較大的計算機軟件應(yīng)及時進行更換。
(三)隨時檢測預(yù)防產(chǎn)生新漏洞
計算機軟件安全漏洞具備原發(fā)性、差異性和延續(xù)性特征,其中延續(xù)性特征說明計算機軟件安全漏洞會隨著軟件技術(shù)的發(fā)展進步及外部環(huán)境變化等而不斷變化,呈現(xiàn)出螺旋式上升的趨勢。若只對計算機軟件安全漏洞進行修補,只是一種事后彌補措施,對計算機軟件正常運行及發(fā)揮功能來說是遠遠不夠的。計算機軟件需要實時監(jiān)測自身是否存在漏洞,并不斷更新檢測技術(shù),對潛在的新漏洞及時發(fā)現(xiàn)檢測出來并及時制定預(yù)防處理措施。為保證設(shè)備具有較強的密碼演算程序,必須使用一些性能較好的設(shè)備預(yù)防新漏洞產(chǎn)生。
(四)預(yù)防格式化字符串漏洞
在一些嚴密且謹慎防范計算機軟件安全漏洞方案的運行或執(zhí)行過程中,可在數(shù)據(jù)加密環(huán)節(jié)直接應(yīng)用格式常量,應(yīng)用格式常量可以避免違法犯罪分子或黑客找到可利用的漏洞缺陷,減少計算機軟件被攻擊的可能性。格式化字符串是計算機軟件中的薄弱點和個數(shù)函數(shù)最大的安全隱患,也是黑客攻擊主要范圍之一。為了防范格式化字符串漏洞,必須掌控每一串數(shù)據(jù),尤其是一些軟件參數(shù)設(shè)置要提高檢測的精準性。計算機軟件格式化漏洞危害比較大,會導(dǎo)致計算機系統(tǒng)中的關(guān)鍵性數(shù)據(jù)信息丟失或被不法分子、黑客等盜取。此外,格式化字符串漏洞后續(xù)難以完整修復(fù),對計算機軟件危害比較大且具備一定的持續(xù)性。
四、結(jié)語
隨著信息化時代的到來,計算機軟件技術(shù)已經(jīng)在社會經(jīng)濟發(fā)展及人們生活中發(fā)揮著越來越重要的作用,計算機軟件技術(shù)已經(jīng)深入應(yīng)用在現(xiàn)代化辦公模式中。一旦計算機軟件出現(xiàn)安全漏洞,對企業(yè)或個人所產(chǎn)生的影響是巨大的,會帶來較大的經(jīng)濟損失等。因此在應(yīng)用計算機軟件技術(shù)時要重視對安全漏洞的檢測,及時排查出隱藏的安全漏洞,確保計算機軟件正常安全及穩(wěn)定運行,同時保證相關(guān)的數(shù)據(jù)信息準確安全有效。除了文章所述的安全漏洞檢測技術(shù)以外,在使用計算機軟件過程中,可通過更換計算機軟件版本,規(guī)定計算機軟件操作權(quán)限等防范安全漏洞,不斷研究創(chuàng)新安全漏洞檢測技術(shù),確保計算機軟件安全漏洞能夠及時檢測排查,進而提高計算機軟件運行質(zhì)量與效率。
參考文獻:
[1] 霍莉莉. 計算機軟件中安全漏洞檢測技術(shù)及其應(yīng)用研究[J]. 軟件,2023,44(06):98-100.
[2] 王朝輝. 計算機軟件中安全漏洞檢測技術(shù)與應(yīng)用分析[J]. 軟件,2023,44(04):164-167.
[3] 黃子龍. 計算機軟件中安全漏洞檢測技術(shù)與應(yīng)用分析[J]. 電子測試,2022,36(23):134-136.
[4] 李巖. 計算機軟件中安全漏洞檢測技術(shù)的應(yīng)用問題探討[J]. 電子元器件與信息技術(shù),2021,5(05):235-236.