從資安學習層面看 DNS
本文同步發至 https://sectools.tw/dns/
DNS Record
每個域可以使用不同類型的 DNS 記錄
- NS — 名稱服務器記錄包含託管域的 DNS 記錄的權威服務器的名稱。
- A — 也稱為主機記錄,“ A record”包含主機名的 IP 地址。
- MX — mail交換記錄包含負責處理域電子郵件的伺服器的名稱。一個域可以包含多個 MX 記錄。
- PTR — 指針記錄用於反向查找區域,用於查找與 IP 地址關聯的記錄。
- CNAME — 規範名稱記錄用於為其他主機記錄創建別名。
- TXT — 文字記錄可以包含任何任意數據,並可用於各種目的,例如域所有權驗證。
自動查找
使用額外的DNS查詢來發現更多同一域的主機名稱或IP位址。
donotexist.sectools.tw 回復了一個錯誤的NXDOMAIN,表示主機不存在DNS公共DNS記錄。
Forword 查找
我們可以使用一些清單去猜測網路上伺服器的目錄、用戶名稱或密碼的組合,或在我們這篇文章中的一些DNS記錄,只是sectools.tw 沒有架設其他子網域所以等等demo時也查不到其他的,當然也不能主動去掃別人的網域,這本身是違法的行為(因為是主動偵測)!
創建一個list.txt 裡面假設放了一些常會出現在子網域的名稱
然後寫一小段迴圈來處理
for ip in $(cat list.txt); do host $ip.sectools.tw; done
在kali中,可以用 seclists的清單 預設在 /usr/share/seclists
或去這裡下載 https://github.com/danielmiessler/SecLists
Reverse 查找
這個前提是DNS要配置PTR記錄,我這邊剛沒有,不過AWS上的DNS服務通常都會有這樣的機制(印象中是這樣,待查證)。
所以這邊就不放上實際跑的圖。
for ip in $(seq50 100); do host xx.xx.xx.$ip; done
xx 記得替換網段
可以搭配 grep -v
來過濾無效的結果
DNS Zone Transfers
伺服器之間的資料庫複製,裡面有所有DNS名稱的列表。
host -l <domain name> <dns server address>
Kali 有哪些工具可以用
- DNSRecon
- DNSenum
喜歡我的文章記得給我掌聲~或分享!