1. 程式人生 > 實用技巧 >繞過CDN查詢真實IP方法

繞過CDN查詢真實IP方法

0x01 驗證是否存在CDN

方法1:

很簡單,使用各種多地 ping 的服務,檢視對應 IP 地址是否唯一,如果不唯一多半是使用了CDN, 多地 Ping 網站有:
http://ping.chinaz.com/
http://ping.aizhan.com/
http://ce.cloud.360.cn/

方法2:

使用 nslookup 進行檢測,原理同上,如果返回域名解析對應多個 IP 地址多半是使用了 CDN。有 CDN 的示例:

www.163.com
伺服器: public1.114dns.com
Address: 114.114.114.114

非權威應答:
名稱: 163.xdwscache.ourglb0.com

Addresses: 58.223.164.86

125.75.32.252
Aliases:www.163.com

www.163.com.lxdns.com

無 CDN 的示例:

xiaix.me
伺服器: public1.114dns.com
Address: 114.114.114.114

非權威應答:
名稱: xiaix.me
Address: 192.3.168.172

0x02 繞過 CDN 查詢網站真實 IP

方法1:查詢歷史DNS記錄

1)檢視 IP 與 域名繫結的歷史記錄,可能會存在使用 CDN 前的記錄,相關查詢網站有:
https://dnsdb.io/zh-cn/###DNS查詢
https://x.threatbook.cn/

###微步線上
http://toolbar.netcraft.com/site_report?url=###線上域名資訊查詢
http://viewdns.info/###DNS、IP等查詢
https://tools.ipip.net/cdn.php###CDN查詢IP

2)利用SecurityTrails平臺,攻擊者就可以精準的找到真實原始IP。他們只需在搜尋欄位中輸入網站域名,然後按Enter鍵即可,這時“歷史資料”就可以在左側的選單中找到。

如何尋找隱藏在CloudFlare或TOR背後的真實原始IP

除了過去的DNS記錄,即使是當前的記錄也可能洩漏原始伺服器IP。例如,MX記錄是一種常見的查詢IP的方式。如果網站在與web相同的伺服器和IP上託管自己的郵件伺服器,那麼原始伺服器IP將在MX記錄中。

方法2:查詢子域名

畢竟 CDN 還是不便宜的,所以很多站長可能只會對主站或者流量大的子站點做了 CDN,而很多小站子站點又跟主站在同一臺伺服器或者同一個C段內,此時就可以通過查詢子域名對應的 IP 來輔助查詢網站的真實IP。

下面介紹些常用的子域名查詢的方法和工具:

1)微步線上(https://x.threatbook.cn/)

上文提到的微步線上功能強大,黑客只需輸入要查詢的域名(如baidu.com),點選子域名選項就可以查詢它的子域名了,但是免費使用者每月只有5次免費查詢機會。如圖:

2)Dnsdb查詢法。(https://dnsdb.io/zh-cn/)

黑客只需輸入baidu.com type:A就能收集百度的子域名和ip了。如圖:

3)Google 搜尋

Google site:baidu.com -www就能檢視除www外的子域名,如圖:

4)各種子域名掃描器

