• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

ARP欺骗攻击祥解

发布: 2008-4-26 09:59 | 作者: 网络转载 | 来源: 网络转载 | 查看: 107次 | 进入软件测试论坛讨论

领测软件测试网 信息化办公的时代,如果网络突然断网您会不会显得无奈呢?ARP病毒的盛行,已经使得我们必须面对这种突如其来的威胁。那么ARP病毒到底是如何攻击又如何防治呢?
  
什么是ARP?

  所谓ARP即地址解析协议(Address Resolution Protocol),是在仅知道主机的IP地址时确定其物理地址的一种协议。因IPv4和以太网的广泛应用,其主要用作将IP地址翻译为以太网的MAC地址,但其也能在ATM和FDDIIP网络中使用。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。

  例如:

  计算机A的IP为192.168.1.1,MAC地址为00-11-22-33-44-01;
计算机B的IP为192.168.1.2,MAC地址为00-11-22-33-44-02;

  ARP工作原理:

  在TCP/IP协议中,A给B发送IP包,在包头中需要填写B的IP为目标地址,但这个IP包在以太网上传输的时候,还需要进行一次以太包的封装,在这个以太包中,目标地址就是B的MAC地址. 计算机A是如何得知B的MAC地址的呢?解决问题的关键就在于ARP协议。

  在A不知道B的MAC地址的情况下,A就广播一个ARP请求包,请求包中填有B的IP(192.168.1.2),以太网中的所有计算机都会接收这个请求,而正常的情况下只有B会给出ARP应答包,包中就填充上了B的MAC地址,并回复给A。

  A得到ARP应答后,将B的MAC地址放入本机缓存,便于下次使用。本机MAC缓存是有生存期的,生存期结束后,将再次重复寻址过程。

  ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。因此,当局域网中的某台机器B向A发送一个自己伪造的ARP应答,而如果这个应答是B冒充C伪造来的,即IP地址为C的IP,而MAC地址是伪造的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来C的IP地址没有变,而它的MAC地址已经不是原来那个了。由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。所以,那个伪造出来的MAC地址在A上被改变成一个不存在的MAC地址,这样就会造成网络不通,导致A不能Ping通C!这就是一个简单的ARP欺骗。

  类似网络执法官等网络管理软件,其控制目标机器上网限制亦是采用了ARP原理,向其发送一个假的网关IP地址对应的MAC,使其找不到网关真正的MAC地址,这样即可禁止其上网。

  ARP的防范:

  ARP欺骗可以导致目标计算机与网关通信失败,更可怕的是会导致通信重定向,所有的数据都会通过攻击者的机器,因此存在极大的安全隐患。 基与PC到PC的IP-MAC双向绑定可以解决ARP欺骗,但是对于不支持IP-MAC双向绑定的设备,就需要用可以绑定端口-MAC的交换来预防ARP欺骗。另外,Windows 2KSP4 XPSP1 的Arp-S绑定是无效的,需要升级到 2KSP5 或 XPSP2。ARP防火墙等工具就是运用IP-MAC绑定技术,对数据包进行截取分析,保证网络通信正常。

  然而病毒的变种是日新月异的,ARP也是如此,类似ARP欺骗的解决思路主要如下:

  不要把网络安全信任关系建立在IP基础上或MAC基础上。

  设置静态的MAC-->IP对应表,不要让主机刷新你设定好的转换表。

  除非必要,否则停止ARP使用,把ARP做为永久条目保存在对应表中。

  使用ARP服务器。确保这台ARP服务器不被黑。

  使用"proxy"代理IP传输。

  使用硬件屏蔽主机。

  定期用响应的IP包中获得一个rarp请求,检查ARP响应的真实性。

  定期轮询,检查主机上的ARP缓存。

  使用防火墙连续监控网络。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: 攻击 ARP 欺骗


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网