背景:
在實際安全測試過程中我們經常遇到使用了CDN加速的網站。針對這類網站的測試,在沒有真實IP的情況下,就沒有必要進入下一步的端口掃描、服務弱口令掃描。所以在全自動化的智能滲透中,就有必要寫個單獨子插件來檢測目標是否使用了CDN。
方法:
在之前,判斷目標是否使用了CDN,我經常使用的方法是在ping.chinaz.com中使用多個IP進行ping測試,如果返回了大量的不同IP,則目標使用了CDN。那么針對這種思路,寫程序實現則是分析ping.chinaz.com的js調用,模擬發包獲取目標的不同IP。但是這種方法比較麻煩,且實際效果完全依賴chinaz,一旦出現chinaz暫停提供服務等情況,我們變得十分被動,無法再使用。
但是分析原理,不同地點針對同一域名解析到的是不同IP,實際差異是在使用了不同的DNS服務器,所以實際上我們只要向全球不同的DNS服務器發送查詢請求,也是可以達到相同的效果的。
除了要分析目標是否使用了CDN,我們還需要判定目標使用了哪家廠商的CDN,實現原理就是客戶在購買CDN通常需要設置CNAME值為CDN服務商的地址,我們可以建立類似的CNAME特征庫,來判定具體的CDN服務提供商是哪家。
綜上,我們根據這種思路可以實現一個簡單的demo,檢測目標是否使用了CDN。
代碼如下:
效果如下:
網絡信息系統的復雜性和不確定性,導致網絡安全漏洞的隱蔽性極強,通過挖掘漏洞預防網絡風險的難度也越來越大。現有網絡信息系統漏洞掃描技術,均采用模糊測試方法對目標系統進行全量漏洞探測,無法自行識別目標系統特點并采取針對性的漏洞檢測手段,且無法組合利用多個漏洞進一步挖掘更深層的漏洞。
神州明達一直專注智能安全研究,追求安全工具的智能自動化,該demo屬于神州明達-天象自動化滲透的組成部分,預計年底我司將發布智能滲透系統,旨在真正實現自動滲透的終極目標,“給我一個目標,我還你一個shell”。