DNS區域傳送漏洞實驗以及二級域名爆破
目錄:
1.DNS伺服器的域傳送漏洞(nslookup互動式、非互動式、批處理三種方式)
2.寫個二級域名爆破腳本
一、DNS伺服器的域傳送漏洞
實驗環境:
服務端:Windows2008 安裝DNS服務(建立A記錄),安裝IIS服務(搭建一個站點)
用戶端:win10(DNS設定為windows 2008的IP位址)
實驗步驟:
一、服務端搭建一個網站
1.服務端搭建一個網站并設定預設首頁

3.用戶端測試網站以及DNS建立的主機記錄(通過主機名通路)
通過下圖可以說明,網站搭建完好以及DNS解析正常
9.剛才的實驗實在互動式模式下測試DNS伺服器是否存在域傳送漏洞, 為了能夠非互動式運作,可以通過管道來實作。
echo ls (要列出的域名) | nslookup
#注:nslookup也可以指定DNS伺服器 echo ls (要列出的域名) | nslookup – (DNS伺服器)
10.也可以通過批處理來實作非互動式測試DNS伺服器是否存在域傳送漏洞
編寫批處理檔案:ls.bat
Echo ls %1 | nslookup - %2 #批處理通過%來獲得指令行傳遞來的參數
注: 為了測試dns.nwpu.edu.cn伺服器,可以執行ls.bat hnuahe.edu.cn www.hnuahe.edu.cn。 批進行中:
1) %1代表第一個參數,也即hnuahe.edu.cn
2) %2代表第二個參數,即www.hnuahe.edu.cn
3) Echo是回聲指令,原文輸出傳入的參數内容
4) “|”是管道符号,作用是把前一個指令執行的結果傳給後一個指令。是以:執行ls.bat hnuahe.edu.cn www.hnuahe.edu.cn,等價于執行echo ls hnuahe.edu.cn | nslookup – www.hnuahe.edu.cn。
5) nslookup - www.hnuahe.edu.cn是指定DNS伺服器為www.hnuahe.edu.cn
可以看到通過批處理來執行測試出來DNS伺服器存在域傳送漏洞
二、二級域名爆破
當我們在查找某個域名的有效子域名時,我們通常需要使用子域名枚舉這項技術。但是,除非DNS伺服器暴露了完整的DNS空間(涉及到AXFR協定),否則我們真的很難拿到目标域名的子域名清單。目前主要的技術是使用一個常用域名的字典,并通過對每一個域名嘗試進行解析來查找子域名。雖然這種方法在某些情況下非常有效,但是對于那些名字非常奇怪或罕見的域名來說,這種方法就沒多大用了。
當然了,查找子域名也可以通過網絡爬蟲,以及搜尋引擎(常用,因為更加高效)
代碼如下: #注意需要自己準備一個字典
#進行暴力破解DNS二級域名
#利用nslookup 域名 循環嘗試
import os
from threading import Thread
import time
#加載字典
with open("C://Users//admin//Desktop//dnsyuming_dict.txt") as f:
nlist=f.readlines()
#print(nlist)
bz=0 #做标志位,用于後面的結束循環讀取字典
rlist=[]
def f(astr):
global bz
cmd="nslookup %s.hnuahe.edu.cn"%astr #這裡可以修改
result=os.popen(cmd).read()
if result.count("Address")>1: #nslookup 執行成功傳回的字元串中有兩個"Address",失敗隻有傳回一個
rlist.append(astr+".hnuahe.edu.cn") #把nslookup 執行成功得到的二級域名加入到清單中
bz+=1
if __name__=="__main__":
print("掃描開始:")
ts=[] #線程池
for i in nlist:
t=Thread(target=f,args=(i.strip(),))
ts.append(t)
t.start() #開啟多線程
for i in ts:
t.join()
while 1:
if bz==len(nlist): #如果标志位和字典的長度相等,則退出循環
break
time.sleep(1)
print("一共掃描到%d個結果:"%len(rlist))
print(rlist)
print("掃描結束!")
運作效果如下:
--------------------------------------------------------------------------------------------------
DNS安裝與配置,請參考:https://www.cnblogs.com/yuzly/p/10474146.html
web安裝與配置,請參考:https://www.cnblogs.com/yuzly/p/10459272.html