從 C2 IP 到威脅情資:利用 Passive DNS 關聯分析
ASN & ISP
每個 IP 都有自己所屬於的 ASN (自治系統號碼),可以看成一塊領地
而 ISP (網路服務供應商) 就是該領地的管理者
某些 IPS 對其底下 IP 被濫用而不理會,被稱為 “Bulletproof Hosting” (防彈主機)
長期觀察會發現某些 ASN (如位於某區域的俄羅斯) 長期都有不少惡意的 IP 是在它上面,
則未來觀察到有 IP 來自於此的惡意可能性就比較高
passive DNS
這是找尋過去該 ip 綁定那些 Domain
用意是當分析完惡意程式之後,透過發現的 IOC 去關聯,找尋能否找到其他攻擊者的機器
但要先辨識獲取到的 IP/URL 是否是 CDN 或是被入侵的網站,而不是直接全紀錄
相關案例:
- 如果一個 ip 綁定 1000 多個完全無關的網站,則該 ip 可能是 shared hosting ,駭客只是入侵其中一個網站,而非擁有整台 server
辨識類型
Virtual Private Server, VPS
- 這是攻擊者租用的雲端主機
- 記錄到威脅情資報告
- 常見業者: DigitalOcean, Linode, Vultr, AWS, Google Cloud, Azure, Choopa (Vultr 的母公司)
- 分析意義: 如果 C2 IP 是 VPS,這通常是攻擊者的第一層控制點(Redirector)或實際控制台
- 動作:可以跟 ISP 業者檢舉
Content Delivery Network, CDN
- 如果 IP 屬於 CDN ,則不是 C2 的真實位置,是攻擊者躲在 CDN 後面
- 常見業者: Cloudflare, Akamai, Fastly, CloudFront (Amazon)
- 辨識: ASN 名稱通常會直接寫
CLOUDFLARENET或AKAMAI - 情資報告不會去記錄此 IP ,因為如果封鎖了這個 IP,可能封鎖到了成千上萬個正常網站(因為 CDN IP 是共用的)。且還沒找到真實的 C2
Compromised Host (受駭主機)
- 這是一個正常的網站(例如某個大學網站或中小企業官網),被駭客植入 Webshell 當作 C2 跳板
- 分析:pDNS 會顯示該 IP 下有許多正常的網域
- 動作:聯絡網站管理者修補
常見工具 / 平台
- VirusTotal
- RiskIQ (現在已被微軟收購整合為 MDTI)
- shodan
- censys
- fofa
分析流程
假設拿到一個 IP / Domain
- 查找 ASN 和 ISP
- Org 顯示 “DigitalOcean” -> 判定為 VPS
- 有可能是 C2 中繼站
- Org 顯示 “Cloudflare” -> 判定為 CDN ,此 ip 略過不管
- 查找 passive DNS
- 查找 IP 過去綁定過哪些 Domain
- 情境 1 (One-to-One):
- 該 IP 歷史上只綁定過 1-2 個奇怪的網域(如
update-windows-system.com):高度惡意,專門租來做壞事
- 該 IP 歷史上只綁定過 1-2 個奇怪的網域(如
- 情境 2 (One-to-Many):
- 該 IP 綁定了 1000 個網域,且大多看起來正常。:這是共享主機或 CDN,攻擊者只是其中一個租戶。
- 情境 1 (One-to-One):
- 關聯分析
- 是否出現在其他公開的情資報告中(OSINT)
- 搜尋該 IP 開放的 Port(使用 Shodan 或 Censys)
- 如果是 C2,可能會開放特殊的 Port (如 8080, 4444) 或使用特定的 SSL 憑證。
Shodan/Censys 使用思考
- 直接搜尋 ip / domain
- 看 port
- Banner (服務指紋): 點進去 Port 看 “Response Body” 或 “Banner”
- 有時候 C2 的設定檔沒改好,會直接在 Banner 洩漏特徵(例如顯示奇怪的 HTTP Server 版本)
- ex: Cobalt Strike
- 有時候 C2 的設定檔沒改好,會直接在 Banner 洩漏特徵(例如顯示奇怪的 HTTP Server 版本)
- Banner (服務指紋): 點進去 Port 看 “Response Body” 或 “Banner”
- 看 port
- 找 TLS/SSL 憑證
- Self-signed (自簽憑證): 很多駭客懶惰,C2 會用自簽憑證。
- 如果 “Issuer” (發行者) 是亂碼或預設值,這就是惡意指標
- 往下可以透過 OSINT 進一步調查
- 如果 “Issuer” (發行者) 是亂碼或預設值,這就是惡意指標
- JARM 指紋: Censys 會提供 JARM Hash
- 如果 Hash 跟已知的惡意軟體家族一樣,那這 IP 幾乎確定是惡意的
- Self-signed (自簽憑證): 很多駭客懶惰,C2 會用自簽憑證。
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
