取消
清空記錄
歷史記錄
清空記錄
歷史記錄
一般情況下,安全掃描器具備三項功能,下面上海觀初帶大家一起看看吧:
??● 發(fā)現(xiàn)Internet上的一個網(wǎng)絡或者一臺主機;
??● 一旦發(fā)現(xiàn)一臺主機,能發(fā)現(xiàn)其上所運行的服務類型;
??● 通過對這些服務的測試,可以發(fā)現(xiàn)存在的已知漏洞,并給出修補建議。
??源代碼掃描
??源代碼掃描主要針對開放源代碼的程序,通過檢查程序中不符合安全規(guī)則的文件結(jié)構(gòu)、命名規(guī)則、函數(shù)、堆棧指針等,進而發(fā)現(xiàn)程序中可能隱含的安全缺陷。這種漏洞分析技術(shù)需要熟練掌握編程語言,并預先定義出不安全代碼的審查規(guī)則,通過表達式匹配的方法檢查源程序代碼。
??由于程序運行時是動態(tài)變化的,如果不考慮函數(shù)調(diào)用的參數(shù)和調(diào)用環(huán)境,不對源代碼進行詞法分析和語法分析,就沒有辦法準確地把握程序的語義,因此這種方法不能發(fā)現(xiàn)程序動態(tài)運行過程中的安全漏洞。
??反匯編掃描
??反匯編掃描對于不公開源代碼的程序來說往往是很有效的發(fā)現(xiàn)安全漏洞的辦法。分析反匯編代碼需要有豐富的經(jīng)驗,也可以使用輔助工具來幫助簡化這個過程,但不可能有一種完全自動的工具來完成這個過程。例如,利用一種的反匯編程序IDA(www.datarescue.com)就可以得到目標程序的匯編腳本語言,再對匯編出來的腳本語言進行掃描,進而識別一些可疑的匯編代碼序列。
??通過反匯編來尋找系統(tǒng)漏洞的好處是,從理論上講,不論多么復雜的問題總是可以通過反匯編來解決。它的缺點也是顯然的,這種方法費時費力,對人員的技術(shù)水平要求很高,同樣不能檢測到程序動態(tài)運行過程中產(chǎn)生的安全漏洞。
??環(huán)境錯誤注入
??由程序執(zhí)行是一個動態(tài)過程這個特點,不難看出靜態(tài)的代碼掃描是不完備的。環(huán)境錯誤注入是一種比較成熟的軟件測試方法,這種方法在協(xié)議安全測試等領域中都已經(jīng)得到了很好的應用。
??系統(tǒng)通常由“應用程序”和“運行環(huán)境”組成。由于各種原因,程序員總是假定認為他們的程序會在正常環(huán)境中正常地運行。當這些假設成立時,他們的程序當然是正確運行的。但是,由于作為共享資源的環(huán)境,常常被其他主體所影響,尤其是惡意的用戶,這樣,程序員的假設就可能是不正確的。程序是否能夠容忍環(huán)境中的錯誤是影響程序健壯性的一個關(guān)鍵問題。
??錯誤注入,即在軟件運行的環(huán)境中故意注入人為的錯誤,并驗證反應——這是驗證計算機和軟件系統(tǒng)的容錯性、可靠性的一種有效方法。在測試過程中,錯誤被注入到環(huán)境中,所以產(chǎn)生了干擾。換句話,在測試過程中干擾軟件運行的環(huán)境,觀察在這種干擾情況下程序如何反應,是否會產(chǎn)生安全事件,如果沒有,就可以認為系統(tǒng)是安全的。概言之,錯誤注入方法就是通過選擇一個適當?shù)腻e誤模型試圖觸發(fā)程序中包含的安全漏洞。
??在真實情況下,觸發(fā)某些不正常的環(huán)境是很困難的,知道如何觸發(fā)依賴于測試者的有關(guān)“環(huán)境”方面的知識。所以,在異常的環(huán)境下測試軟件安全變得困難。錯誤注入技術(shù)提供了一種模仿異常環(huán)境的方法,而不必關(guān)心實際中這些錯誤如何發(fā)生。
??軟件環(huán)境錯誤注入分析還依賴于操作系統(tǒng)中已知的安全缺陷,也就是說,對一個軟件進行錯誤注入分析時,要充分考慮到操作系統(tǒng)本身所存在的漏洞,這些操作系統(tǒng)中的安全缺陷可能會影響到軟件本身的安全。所以選擇一個適當?shù)腻e誤模型來觸發(fā)程序中所隱含的安全漏洞是非常重要的。我們需要選擇一個適當?shù)腻e誤模型,能夠高水平地模擬真實的軟件系統(tǒng),然后分析漏洞數(shù)據(jù)庫記錄的攻擊者利用漏洞的方法,把這些利用變?yōu)榄h(huán)境錯誤注入,從而縮小在測試過程中錯誤注入和真實發(fā)生的錯誤之間的差異。
??總結(jié)
??這里介紹的幾種漏洞檢測的方法,其中安全掃描技術(shù)主要是針對已知漏洞的檢測,后面三種主要是針對未知漏洞的檢測。對于未知漏洞的檢測,源代碼掃描(包括反匯編掃描)屬于靜態(tài)檢測技術(shù),而環(huán)境錯誤注入法屬于動態(tài)檢測技術(shù)。
??另外,換個視角來看,源代碼掃描(包括反匯編掃描)類似于白盒測試,它檢測軟件系統(tǒng)源碼中可能存在的問題;環(huán)境錯誤注入方法類似于黑盒測試,它不關(guān)注代碼的問題,而是通過對程序運行環(huán)境的干擾,關(guān)注運行程序?qū)τ谧⑷脲e誤的反應,以便從程序外圍發(fā)現(xiàn)問題。
??漏洞檢測的目的在于發(fā)現(xiàn)漏洞,修補漏洞,進而從根本上提高信息系統(tǒng)的安全性,以致從根本上減少安全事件的發(fā)生。
以上就是上海觀初和大家分享的內(nèi)容,希望能夠幫助到大家。還有想了解的持續(xù)關(guān)注我們!
相關(guān)新聞