這裡,主要為大家推薦子域名挖掘機和lijiejie的subdomainbrute(https://github.com/lijiejie/subDomainsBrute)

子域名挖掘機僅需輸入域名即可基於字典挖掘它的子域名,如圖:

Subdomainbrute以windows為例,黑客僅需開啟cmd進入它所在的目錄輸入Python subdomainbrute.py baidu.com --full即可收集百度的子域名,如圖:

注:收集子域名後嘗試以解析ip不在cdn上的ip解析主站,真實ip成功被獲取到。

方法3:網路空間引擎搜尋法

常見的有以前的鐘馗之眼,shodanfofa搜尋。以fofa為例,只需輸入:title:“網站的title關鍵字”或者body:“網站的body特徵”就可以找出fofa收錄的有這些關鍵字的ip域名,很多時候能獲取網站的真實ip,如圖:

方法4:利用SSL證書尋找真實原始IP

使用給定的域名

假如你在xyz123boot.com上託管了一個服務,原始伺服器IP是136.23.63.44。 而CloudFlare則會為你提供DDoS保護,Web應用程式防火牆和其他一些安全服務,以保護你的服務免受攻擊。為此,你的Web伺服器就必須支援SSL並具有證書,此時CloudFlare與你的伺服器之間的通訊,就像你和CloudFlare之間的通訊一樣,會被加密(即沒有靈活的SSL存在)。這看起來很安全,但問題是,當你在埠443(https://136.23.63.44:443)上直接連線到IP時,SSL證書就會被暴露。

此時,如果攻擊者掃描0.0.0.0/0,即整個網際網路,他們就可以在埠443上獲取在xyz123boot.com上的有效證書,進而獲取提供給你的Web伺服器IP。

目前Censys工具就能實現對整個網際網路的掃描,Censys是一款用以搜尋聯網裝置資訊的新型搜尋引擎,安全專家可以使用它來評估他們實現方案的安全性,而黑客則可以使用它作為前期偵查攻擊目標、收集目標資訊的強大利器。Censys搜尋引擎能夠掃描整個網際網路,Censys每天都會掃描IPv4地址空間,以搜尋所有聯網裝置並收集相關的資訊,並返回一份有關資源(如裝置、網站和證書)配置和部署資訊的總體報告。

而攻擊者唯一需要做的就是把上面用文字描述的搜尋詞翻譯成實際的搜尋查詢引數。

xyz123boot.com證書的搜尋查詢引數為:parsed.names:xyz123boot.com

只顯示有效證書的查詢引數為:tags.raw:trusted

攻擊者可以在Censys上實現多個引數的組合,這可以通過使用簡單的布林邏輯來完成。

組合後的搜尋引數為:parsed.names: xyz123boot.com and tags.raw: trusted

Censys將向你顯示符合上述搜尋條件的所有標準證書,以上這些證書是在掃描中找到的。

要逐個檢視這些搜尋結果,攻擊者可以通過單擊右側的“Explore”,開啟包含多個工具的下拉選單。What's using this certificate? > IPv4 Hosts

此時,攻擊者將看到一個使用特定證書的IPv4主機列表,而真實原始 IP就藏在其中。

你可以通過導航到埠443上的IP來驗證,看它是否重定向到xyz123boot.com?或它是否直接在IP上顯示網站?

使用給定的SSL證書

如果你是執法部門的人員,想要找出一個隱藏在cheesecp5vaogohv.onion下的兒童色情網站。做好的辦法,就是找到其原始IP,這樣你就可以追蹤到其託管的伺服器,甚至查到背後的運營商以及金融線索。

隱藏服務具有SSL證書,要查詢它使用的IPv4主機,只需將"SHA1 fingerprint"(簽名證書的sha1值)貼上到Censys IPv4主機搜尋中,即可找到證書,使用此方法可以輕鬆找到配置錯誤的Web伺服器。

方法5:利用HTTP標頭尋找真實原始IP

藉助SecurityTrails這樣的平臺,任何人都可以在茫茫的大資料搜尋到自己的目標,甚至可以通過比較HTTP標頭來查詢到原始伺服器。

特別是當使用者擁有一個非常特別的伺服器名稱與軟體名稱時,攻擊者找到你就變得更容易。

如果要搜尋的資料相當多,如上所述,攻擊者可以在Censys上組合搜尋引數。假設你正在與1500個Web伺服器共享你的伺服器HTTP標頭,這些伺服器都傳送的是相同的標頭引數和值的組合。而且你還使用新的PHP框架傳送唯一的HTTP標頭(例如:X-Generated-Via:XYZ框架),目前約有400名網站管理員使用了該框架。而最終由三個伺服器組成的交集,只需手動操作就可以找到了IP,整個過程只需要幾秒鐘。

例如,Censys上用於匹配伺服器標頭的搜尋引數是80.http.get.headers.server :,查詢由CloudFlare提供服務的網站的引數如下:

80.http.get.headers.server:cloudflare

方法6:利用網站返回的內容尋找真實原始IP

如果原始伺服器IP也返回了網站的內容,那麼可以在網上搜索大量的相關資料。

瀏覽網站原始碼,尋找獨特的程式碼片段。在JavaScript中使用具有訪問或識別符號引數的第三方服務(例如Google Analytics,reCAPTCHA)是攻擊者經常使用的方法。

以下是從HackTheBox網站獲取的Google Analytics跟蹤程式碼示例:

ga('create','UA-93577176-1','auto');
可以使用80.http.get.body:引數通過body/source過濾Censys資料,不幸的是,正常的搜尋欄位有侷限性,但你可以在Censys請求研究訪問許可權,該許可權允許你通過Google BigQuery進行更強大的查詢。

Shodan是一種類似於Censys的服務,也提供了http.html搜尋引數。

搜尋示例:https://www.shodan.io/search?query=http.html%3AUA-32023260-1

方法7:使用國外主機解析域名

國內很多 CDN 廠商因為各種原因只做了國內的線路,而針對國外的線路可能幾乎沒有,此時我們使用國外的主機直接訪問可能就能獲取到真實IP。

方法8:網站漏洞查詢

1)目標敏感檔案洩露,例如:phpinfo之類的探針、GitHub資訊洩露等。
2)XSS盲打,命令執行反彈shell,SSRF等。
3)無論是用社工還是其他手段,拿到了目標網站管理員在CDN的賬號,從而在從CDN的配置中找到網站的真實IP。

方法9:網站郵件訂閱查詢

RSS郵件訂閱,很多網站都自帶 sendmail,會發郵件給我們,此時檢視郵件原始碼裡面就會包含伺服器的真實 IP 了。

方法10:用 Zmap 掃全網

需要找 xiaix.me 網站的真實 IP,我們首先從 apnic 獲取 IP 段,然後使用 Zmap 的 banner-grab 掃描出來 80 埠開放的主機進行 banner 抓取,最後在 http-req 中的 Host 寫 xiaix.me。

方法11:F5 LTM解碼法

當伺服器使用F5 LTM做負載均衡時,通過對set-cookie關鍵字的解碼真實ip也可被獲取,例如:Set-Cookie: BIGipServerpool_8.29_8030=487098378.24095.0000,先把第一小節的十進位制數即487098378取出來,然後將其轉為十六進位制數1d08880a,接著從後至前,以此取四位數出來,也就是0a.88.08.1d,最後依次把他們轉為十進位制數10.136.8.29,也就是最後的真實ip。

[文章來源]:https://www.cnblogs.com/qiudabai/p/9763739.html