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