5.2.2 DNS欺骗攻击2(结合dnschef)

实验步骤

1、开启Linux的ip包转发功能

echo 1 > /proc/sys/net/ipv4/ip_forward

2、使用iptables建立一个规则,该规则的功能是把所有截获到的DNS请求报文转发到本机的UDP 53 号端口 

iptables -t nat -A PREROUTING -i eth0 -p udp --dport 53 -j REDIRECT --to-ports 53

注:各参数说明:

(1)--t 参数用来指定规则表,内建的规则表有三个,分别是:nat、mangle 和 filter,当未指定规则表时,则一律视为是 filter。个规则表的功能如下:

  • nat 规则表用于修改数据包源、目标IP或端口,拥有 Prerouting 和 postrouting 两个规则链;
  • mangle 规则表拥有 Prerouting、FORWARD 和 postrouting 三个规则链。
    除了进行网址转译工作会改写封包外,在某些特殊应用可能也必须去改写封包(TTL、TOS)或者是设定 MARK(将封包作记号,以进行后续的过滤)
  • filter 规则表是预设规则表,拥有 INPUT、FORWARD 和 OUTPUT 三个规则链,这个规则表顾名思义是用来进行封包过滤。
  • 常用规则链:PREROUTING:路由前处理 数据包
                        INPUT:处理入站数据 
                        OUTPUT:处理出站数据 
                        FORWARD:处理转发数据 
                         POSTROUTING:路由后处理 数据包

(2)-A :append   新增规则到某个规则链中,该规则将会成为规则链中的最后一条规则

(3) -i,  input-interface 输入接口,指定了要处理来自哪个接口的数据包 ,这些数据包即将进入INPUT,FORWARD,PREROUTE链 。范例 iptables -A  PREROUTING  -i eth0 :表示处理来自eth0 接口的数据包,并将这些数据包载入PREROUTING链。。

(4)-p 协议(protocol)指定规则的协议,如tcp, udp, icmp等,可以使用all来指定所有协议.

(5)--dport 目的端口(destination port)针对-p tcp 或者 -p udp。还可以使用”–destination-port”

(6)-j 执行目标(jump to target),-j 指定了当与规则(Rule)匹配时如何处理数据包,可能的值是ACCEPT, DROP, QUEUE, RETURN,REDIRECT

3、使用arpspoof工具对靶机192.168.57.129与网关192.168.57.2之间的通信进行arp欺骗,截获双向通信报文。

格式:arpspoof -i 网卡 -t  目标ip -r 网关

arpspoof -t 192.168.57.129 -r 192.168.57.2

4、接着使用dnschef工具,为域名www.baidu.com设置虚假的DNS服务器ip地址172.16.8.6,真实的DNS服务器地址为183.232.231.172,最后设置监听的接口ip为192.168.57.128 攻击主机的ip地址。

dnschef --fakedomains www.baidu.com --fakeip 172.16.8.6 --nameservers 183.232.231.172 -i 192.168.57.128

5、DNS欺骗设置完成后,打开靶机 ip为 192.168.57.129, ping www.baidu.com  可以看到www.baidu.com的域名服务器ip 

已经变成我们设置的虚假服务器ip172.16.8.6,而不是baidu.com的真实服务器ip。

完。。。。。。。。。。

发布了48 篇原创文章 · 获赞 48 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/robacco/article/details/88080463