CNAME 是規范名稱(Canonical Name)的縮寫。它是一種 DNS 記錄類型,用于將別名域名映射到規范域名。當一個網站或服務需要使用多個域名或子域名進行訪問時,通常會使用 CNAME 記錄。CNAME 記錄允許將域名重定向到規范域名,確保所有請求都被正確地定向到相應的位置。

通常使用到 CNAME 的場景,比如我們熟悉的 CDN 配置、云 WAF 的配置會用到,那么通過 CNAME 記錄我們能知道什么?

0x01 CDN

當用戶為自己的網站配置 CDN 服務時,需要配置 CNAME 記錄到 CDN 服務商的域名,當用戶訪問時,先連接到 CDN 服務商這邊,由服務商來幫助用戶請求資源,然后返回給用戶,CDN 在其中做了一層代理,代替用戶訪問源數據,并將不常變化的資源緩存下來,從而提升網站訪問速度,提升用戶體驗。

比如下面的配置:

cname 指向為 cloudflare 的域名,說明目標使用了 cloudflare 的 CDN 服務,這是國外一家知名的 CDN 服務商,使用的用戶相當廣泛。

國內類似的產品比如阿里云 CDN、騰訊云 CDN、七牛云 CDN 等,其解析的域名均不相同,可以根據自己的需求將不同 CDN 的域名整理成規則,實現自動化識別。

0x02 WAF

WAF 是 web 應用防火墻的簡稱,根據部署方式分為云 WAF 和本地 WAF,區別在于,云 WAF 部署無需在目標服務器上安裝軟件,只需要配置 CNAME 解析記錄到云 WAF 服務商指定的域名,與 CDN 的配置類似,而本地 WAF 需要在服務器上安裝部署 WAF 軟件,從而檢測網站請求,針對性的攔截防護。

比如下面的配置:

從解析記錄上看目標解析到了 sigscicloudwaf.com 上,而 sigscicloudwaf 是國外 Signal Sciences 公司的云 WAF 產品。

國內的產品比如阿里云盾、華為云 WAF 等,所解析的域名也不相同,可以作為特征進行區分。

0x03 SAAS

SAAS 是“軟件即服務”(Software as a Service)的縮寫。它是一種云計算模型,通過互聯網提供軟件應用程序。在 SAAS 模型中,軟件由服務提供商托管和維護,用戶可以通過訂閱或付費方式訪問和使用軟件,而無需購買、安裝和維護自己的硬件和軟件基礎設施。

SAAS 模型的優點包括靈活性、可擴展性、易用性和成本效益。用戶可以根據需要隨時訪問和使用軟件,無需關注基礎設施和技術細節。服務提供商負責軟件的更新、維護和安全性,用戶只需關注使用軟件來實現業務目標。

比如下面的配置:

目標解析到了 github,說明其使用了 Github 的 SAAS 服務,借助 Github 搭建屬于自己的網站系統。

國內的系統也比較多,比如各種云郵箱服務。

0x04 建站系統

國內有非常多的中小企業想要創建門戶網站,但是奈何不懂開發部署相關系統,所以有不少企業提供相關建站服務,一鍵選擇模板進行網站建設,這類網站具有一定的相似度。

比如下面的配置:

目標解析到了 faipod.com,而 faipod 就是國內知名的建站企業凡科建站,無需代碼也可以同時擁有電腦網站、手機網站、微信網站。拖拽建站,懶人建站神器!

0x05 過期域名

提供域名注冊服務的平臺,在域名過期之后,會將其解析到特定域名,在用戶訪問時,提供域名售賣的廣告,比如下面的配置:

目標解析到了阿里云, 當你訪問該域名時,頁面顯示阿里云的域名過期提示頁面,如圖:

0x06 總結

為什么要做這些事兒呢?當然是為了在自動化挖洞的過程中排除干擾,提高效率:

1、存在 CDN、WAF 之類的配置,你的自動化漏洞掃描動作大概率會失效,

2、過期域名,當然更沒有測試的價值,

3、建站系統,如果你發現其中某個模板存在漏洞,那么根據建站的企業,可以找出一批存在同樣問題的網站,

4、SAAS 服務通常為同一系統,有服務商提供運行維護,存在漏洞的可能性小,而且同一系統測試 n 次和 1 次效果一樣

在域名收集階段就可以根據這種特征,排除非常多的干擾,可以讓我們更快更準確的找到薄弱環節。