如何使用DNSTake檢測可能導致子域名接管的DNS區域
關于DNSTake
DNSTake是一款功能強大的域名安全工具,該工具可以通過檢測導致子域名托管的缺少托管的DNS區域。
當子域名(subdomain.example.com)或域名將其權威域名服務器設置為提供商(例如AWS Route 53、Akamai、Microsoft Azure等),但托管區域已被刪除時,就會出現DNS接管漏洞。因此,當請求DNS記錄時,服務器會響應SERVFAIL錯誤。這將允許攻擊者在正在使用的服務上創建丟失的托管區域,從而控制該(子)域名的所有DNS記錄。
工具安裝
預編譯工具:
廣大研究人員可以訪問該項目的【Releases頁面】直接下載該工具的預編譯版本,解壓后即可在本地運行。
源碼安裝:
首先,我們需要安裝并配置好Go 1.16+編譯器環境。
接下來,運行下列命令來快速安裝DNSTake:
- ▶ go install github.com/pwnesia/dnstake/cmd/dnstake@latest
或者,我們也可以直接使用下列命令手動通過源碼構建DNSTake可執行程序:
- ▶ git clone https://github.com/pwnesia/dnstake
- ▶ cd dnstake/cmd/dnstake
- ▶ go build .
- ▶ (sudo) mv dnstake /usr/local/bin
工具使用
- $ dnstake -h
- ▄▄▄▄ ▐ ▄ .▄▄ ·▄▄▄▄▄ ▄▄▄· ▄ •▄ ▄▄▄ .
- ██▪ ██ •█▌▐█▐█ ▀.•██ ▐█ ▀█ █▌▄▌▪▀▄.▀·
- ▐█· ▐█▌▐█▐▐▌▄▀▀▀█▄▐█.▪▄█▀▀█ ▐▀▀▄·▐▀▀▪▄
- ██. ██ ██▐█▌▐█▄▪▐█▐█▌·▐█ ▪▐▌▐█.█▌▐█▄▄▌
- ▀▀▀▀▀• ▀▀ █▪ ▀▀▀▀ ▀▀▀ ▀ ▀ ·▀ ▀ ▀▀▀
- (c) pwnesia.org — v0.0.1
- Usage:
- [stdin] | dnstake [options]
- dnstake -t HOSTNAME [options]
- Options:
- -t, --target <HOST/FILE> 定義單個目標主機或目標主機列表
- -c, --concurrent <i> 設置并發等級(默認:25)
- -s, --silent 減少錯誤輸出或清理輸出數據
- -h, --help 顯示幫助信息
- Examples:
- dnstake -t (sub.)domain.tld
- dnstake -t hosts.txt
- cat hosts.txt | dnstake
- subfinder -silent -d domain.tld | dnstake
許可證地址
本項目的開發與發布遵循MIT開源許可證協議。
項目地址
DNSTake:【GitHub傳送門】