在虚拟机1上安装Cain & Abel。双击"ca_setup.exe"文件,开始安装,安装接近结来时,会提示需要安装WinPcap4.0,如图I-10所示,选择"Install",开始安装WinPcap4.0。
图I-10 安装WinPcap4.0
运行Cain & Abel。双击桌面上的"Cain"图标,打开Cain & Abel的管理界面,单击管理界面中的"Start/Stop Sniffer"图标,如图I-11所示,开始抓包。
图I-11 开始Sniffer
集线器环境下的密码获取。单击图I-11中上方的"Sniffer"选项卡,再单击下方的"Passwords"选项卡,开始捕获敏感的密码信息,包括邮件,Telnet,FTP等。在虚拟机2上开启Telnet服务,在真实机上telnet 192.168.1.210,然后输入用户和密码进行登录,如图I-12所示左侧导航栏中的Telnet提示捕获了一条信息。
(点击查看大图)图I-12 监听敏感信息
单击左侧导航栏中的"Telnet",在右边的列表栏中,右键单击捕获的那个条目,在快捷菜单中选择"View",打开如图I-13所示的记事本文件,从中不难看出用户名是administrator,密码是cisco。图中administrator单词中每个字母显示了两次,因有一次是telnet的回显。
图I-13 捕获的密码文件
交换机环境下的密码获取。刚才很容易获取密码的原因是因为虚拟机1和虚拟机2,以及真实机都是连接在真实机的网卡上,相当于都接在一台集线器上,现实环境中,更常见的是交换机,交换机不会把两台主机或某台主机与网关之间的通信传给攻击者的主机。这时就需要使用ARP欺骗,单击如图I-12所示下方的"ARP"选项卡,再单击"Add to list"工具栏图标,如图I-14所示。
图I-14 增加ARP欺骗到列表
打开ARP的条目如图I-15所示,在左边选中一个IP地址,在右边选中一个IP地址,这两个IP地址的主机将被欺骗。
(点击查看大图)图I-15 选择被欺骗的计算机
单击"OK"按钮返回,再单击图I-11所示工具栏"Start/Stop Sniffer"图标右边的 "Start/Stop ARP"图标,开始执行ARP欺骗,如图I-15所示选择的计算机之间的通信将从虚拟机1中转,虚拟机1自然可以获取它们之间的明文敏感信息。由此看来交换机的网络也存在安全隐患。
实验I ARP攻击的攻、判、防
3.如何判断正在遭受ARP攻击
上面介绍的ARP欺骗攻击不会造成网络阻塞,但却会发生泄密,接下来介绍解决的办法。判断是否存在第一种ARP攻击的方法比较简单,步骤如下。
持续ping不能访问的IP地址。在出现问题计算机(虚拟机1)的DOS窗口中输入"ping 192.168.1.200 -t",用来测试网络的连通性;192.168.1.200是不能正常通信的计算机(这里是真实机),实际工程中换成不能访问的同一网段的目标计算机的IP地址。如果正在遭受ARP攻击,屏幕将会提示"Request time out"。
在受害计算机(虚拟机1)上开启另外一个DOS窗口,输入"arp -d",arp是一个DOS命令,能解析出IP地址对应的网卡MAC地址,-d用来清除本机缓存的所有IP和MAC地址的对应。如果发现Step 1中的窗口的内容变成持续的"Reply from……",则表示曾遭受过ARP攻击,现在已经正常了;如果仅出现了一个"Reply from……"包,后面又变成了"Request time out"包,则表明该计算机正在遭受持续不断的ARP攻击。