2)滲透測試
滲透測試是一種模擬攻擊者進行攻擊的測試方法,從攻擊的角度來測試軟件系統,并評估系統安全性的一種測試方法。與一般軟件測試不同,滲透測試采用攻擊者思想,從“逆向”的角度出發,測試軟件系統的安全性,其價值在于可以測試軟件在實際系統中運行時的安全狀況。
與“正向”的安全測試方法相比,滲透測試的優點是發掘出來的安全問題都是真實的, 也是較為嚴重的,能夠被攻擊者真實利用的。它的主要缺點是滲透測試和測試人員的知識、 經驗、素質等因素密切相關,滲透測試受測試方法和路徑所限,只能到達有限的測試點,對軟件系統安全關鍵點的覆蓋率較低。
近年來,滲透測試被廣泛使用,也經常被軟件開發企業用來測試其軟件系統的安全性, 通過在實際網絡環境中利用各種測試軟件和腳本對目標系統發起模擬攻擊,以驗證是否可以找到危害目標系統安全性的途徑。
由于滲透測試具有模擬攻擊者行為這樣一特性,而攻擊者的行為沒有一成不變的固定模式,所以滲透測試對不同用戶的需求,切人的角度、方法各不相同,沒有統一的測試步驟和操作流程,測試過程中漏洞的發現和利用嘗試取決于測試者的個人知識、經驗和愛好,下圖給出了一個滲透測試的基本流程。滲透測試應當經過方案制定、信息收集、(高級/低級)漏洞利用、完成滲透測試報告等步驟。