范永寧
摘 要:隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,互聯(lián)網(wǎng)已經(jīng)遍及社會的各行各業(yè),與人們的生活、工作有著密不可分的聯(lián)系,與此同時,由于軟件規(guī)模越來越龐大,軟件邏輯越來越復(fù)雜,不可避免的會產(chǎn)生軟件安全漏洞,安全漏洞的出現(xiàn)直接威脅到了人們的自身利益。因此,筆者就計算機軟件中的安全漏洞檢測技術(shù)進行分析,并就安全漏洞檢測技術(shù)的應(yīng)用進行討論,旨在為我國信息安全事業(yè)的發(fā)展做出一定貢獻。
關(guān)鍵詞:計算機軟件;安全漏洞檢測技術(shù);應(yīng)用
一、計算機軟件中安全漏洞檢測技術(shù)
(一)計算機安全漏洞動態(tài)檢測技術(shù)
計算機安全漏洞動態(tài)檢測技術(shù)是指在對計算機安全漏洞進行動態(tài)檢測時,需要根據(jù)程序的運行狀況及運行環(huán)境進行修改,從而解決當(dāng)前的安全漏洞,但該檢測技術(shù)也會引發(fā)一些新的安全隱患,從而影響系統(tǒng)的正常運轉(zhuǎn)。計算機安全漏洞動態(tài)檢測技術(shù)主要可以分為以下幾個方面。
首先,為了防止數(shù)據(jù)棧被攻擊,可以暫時性的讓數(shù)據(jù)棧停止工作,避免棧在工作中被惡意代碼所修改,為實現(xiàn)上述目的可以對軟件系統(tǒng)進行加密設(shè)置。數(shù)據(jù)棧在計算機軟件中起著至關(guān)重要的作用,棧漏洞出現(xiàn)很有可能給系統(tǒng)帶來無法挽回的損失。
其次,堆指的是計算機程序中內(nèi)存所分配到的區(qū)域,堆空間在系統(tǒng)編程開始就已經(jīng)被初始化,為了有效規(guī)避不法分子利用堆漏洞對系統(tǒng)的攻擊,可以將非執(zhí)行棧與漏洞檢測技術(shù)相結(jié)合,但這種方式會占用較大的內(nèi)存,加重了計算機的負(fù)荷。
再者,可以利用內(nèi)存映射技術(shù),將黑客所要攻擊的代碼映射到系統(tǒng)中的一個隨機地址上,為了找到具體的攻擊地址,往往需要耗費大量的時間與精力,從而提升了系統(tǒng)的可靠性,且這種方法實現(xiàn)較為方便,可行性較強。
再者,為了有效地檢測出程序中存在的安全漏洞,可以采用如下的措施:首先需要編譯新的啟動代碼,隨后將啟動代碼嵌入程序中,最后利用新的代碼程序?qū)忉尶蚣苓M行調(diào)試。
最后,安全漏洞動態(tài)檢測技術(shù)規(guī)避安全漏洞的方式主要是通過訪問控制,對不合理的訪問行為進行阻止,而訪問控制策略的科學(xué)性直接影響了漏洞檢測的成效,若訪問控制策略較為嚴(yán)格,可以阻擋黑客的攻擊行為,但也會限制用戶的正常使用。因此,必須科學(xué)定義訪問控制策略,既要限制黑客的訪問,又要保證用戶功能的正常使用。
(二)計算機軟件中安全漏洞靜態(tài)檢測技術(shù)
安全漏洞靜態(tài)檢測技術(shù)是指借助于程序分析技術(shù)對二進制代碼及代碼源進行分析的過程,采用安全漏洞靜態(tài)檢測技術(shù)降低了對軟件的需求,可以在不依賴其他軟件的基礎(chǔ)上實現(xiàn)檢測功能,與此同時,采用安全漏洞靜態(tài)檢測技術(shù)所產(chǎn)生的安全漏洞更少。安全漏洞靜態(tài)檢測技術(shù)主要包括以下幾個方面:
第一,借助于語法分析技術(shù)完成對程序或程序片段的檢查,若程序代碼量過于龐大,可以拆分成多個程序段,然后將每一個可控的片段與系統(tǒng)中可能存在的安全漏洞數(shù)據(jù)進行對比分析,由于工作量較大且處理流程較為繁瑣,常會導(dǎo)致漏報現(xiàn)象的發(fā)生,致使該方法的可行性較低。
第二,利用規(guī)則檢查技術(shù)對計算機軟件中的程序進行檢查,程序員在搭建系統(tǒng)軟件的過程中,由于粗心或業(yè)務(wù)能力不合格,也會導(dǎo)致安全漏洞的產(chǎn)生,規(guī)則檢測技術(shù)簡單來說就是根據(jù)特定的語法規(guī)則將程序描述出來,再根據(jù)規(guī)則處理器對程序進行處理,將處理后的數(shù)據(jù)傳入到分析器中,與之前的程序進行比較,從而有效發(fā)現(xiàn)計算機軟件中存在的安全漏洞,提升軟件的安全性。
第三,類型推導(dǎo)技術(shù)也是安全漏洞靜態(tài)檢測技術(shù)中最為常用的一種,該方法可以對程序中的變量及類型進行推導(dǎo),在此基礎(chǔ)上對程序變量及函數(shù)進行訪問,檢測方法是否存在安全漏洞,該方法主要適用于分析和控制流聯(lián)系不密切的程序。
第四,模型檢測技術(shù)利用隱式不動點對計算機內(nèi)的系統(tǒng)命題或者模型狀態(tài)性質(zhì)進行驗證,進而通過建模對程序的構(gòu)造和特征進行了解和驗證。
第五,定理證明技術(shù)適用于對抽象公式的檢測,從而判斷公式表達(dá)是否正確,模型檢測技術(shù)通過直接運用公式實現(xiàn)對公式的辨別。
二、計算機軟件中安全漏洞檢測技術(shù)的應(yīng)用分析
互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展給各行各業(yè)帶來了深刻的變革,極大的縮減了人們的工作量,與此同時,一些不法分子借助網(wǎng)絡(luò)安全漏洞對個人、企業(yè)、機構(gòu)的計算機進行入侵,從而影響了個人及企業(yè)的利益,加強安全漏洞檢測工作是必要的,計算機軟件中安全漏洞檢測技術(shù)的應(yīng)用可以從以下幾個方面著手。
(一)有效預(yù)防競爭條件的漏洞
競爭條件是指程序的并發(fā)線程同時訪問共享資源時,由于線程執(zhí)行順序的不同,所產(chǎn)生的結(jié)果也會有所差異,在計算機軟件中許多安全漏洞的形成均受到了競爭條件的影響,運用安全漏洞檢測技術(shù)以原子化的方式對競爭編碼進行處理,在計算機軟件運行過程中,最小的編碼受病毒感染的機率大幅度降低,從而以原子化操作實現(xiàn)對程序的鎖定,提升計算機軟件的安全性與可靠性。
(二)有效預(yù)防緩沖區(qū)的漏洞
為有效預(yù)防計算機軟件安全漏洞,需要預(yù)防緩沖區(qū)溢出這一問題,常用的預(yù)防緩沖區(qū)漏洞的方式是對軟件中存在的危險性函數(shù)進行檢測,若發(fā)現(xiàn)軟件的版本不合理,可以選用更為安全的版本進行替換,防止緩沖區(qū)中的漏洞溢出,大幅度提升計算機軟件的安全性。
(三)有效預(yù)防隨機出現(xiàn)的漏洞
針對于計算機軟件中的隨機漏洞,通常運用隨即發(fā)生的設(shè)備,在此過程中,計算機軟件自身持有加密算法,提升計算機軟件中相關(guān)數(shù)據(jù)的安全性與穩(wěn)定性。當(dāng)不法分子采用某種特殊方式對計算機進行攻擊時,由于無法準(zhǔn)確獲取到相關(guān)的數(shù)據(jù)流,從而起到了保護數(shù)據(jù)的作用。
(四)有效預(yù)防格式化的字符串漏洞
黑客在對計算機漏洞進行攻擊時,若計算機軟件采用格式化常量,黑客將無法進行創(chuàng)建格式化字符串的行為,規(guī)避格式化字符串漏洞對計算機產(chǎn)生的消極作用。
綜上所述,互聯(lián)網(wǎng)的普及離不開可靠的安全保障,安全漏洞的存在很有可能會損壞用戶利益,人們對計算機軟件中安全問題的重視程度大大提升,對軟件中的安全漏洞進行檢測是解決安全的關(guān)鍵,只有構(gòu)建了安全的軟件系統(tǒng),才能規(guī)避不法分子對軟件的攻擊與破壞。
參考文獻:
[1] 徐博. 安全漏洞檢測技術(shù)在計算機軟件中的應(yīng)用研究[J]. 中國新通信, 2018, 020(010):144.
[2] 宋世茂. 計算機軟件中安全漏洞檢測技術(shù)的應(yīng)用研究[J]. 無線互聯(lián)科技, 2018, 015(006):51-52.
[3] 單超. 計算機軟件中安全漏洞檢測技術(shù)及其運用策略[J]. 中國科技投資, 2019, 000(007):234.
[4] 段明慧. 安全漏洞檢測技術(shù)在計算機軟件中的應(yīng)用研究[J]. 數(shù)字技術(shù)與應(yīng)用, 2018, 36(08):190-191.
(武漢學(xué)院信息工程學(xué)院? 湖北 武漢? 430212)