前言:CdnCheck工具實現,記錄下我這邊實現的幾個點
參考文章:https://github.com/projectdiscovery/cdncheck
參考文章:https://github.com/YouChenJun/CheckCdn
參考文章:https://github.com/zu1k/nali
參考文章:https://github.com/u9sky/cdn-cname-domain/blob/main/cdn.yml
cname識別
關於cname的識別的途徑有下面幾個點:
-
收集國內cdn雲廠商的所有cname的域名
-
收集國內waf雲廠商的所有cname的域名
-
收集國內負載運亨雲廠商的所有cname的域名
雲廠商cdn網段識別
- 收集雲廠商
http識別
- 域名探測情況下,檢測http響應包中的header欄位以及body內容來識別是否存在cdn特徵
相容ip和域名的情況
- ip的
關於YouChenJun/CheckCdn
看完了projectdiscovery/cdncheck專案之後,其實整體對於cdn的檢測是比較完善的了,該cdncheck支援ip和域名,如果是域名的話會先進行域名解析到ip,然後再進行相同的處理。
但是唯一的不足就是在規則庫中並不支援國內的cdn廠商探測,在YouChenJun/CheckCdn專案中,作者將對域名的檢測捨棄了,直接純對ip進行檢測cdn。
一方面是在projectdiscovery/cdncheck的基礎上加了一些對國內的CDN的IP段,如下圖所示
在這邊進行檢測ip是否屬於cdn的ip段,如下圖所示
另一方面透過在projectdiscovery/cdncheck的基礎上加了一些對國內的cdn檢測規則,透過國內雲廠商的API介面呼叫來檢測ip是否是cdn的情況