滲透測試,是為了證明網絡防禦按照預期計劃正常運行而提供的壹種機制。不妨假設,妳的公司定期更新安全策略和程序,時時給系統打補丁,並采用了漏洞掃描器等工具,以確保所有補丁都已打上。如果妳早已做到了這些,為什麽還要請外方進行審查或滲透測試呢?因為,滲透測試能夠獨立地檢查妳的網絡策略,換句話說,就是給妳的系統安了壹雙眼睛。而且,進行這類測試的,都是尋找網絡系統安全漏洞的專業人士。
滲透測試流程是怎樣的?
步驟壹:明確目標
1、確定範圍:規劃測試目標的範圍,以至於不會出現越界的情況。
2、確定規則:明確說明滲透測試的程度、時間等。
3、確定需求:滲透測試的方向是web應用的漏洞?業務邏輯漏洞?人員權限管理漏洞?還是其他,以免出現越界測試。
步驟二:信息收集
1、基礎信息:IP、網段、域名、端口
2、系統信息:操作系統版本
3、應用信息:各端口的應用,例如web應用、郵件應用等等
4、版本信息:所有探測到的東西的版本
5、人員信息:域名註冊人員信息,web應用中網站發帖人的id、管理員姓名等
6、防護信息:試著看能否探測到防護的設備,像有沒有CDN、waf等
步驟三:漏洞探索
利用上壹步中列出的各種系統、應用等等,使用響應的漏洞
方法:
1、漏掃、awvs、IBM appscan等
2、結合漏洞去exploit-db等位置找利用
3、在網上尋找驗證poc
步驟四:漏洞驗證
將上述中發現有可能可以成功利用的全部漏洞都驗證壹遍,結合實際情況搭建模擬環境進行實驗,成功後再引用於目標。
自動化驗證:結合自動化掃描工具提供的結果
手工驗證:根據公開的資源進行手工驗證
試驗驗證:自己搭建模擬環境進行驗證
登錄猜解:可以嘗試壹下登錄口的賬號密碼的發現
業務邏輯漏洞:如發現業務邏輯漏洞,進行驗證
步驟五:信息分析
為下壹步實施滲透做準備
1、精準打擊:準備好上壹步探測到的漏洞的exp,用來精準打擊
2、繞過防禦機制:是否有防火墻等設備,如何繞過
3、定制攻擊路徑:最佳工具路徑,根據薄弱入口,高內網權限位置,最終目標
4、繞過檢測機制:是否有檢測機制,流量監控,殺毒軟件 ,惡意代碼檢測等(免殺)
5、攻擊代碼:經過試驗得來的代碼,包括不限於XSS代碼,SQL註入語句等
步驟六:獲取所需
1、實施攻擊,根據前幾步的結果,進行攻擊
2、獲取內部信息:基礎設施(網絡連接,vpn,路由,拓撲等)
3、進壹步滲透:內網入侵,敏感目標
4、持續性存在:壹般我們對客戶做滲透不需要,但真實的環境中,我們會做rookit、後門,添加管理賬號。駐紮手法。
5、清理痕跡:清理相關日誌(訪問,操作),上傳文件等
步驟七:信息整理
1、整理滲透工具:整理滲透過程中用到的代碼,poc、exp等
2、整理收集信息:整理滲透過程中收集到的壹切信息
3、整理漏洞信息:整理滲透過程中遇到的各種漏洞,各種脆弱的位置信息
(為了形成報告,形成測試結果使用)
步驟八:形成報告
1、按需整理:按照之前第壹步跟客戶確定好的範圍和需求來整理資料,並將資料形成報告
2、補充介紹:要對漏洞成因、驗證過程和帶來的危害進行分析
3、修補建議:當然要對所有產生的問題提出合理高效安全的解決辦法