现在ARP不只是协议的简写,还成了掉线的代名词。很多网吧和企业网络不稳,无故掉线,经济蒙受了很大的损失。根据情况可以看出这是一种存在于网络中的一种普遍问题。出现此类问题的主要原因就是遭受了ARP攻击。由于其变种版本之多,传播速度之快,很多技术人员和企业对其束手无策。下面就来给大家从原理到应用谈一谈这方面的话题。希望能够帮大家解决此类问题,净化网络环境。 ARP 欺骗攻击原理分析 在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址,实现局域网机器的通信。ARP协议对网络安全具有重要的意义。这是建立在相互信任的基础上。如果通过伪造IP地址和Mac地址实现ARP欺骗,将在网络中产生大量的ARP通信量使网络阻塞、掉线、重定向、嗅探攻击。 我们知道每个主机都用一个ARP高速缓存,存放最近IP地址到MAC硬件地址之间的映射记录。Windows高速缓存中的每一条记录的生存时间一般为60秒,起始时间从被创建时开始算起。默认情况下,ARP从缓存中读取IP-MAC条目,缓存中的IP-MAC条目是根据ARP响应包动态变化的。因此,只要网络上有ARP响应包发送到本机,即会更新ARP高速缓存中的IP-MAC条目。如:X向Y发送一个自己伪造的ARP应答,而这个应答中的数据发送方IP地址是192.168.1.3(Z的IP地址),MAC地址是DD-DD-DD-DD-DD-DD(Z的真实MAC地址却是CC-CC-CC-CC-CC-CC,这里被伪造了)。当Y接收到X伪造的ARP应答,就会更新本地的ARP缓存(Y可不知道被伪造了)。那么如果伪造成网关呢? Switch上同样维护着一个动态的MAC缓存,它一般是这样,首先,交换机内部有一个对应的列表,交换机的端口对应MAC地址表Port n <-> Mac记录着每一个端口下面存在那些MAC地址,这个表开始是空的,交换机从来往数据帧中学习。因为MAC-PORT缓存表是动态更新的,那么让整个 Switch的端口表都改变,对Switch进行MAC地址欺骗的Flood,不断发送大量假MAC地址的数据包,Switch就更新MAC-PORT缓存,如果能通过这样的办法把以前正常的MAC和Port对应的关系破坏了,那么Switch就会进行泛洪发送给每一个端口,让Switch基本变成一个 HUB,向所有的端口发送数据包,要进行嗅探攻击的目的一样能够达到。也将造成Switch MAC-PORT缓存的崩溃,如下面交换机中日志所示: Internet 192.168.1.4 0000b.cd85.a193 ARPAVlan256 Internet 192.168.1.5 0000b.cd85.a193 ARPAVlan256 Internet 192.168.1.6 0000b.cd85.a193 ARPAVlan256 Internet 192.168.1.7 0000b.cd85.a193 ARPAVlan256 Internet 192.168.1.8 0000b.cd85.a193 ARPAVlan256 Internet 192.168.1.9 0000b.cd85.a193 ARPAVlan256 ARP攻击时的主要现象 网上银行、保密数据的频繁丢失。当局域网内某台主机运行ARP欺骗的木马程序时,会欺骗局域网内所有主机和路由器,让所有上网的流量必须经过病毒主机。其他用户原来直接通过路由器上网现在转由通过病毒主机上网,切换的时候用户会断一次线。切换到病毒主机上网后,如果用户已经登陆服务器,那么病毒主机就会经常伪造断线的假像,那么用户就得重新登录服务器,这样病毒主机就可以窃取所有机器的资料了。 网速时快时慢,极其不稳定,但单机进行光纤数据测试时一切正常。局域网内频繁性区域或整体掉线,重启计算机或网络设备后恢复正常 由于ARP欺骗的木马程序发作的时候会发出大量的数据包导致局域网通讯拥塞以及其自身处理能力的限制,用户会感觉上网速度越来越慢。当ARP欺骗的木马程序停止运行时,用户会恢复从路由器上网,切换过程中用户会再次断线。
入侵检测系统(IDS)检查所有进入和发出的网络活动,并可确认某种可疑模式,IDS利用这种模式能够指明来自试图进入(或破坏系统)的某人的网络攻击(或系统攻击)。入侵检测系统与防火墙不同,主要在于防火墙关注入侵是为了阻止其发生。防火墙限制网络之间的访问,目的在于防止入侵,但并不对来自网络内部的攻击发出警报信号。而IDS却可以在入侵发生时,评估可疑的入侵并发出警告。而且IDS还可以观察源自系统内部的攻击。从这个意义上来讲,IDS可能安全工作做得更全面。今天我们就看看下面这五个最著名的入侵检测系统。 1.Snort:这是一个几乎人人都喜爱的开源IDS,它采用灵活的基于规则的语言来描述通信,将签名、协议和不正常行为的检测方法结合起来。其更新速度极快,成为全球部署最为广泛的入侵检测技术,并成为防御技术的标准。通过协议分析、内容查找和各种各样的预处理程序,Snort可以检测成千上万的蠕虫、漏洞利用企图、端口扫描和各种可疑行为。在这里要注意,用户需要检查免费的BASE来分析Snort的警告。2.OSSEC HIDS:这一个基于主机的开源入侵检测系统,它可以执行日志分析、完整性检查、Windows注册表监视、rootkit检测、实时警告以及动态的适时响应。除了其IDS的功能之外,它通常还可以被用作一个SEM/SIM解决方案。因为其强大的日志分析引擎,互联网供应商、大学和数据中心都乐意运行OSSEC HIDS,以监视和分析其防火墙、IDS、Web服务器和身份验证日志。3.Fragroute/Fragrouter:是一个能够逃避网络入侵检测的工具箱,这是一个自分段的路由程序,它能够截获、修改并重写发往一台特定主机的通信,可以实施多种攻击,如插入、逃避、拒绝服务攻击等。它拥有一套简单的规则集,可以对发往某一台特定主机的数据包延迟发送,或复制、丢弃、分段、重叠、打印、记录、源路由跟踪等。严格来讲,这个工具是用于协助测试网络入侵检测系统的,也可以协助测试防火墙,基本的TCP/IP堆栈行为。可不要滥用这个软件呵。 4.BASE:又称基本的分析和安全引擎,BASE是一个基于PHP的分析引擎,它可以搜索、处理由各种各样的IDS、防火墙、网络监视工具所生成的安全事件数据。其特性包括一个查询生成器并查找接口,这种接口能够发现不同匹配模式的警告,还包括一个数据包查看器/解码器,基于时间、签名、协议、IP地址的统计图表等。 5.Sguil:这是一款被称为网络安全专家监视网络活动的控制台工具,它可以用于网络安全分析。其主要部件是一个直观的GUI界面,可以从Snort/barnyard提供实时的事件活动。还可借助于其它的部件,实现网络安全监视活动和IDS警告的事件驱动分析。