滲透測試中主要有軟件測試和滲透測試。

1、測試對(duì)象不同

軟件測試:主要測試的是程序、數(shù)據(jù)、文檔。

滲透測試:對(duì)象主要為網(wǎng)絡(luò)設(shè)備、主機(jī)操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)和應(yīng)用系統(tǒng)。

2、測試內(nèi)容不同

軟件測試:主要工作內(nèi)容是驗(yàn)證和確認(rèn),發(fā)現(xiàn)軟件中的缺陷或者不足,然后把發(fā)現(xiàn)的問題整理成報(bào)告并分析出軟件質(zhì)量的好壞。驗(yàn)證是保證軟件正確地實(shí)現(xiàn)了一些特定功能的一系列活動(dòng);確認(rèn)是一系列的活動(dòng)和過程,目的是想證實(shí)一個(gè)給定的外部環(huán)境中軟件的邏輯正確性,即保證軟件做了你所期望的事情。

滲透測試:主要包括黑盒測試、白盒測試和灰盒測試。主要做的工作有:信息收集、端口掃描、權(quán)限提升、遠(yuǎn)程溢出攻擊、Web應(yīng)用測試、SQL注入攻擊、檢測頁面隱藏字段、跨站攻擊、Cookie利用、后門程序檢查、第三方軟件誤配置等。

3、測試原則不同

軟件測試:

①測試應(yīng)該盡早進(jìn)行;

②軟件測試應(yīng)該由第三方來負(fù)責(zé);

③設(shè)計(jì)測試用例時(shí)應(yīng)考慮到合法的輸入和不合法的輸入以及各種邊界條件;

④應(yīng)該充分注意測試中的群集現(xiàn)象;

⑤對(duì)錯(cuò)誤結(jié)果要進(jìn)行一個(gè)確認(rèn)過程;

⑥制定嚴(yán)格的測試計(jì)劃;

⑦妥善保存測試計(jì)劃、測試用例、出錯(cuò)統(tǒng)計(jì)和最終分析報(bào)告。

滲透測試:

①測試驗(yàn)證時(shí)間放在業(yè)務(wù)量最小的時(shí)間進(jìn)行;

②測試執(zhí)行前確保相關(guān)數(shù)據(jù)進(jìn)行備份;

③所有測試在執(zhí)行前和維護(hù)人員進(jìn)行溝通確認(rèn);

④在測試過程中出現(xiàn)異常情況時(shí)立即停止測試并及時(shí)恢復(fù)系統(tǒng);

⑤對(duì)原始業(yè)務(wù)系統(tǒng)進(jìn)行一個(gè)完全的鏡像環(huán)境,在鏡像環(huán)境上進(jìn)行滲透測試。

總而言之,軟件測試更多的是以正常使用者的角度為出發(fā)點(diǎn),測試軟件的可用性;而滲透測試則是以極端攻擊者的角度出發(fā),測試系統(tǒng)的安全性。