滲透測試中主要有軟件測試和滲透測試。
1、測試對象不同
軟件測試:主要測試的是程序、數據、文檔。
滲透測試:對象主要為網絡設備、主機操作系統、數據庫系統和應用系統。
2、測試內容不同
軟件測試:主要工作內容是驗證和確認,發現軟件中的缺陷或者不足,然后把發現的問題整理成報告并分析出軟件質量的好壞。驗證是保證軟件正確地實現了一些特定功能的一系列活動;確認是一系列的活動和過程,目的是想證實一個給定的外部環境中軟件的邏輯正確性,即保證軟件做了你所期望的事情。
滲透測試:主要包括黑盒測試、白盒測試和灰盒測試。主要做的工作有:信息收集、端口掃描、權限提升、遠程溢出攻擊、Web應用測試、SQL注入攻擊、檢測頁面隱藏字段、跨站攻擊、Cookie利用、后門程序檢查、第三方軟件誤配置等。
3、測試原則不同
軟件測試:
①測試應該盡早進行;
②軟件測試應該由第三方來負責;
③設計測試用例時應考慮到合法的輸入和不合法的輸入以及各種邊界條件;
④應該充分注意測試中的群集現象;
⑤對錯誤結果要進行一個確認過程;
⑥制定嚴格的測試計劃;
⑦妥善保存測試計劃、測試用例、出錯統計和最終分析報告。
滲透測試:
①測試驗證時間放在業務量最小的時間進行;
②測試執行前確保相關數據進行備份;
③所有測試在執行前和維護人員進行溝通確認;
④在測試過程中出現異常情況時立即停止測試并及時恢復系統;
⑤對原始業務系統進行一個完全的鏡像環境,在鏡像環境上進行滲透測試。
總而言之,軟件測試更多的是以正常使用者的角度為出發點,測試軟件的可用性;而滲透測試則是以極端攻擊者的角度出發,測試系統的安全性。