滲透測試,也稱為滲透測試,是一種針對您的計算機系統的模擬網絡攻擊,用于檢查可利用的漏洞。在 Web 應用程序安全的上下文中,滲透測試通常用于增強 Web 應用程序防火墻 (WAF)。
滲透測試可能涉及嘗試破壞任意數量的應用程序系統(例如,應用程序協議接口 (API)、前端/后端服務器)以發現漏洞,例如易受代碼注入攻擊的未凈化輸入。滲透測試提供的見解可用于微調您的 WAF 安全策略和修補檢測到的漏洞。
滲透測試階段
筆測試過程可以分為五個階段。
1. 規劃偵察
第一階段包括:
- 定義測試的范圍和目標,包括要解決的系統和要使用的測試方法。
- 收集情報(例如,網絡和域名、郵件服務器)以更好地了解目標的工作原理及其潛在漏洞。
2. 掃描
下一步是了解目標應用程序將如何響應各種入侵嘗試。這通常使用以下方法完成:
靜態分析——檢查應用程序的代碼以估計它在運行時的行為方式。這些工具可以一次性掃描整個代碼。
動態分析——檢查處于運行狀態的應用程序代碼。這是一種更實用的掃描方式,因為它可以實時查看應用程序的性能。
3. 獲取訪問權限
此階段使用 Web 應用程序攻擊,例如 跨站點腳本、 SQL 注入 和 后門程序,來發現目標的漏洞。然后,測試人員嘗試利用這些漏洞,通常通過提升權限、竊取數據、攔截流量等方式來了解它們可能造成的損害。
4. 維持訪問
此階段的目標是查看漏洞是否可用于在被利用系統中實現持久存在——足夠長的時間讓壞人獲得深入訪問。這個想法是模仿 高級持續威脅,這些威脅通常會在系統中保留數月,以竊取組織最敏感的數據。
5. 分析
滲透測試的結果被編入一份報告,詳細說明:
- 被利用的特定漏洞
- 訪問的敏感數據
- 滲透測試儀能夠在系統中未被發現的時間
這些信息由安全人員分析,以幫助配置企業的 WAF 設置和其他應用程序安全解決方案,以修補漏洞并防止未來的攻擊。
滲透測試方法
外部測試
外部滲透測試針對公司在 Internet 上可見的資產,例如 Web 應用程序本身、公司網站以及電子郵件和域名服務器 (DNS)。目標是獲得訪問權限并提取有價值的數據。
內部測試
在內部測試中,可以訪問防火墻后的應用程序的測試人員模擬惡意內部人員的攻擊。這不一定是在模擬流氓員工。一個常見的起始場景可能是一名員工的憑據因 網絡釣魚攻擊而被盜。
盲測
在盲測中,測試人員只知道目標企業的名稱。這讓安全人員可以實時了解實際的應用程序攻擊是如何發生的。
雙盲測試
在雙盲測試中,安全人員對模擬攻擊沒有先驗知識。就像在現實世界中一樣,他們沒有任何時間在企圖突破之前加強防御。
有針對性的測試
在這種情況下,測試人員和安全人員一起工作,并相互評估他們的動作。這是一項有價值的培訓練習,可以從黑客的角度為安全團隊提供實時反饋。
滲透測試和 Web 應用程序防火墻
滲透測試和 WAF 是排他性的,但互惠互利的安全措施。對于多種滲透測試(盲測和雙盲測試除外),測試人員可能會使用 WAF 數據(例如日志)來定位和利用應用程序的弱點。反過來,WAF 管理員可以從滲透測試數據中獲益。測試完成后,可以更新 WAF 配置以防止測試中發現的薄弱環節。
最后,滲透測試滿足安全審計程序的一些合規性要求,包括 PCI DSS 和 SOC 2。只有使用經過認證的 WAF 才能滿足某些標準,例如 PCI-DSS 6.6。但是,這樣做并不會因為滲透測試的上述好處和改進 WAF 配置的能力而降低滲透測試的用處。