獲得用戶的真實原始IP是攻擊者夢寐以求的夢想,利用真實IP,攻擊者發(fā)起的攻擊才更有針對性和效率。
如何尋找隱藏在CloudFlare或TOR背后的真實原始IP,對攻擊者來說是個不小的挑戰(zhàn)。
因為配置了任何類似隱藏功能以及CloudFlare的服務(wù),都具有隱藏用戶真實原始IP的效果。攻擊者只能利用其中的漏洞,才能找到想要的IP,進而利用這些IP,直接攻擊使用CloudFlare的網(wǎng)站,比如繞過WAF、限制網(wǎng)速、繞過DDoS保護等,甚至干脆刪除安全運營商提供的隱藏真實原始IP的服務(wù),或者將TOR提供的身份隱藏服務(wù)取消。尋找隱藏在CloudFlare或TOR背后的真實原始IP的方法,會根據(jù)用戶使用的服務(wù)或技術(shù)類型而異,例如,TOR隱藏服務(wù)不存在MX記錄,所以對它就要采取一種特殊的尋找IP的方法。
利用SSL證書尋找真實原始IP
使用給定的域名
假如你在xyz123boot.com上托管了一個服務(wù),原始服務(wù)器IP是136.23.63.44。 而CloudFlare則會為你提供DDoS保護,Web應(yīng)用程序防火墻和其他一些安全服務(wù),以保護你的服務(wù)免受攻擊。為此,你的Web服務(wù)器就必須支持SSL并具有證書,此時CloudFlare與你的服務(wù)器之間的通信,就像你和CloudFlare之間的通信一樣,會被加密(即沒有靈活的SSL存在)。這看起來很安全,但問題是,當(dāng)你在端口443(https://136.23.63.44:443)上直接連接到IP時,SSL證書就會被暴露。
此時,如果攻擊者掃描0.0.0.0/0,即整個互聯(lián)網(wǎng),他們就可以在端口443上獲取在xyz123boot.com上的有效證書,進而獲取提供給你的Web服務(wù)器IP。
目前Censys工具就能實現(xiàn)對整個互聯(lián)網(wǎng)的掃描,Censys是一款用以搜索聯(lián)網(wǎng)設(shè)備信息的新型搜索引擎,安全專家可以使用它來評估他們實現(xiàn)方案的安全性,而黑客則可以使用它作為前期偵查攻擊目標(biāo)、收集目標(biāo)信息的強大利器。Censys搜索引擎能夠掃描整個互聯(lián)網(wǎng),Censys每天都會掃描IPv4地址空間,以搜索所有聯(lián)網(wǎng)設(shè)備并收集相關(guān)的信息,并返回一份有關(guān)資源(如設(shè)備、網(wǎng)站和證書)配置和部署信息的總體報告。
而攻擊者唯一需要做的就是把上面用文字描述的搜索詞翻譯成實際的搜索查詢參數(shù)。
xyz123boot.com證書的搜索查詢參數(shù)為:parsed.names:xyz123boot.com
只顯示有效證書的查詢參數(shù)為:tags.raw:trusted
攻擊者可以在Censys上實現(xiàn)多個參數(shù)的組合,這可以通過使用簡單的布爾邏輯來完成。
組合后的搜索參數(shù)為:parsed.names: xyz123boot.com and tags.raw: trusted
Censys將向你顯示符合上述搜索條件的所有標(biāo)準(zhǔn)證書,以上這些證書是在掃描中找到的。
要逐個查看這些搜索結(jié)果,攻擊者可以通過單擊右側(cè)的“Explore”,打開包含多個工具的下拉菜單。What's using this certificate? > IPv4 Hosts
此時,攻擊者將看到一個使用特定證書的IPv4主機列表,而真實原始 IP就藏在其中。
你可以通過導(dǎo)航到端口443上的IP來驗證,看它是否重定向到xyz123boot.com?或它是否直接在IP上顯示網(wǎng)站?
使用給定的SSL證書
如果你是執(zhí)法部門的人員,想要找出一個隱藏在cheesecp5vaogohv.onion下的兒童色情網(wǎng)站。做好的辦法,就是找到其原始IP,這樣你就可以追蹤到其托管的服務(wù)器,甚至查到背后的運營商以及金融線索。
隱藏服務(wù)具有SSL證書,要查找它使用的IPv4主機,只需將"SHA1 fingerprint"(簽名證書的sha1值)粘貼到Censys IPv4主機搜索中,即可找到證書,使用此方法可以輕松找到配置錯誤的Web服務(wù)器。
利用DNS記錄尋找真實原始IP
CloudFlare里含有DNS記錄,利用Censys這樣的工具,就可以找到存在于web服務(wù)器中的DNS記錄。
利用SecurityTrails平臺,攻擊者就可以精準(zhǔn)的找到真實原始IP。他們只需在搜索字段中輸入網(wǎng)站域名,然后按Enter鍵即可,這時“歷史數(shù)據(jù)”就可以在左側(cè)的菜單中找到。
除了過去的DNS記錄,即使是當(dāng)前的記錄也可能泄漏原始服務(wù)器IP。例如,MX記錄是一種常見的查找IP的方式。如果網(wǎng)站在與web相同的服務(wù)器和IP上托管自己的郵件服務(wù)器,那么原始服務(wù)器IP將在MX記錄中。
利用HTTP標(biāo)頭尋找真實原始IP
借助SecurityTrails這樣的平臺,任何人都可以在茫茫的大數(shù)據(jù)搜索到自己的目標(biāo),甚至可以通過比較HTTP標(biāo)頭來查找到原始服務(wù)器。
特別是當(dāng)用戶擁有一個非常特別的服務(wù)器名稱與軟件名稱時,攻擊者找到你就變得更容易。
如果要搜索的數(shù)據(jù)相當(dāng)多,如上所述,攻擊者可以在Censys上組合搜索參數(shù)。假設(shè)你正在與1500個Web服務(wù)器共享你的服務(wù)器HTTP標(biāo)頭,這些服務(wù)器都發(fā)送的是相同的標(biāo)頭參數(shù)和值的組合。而且你還使用新的PHP框架發(fā)送唯一的HTTP標(biāo)頭(例如:X-Generated-Via:XYZ框架),目前約有400名網(wǎng)站管理員使用了該框架。而最終由三個服務(wù)器組成的交集,只需手動操作就可以找到了IP,整個過程只需要幾秒鐘。
例如,Censys上用于匹配服務(wù)器標(biāo)頭的搜索參數(shù)是80.http.get.headers.server :,查找由CloudFlare提供服務(wù)的網(wǎng)站的參數(shù)如下:
80.http.get.headers.server:cloudflare
利用應(yīng)用和服務(wù)尋找真實原始IP
由TOR隱藏服務(wù)或通過CloudFlare提供的網(wǎng)站是一個普通網(wǎng)站,而HTTP服務(wù)器之類的標(biāo)頭可用于查找正在使用的服務(wù)和版本的可能存在的漏洞。當(dāng)攻擊者獲得對服務(wù)器的訪問權(quán)限時,你顯然可以輕松找到IP。
另一種嘗試是找到可能觸發(fā)漏洞的提示信息,錯誤消息就可以顯示敏感信息。這些信息可以只是IP本身,也可以是任何參數(shù)信息。
在重新調(diào)試階段運行g(shù)obuster以查找文件和目錄,這個過程應(yīng)該在每隔一段時間進行一次。攻擊者可以找到的內(nèi)容是日志,數(shù)據(jù)庫轉(zhuǎn)儲或備份等等。
此時攻擊者會看看是否可以讓為網(wǎng)站提供支持的應(yīng)用程序與其他服務(wù)進行交互,如果你不是執(zhí)法機構(gòu),如果用戶只是在使用API,你可能無法獲得IP。但作為本文的案例,也許攻擊者可以在網(wǎng)站上設(shè)置一個頭像并提供圖片的URL而不是上傳它。如果用戶正在下載它,則他們可能是從其原始服務(wù)器進行的。此時,IP就會出現(xiàn)在日志中。
利用網(wǎng)站返回的內(nèi)容尋找真實原始IP
如果原始服務(wù)器IP也返回了網(wǎng)站的內(nèi)容,那么可以在網(wǎng)上搜索大量的相關(guān)數(shù)據(jù)。
瀏覽網(wǎng)站源代碼,尋找獨特的代碼片段。在JavaScript中使用具有訪問或標(biāo)識符參數(shù)的第三方服務(wù)(例如Google Analytics,reCAPTCHA)是攻擊者經(jīng)常使用的方法。
以下是從HackTheBox網(wǎng)站獲取的Google Analytics跟蹤代碼示例:
ga('create','UA-93577176-1','auto');
可以使用80.http.get.body:參數(shù)通過body/source過濾Censys數(shù)據(jù),不幸的是,正常的搜索字段有局限性,但你可以在Censys請求研究訪問權(quán)限,該權(quán)限允許你通過Google BigQuery進行更強大的查詢。
Shodan是一種類似于Censys的服務(wù),也提供了http.html搜索參數(shù)。