摘 要:本文旨在探讨局域网中如何发起基于ARP欺骗的中间人攻击及其防御方法。文中详细介绍了在局域网中如何借助特定工具发起中间人攻击的过程,揭示了局域网潜在的一类安全威胁,并通过在具有代表性的网络设备上部署和配置防御策略以应对此类安全威胁。
1 ARP欺骗与中间人攻击 1.1 ARP欺骗 常见的ARP欺骗的方法有两种,一种是通过修改远程计算机ARP缓存表中的网关MAC地址为一个虚假或不存在的地址,使得受到欺骗的计算机无法上网;另一种方法是通过修改远程计算机中ARP缓存的网关地址为攻击者的MAC地址,同时修改网关设备上ARP缓存中远程计算机的MAC地址为攻击者的MAC地址,从而使二者的流量都流经攻击者机器。后一种方法常用于中间人攻击之中。 1.2 中间人攻击 中间人攻击(Man-in-the-Middle Attack,简称“MITM攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。 2 发起中间人攻击 在日的常网络管理过程中,Telnet是网管人员常用的远程管理工具。下面,笔者通过实施一次针对于Telnet的中间人攻击以捕获Telnet密码,并根据自己在网络管理中的一些经验,谈谈如何防御此类攻击。 本文以由思科2960交换机互连组成的局域网为例作介绍。设置攻击机器IP地址为192.168.100.10,Linux操作系统,其上运行ettercap软件,此软件可在其官网下载,其主页链接为http://ettercap.sourceforge.net,网络管理员机器(受害者)IP地址为192.168.100.51,网关设备IP地址为192.168.100.254,攻击机器通过ARP欺骗来获取网管人员输入的Telnet密码。需要说明的是,使用交换机或路由器对本次演示效果没有影响。 3 几种防御方法 3.1 在PC机上的防御方法 在PC机上一般采用将IP地址和MAC地址静态绑定的方法来防止ARP缓存条目被篡改。例如将本文中网关设备的IP地址和MAC地址绑定的命令为:arp -s 192.168.100.254 00-22-90-B0-28-68。 3.2 在交换机上的防御方法 在交换机上防御此类攻击,可在需要防护ARP攻击的vlan(以vlan 1 为例)上启用Dynamic Arp Inspection,以本文中的Catalyst 3560交换机为例,关键配置命令如下: Ip arp inspection vlan 1 //对VLAN1启用DAI探测 Int f0/2 //进入信任端口 Ip arp inspection trust //信任此端口,不进行DAI探测 通过以上配置,交换机可以轻易探测出攻击者所在端口,并将端口置于error-disable状态,能阻止中间人攻击的发生。 3.3 在路由器上的防御方法 实施防御的最佳策略是部署SSH。以思科路由器为例,全局模式下配置SSH的关键命令如下: Username test password test //配置用户名密码 Ip domain-name test.com //设定域名 Crypto key generate rsa //产生RSA密钥 1024 //位数为1024位 Line vty 0 4 //进入虚拟终端线路 Transport input ssh //采用SSH登入 Login local //使用本地数据库验证 完成SSH部署后,攻击者嗅探到的内容为乱码。 总结:以上3种方法能较好的防御局域网中由ARP欺骗引发的中间人攻击,然而局域网中的攻击和安全威胁远远不止于此,在做好技术层面的防御的同时,业要重视安全教育,双管齐下。 参考文献: [1]思科网络技术学院。 《CCNA安全》人民邮电出版社,2011。 [2]Richard Froom等著,田果等译。《CCNP SWITCH》。人民邮电出版社。2011。 [3] 陈勇勋。《Linux网络安全技术与实现》。 |