Domain Information Groper 一樣可以檢測 DNS 伺服器的工具。
查看參數說明
查看幫助清單:dig -h
指定記錄類型
指令:dig -t [Record type] [domain]
範例指令:dig -t mx google.com
指定 DNS 伺服器
指令:dig -t [Record type] [domain] @[dnsserver]
範例指令:dig -t any google.com @8.8.8.8
測試 zone transfers 弱點
確認 NS 紀錄
範例指令:dig -t ns zonetransfer.me
指定查詢到的 NS 伺服器
範例指令:dig -t axfr zonetransfer.me @nsztm2.digi.ninja
如圖所示可列出所有 zonetransfer.me
的 DNS 紀錄。
fierce 利用Perl 腳本撰寫而成的工具,可以使用 DNS 定位一段非連續的 IP 範圍與該 IP 的主機名稱。
可以透過 fierce 確定企業網路中內部與外部的目標。
查看參數說明
查看幫助清單:fierce -h
定位目標 domain 的 name Server
指令:fierce --domain [domain]
範例指令:fierce --domain google.com
fierce 的掃描流程
指定字典檔
建立字典檔
範例指令:echo -e "about\ndns\nchat" > subdomains.txt
指定字典檔
指令:fierce --domain [domain] --subdomain-file [path to wordlist]
範例指令:fierce --domain google.com --subdomain-file subdomains.txt
若 DNS 伺服器中有設定萬用字元 *
的 DNS 紀錄,若有非指定的子域名請求, 則會對應到萬用字元的紀錄中。
域名 | 紀錄類型 | 對應 IP |
---|---|---|
www.feifei.tw |
A | 1.1.1.1 |
blog.feifei.tw |
A | 1.1.1.2 |
test.feifei.tw |
A | 1.1.1.3 |
*.feifei.tw |
A | 1.1.1.1 |
請求 www.feifei.tw
則會取得 1.1.1.1
的 IP,請求 blog.feifei.tw
則會取得 1.1.1.2
的 IP,以此類推,而請求 share.feifei.tw
因為沒有指定的域名,則會適用於萬用字元的紀錄,得到 1.1.1.1
。
當我們使用爆破工具爆破子域名時,若沒有先確認萬用字元的 DNS 紀錄,將導致所有結果會導向到萬用字元對應到的 IP,導致測試結果會不正確。
因此要先確認萬用字元的 DNS 紀錄與對應的 IP,再進行爆破子域名,若對應到與萬用字元的 IP 相同,則該子域名可先被排除。
DNSenum 也是利用 Perl 腳本撰寫而成的工具,可以枚舉 DNS 資訊也可以找出非連續的 IP 範圍,也會查詢 zone transfers 並蒐集子域名。
查看參數說明
查看幫助清單:fierce -h
進行掃描
指令:dnsenum [domainname]
範例指令:dnsenum google.com
掃描結果:
DNSrecon 一樣可查詢 DNS 紀錄、檢查 zone transfers 與其他 DNS 資訊。
查看參數說明
指令:dnsrecon -h
開始掃描
指令:dnsrecon -d [domain]
範例指令:dnsrecon -d google.com
掃描結果:
利用 Python 撰寫而成的工具,透過公開資料搜尋域名,會透過搜尋引擎找到指定域名的子域名,包含 Subbrute 爆破功能暴力破解子域名,內涵字典檔可以枚舉 DNS 紀錄與子域名,若需要查詢大量的資料,Subbrute 使用開放式解析器來迴避速度被限制的問題。
安裝工具
指令sudo apt update && sudo apt -y install sublist3r
查看參數說明
指令:sublist3r -h
開始預設掃描
預設掃描採用公開資料搜尋,以搜尋引擎為主。
指令:sublist3r -d [domain]
範例指令:sublist3r -d google.com
開始爆破掃描
指定 Subbrute 功能進行爆破。
指令:sublist3r -d [domain] -b -t [線程] -e [搜尋引擎] -v
範例指令:sublist3r -d google.com -b -t 100 -e google -v
參數 | 說明 |
---|---|
-d |
指定目標域名 |
-b |
進行爆破模式 |
-t |
指令爆破線程數 |
-e |
指定搜尋引擎 |
-v |
列出詳細輸出 |
線上工具:https://dnsdumpster.com/
以上介紹幾個跟 DNS 相關的測試工具,若有讀者想推薦工具,可以在以下留言。