arp攻击原理

最近学校里的局域网遭到的严重的破坏,作为受害者,我很愤怒···

病毒的入侵,比生病了还让人难受,电脑中了毒你不能不管它,要是不管它你就没法使用电脑,没法使用电脑,哪还有什么心思来写程序···confused,所以,与病毒做斗争是持久战,而且势在必行·cry·~~~·

因此,懂点网络安全方面的知识也是很必要的 ~~~起码,可以保护下自己的爱机~也可以顺便学点东西·~~

下面是arp攻击的原理,个人的理解有限,还望多多指教。

了解ARP地址解析协议

简单描述下什么是ARP,ARP是地址解析协议,ARP协议主要负责将局域网中的32位IP地址转换为对应的48位物理地址,即网卡的MAC地址,比如IP地址为192.168.0.1计算机上网卡的MAC地址为00-03-0F-FD-1D-2B。整个转换过程是一台主机先向目标主机发送包含IP地址信息的广播数据包,即ARP请求,然后目标主机向该主机发送一个含有IP地址和MAC地址数据包,通过协商这两个主机就可以实现数据传输了。

ARP缓存表

在安装了以太网网络适配器(既网卡)的计算机中有一个或多个ARP缓存表,用于保存IP地址以及经过解析的MAC地址。在Windows中要查看或者修改ARP缓存中的信息,可以使用ARP命令来完成,比如在Windows XP的命令提示符窗口中键入“ARP -a”或“ARP -g”可以查看ARP缓存中的内容;键入“ARP -d IPaddress”表示删除指定的IP地址项(IPaddress表示IP地址)。ARP命令的其他用法可以键入“ARP /?”查看帮助信息。

 

 

ARP攻击

将ip地址转换为mac地址是ARP的工作,在网络中发送虚假的ARP respones,就是ARP欺骗。

每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如下表所示。

主机 IP地址 MAC地址
A 192.168.16.1 aa-aa-aa-aa-aa-aa
B 192.168.16.2 bb-bb-bb-bb-bb-bb
C 192.168.16.3 cc-cc-cc-cc-cc-cc
D 192.168.16.4 dd-dd-dd-dd-dd-dd


我们以主机A(192.168.16.1)向主机B(192.168.16.2)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.16.2的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“192.168.16.2的MAC地址是bb-bb-bb-bb-bb-bb”。这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。
从上面可以看出,ARP协议的基础就是信任局域网内所有的人,那么就很容易实现在以太网上的ARP欺骗。对目标A进行欺骗,A去Ping主机C却发送到了DD-DD-DD-DD-DD-DD这个地址上。如果进行欺骗的时候,把C的MAC地址骗为DD-DD-DD-DD-DD-DD,于是A发送到C上的数据包都变成发送给D的了。这不正好是D能够接收到A发送的数据包了么,嗅探成功。
A对这个变化一点都没有意识到,但是接下来的事情就让A产生了怀疑。因为A和C连接不上了。D对接收到A发送给C的数据包可没有转交给C。
做“man in the middle”,进行ARP重定向。打开D的IP转发功能,A发送过来的数据包,转发给C,好比一个路由器一样。不过,假如D发送ICMP重定向的话就中断了整个计划。
D直接进行整个包的修改转发,捕获到A发送给C的数据包,全部进行修改后再转发给C,而C接收到的数据包完全认为是从A发送来的。不过,C发送的数据包又直接传递给A,倘若再次进行对C的ARP欺骗。现在D就完全成为A与C的中间桥梁了,对于A和C之间的通讯就可以了如指掌了。

【故障现象】

当局域网内某台主机运行ARP欺骗的木马程序时,会欺骗局域网内所有主机和路由器,让所有上网的流量必须经过病毒主机。其他用户原来直接通过路由器上网现在转由通过病毒主机上网,切换的时候用户会断一次线。
切换到病毒主机上网后,如果用户已经登陆了传奇服务器,那么病毒主机就会经常伪造断线的假像,那么用户就得重新登录传奇服务器,这样病毒主机就可以盗号了。
由于ARP欺骗的木马程序发作的时候会发出大量的数据包导致局域网通讯拥塞以及其自身处理能力的限制,用户会感觉上网速度越来越慢。当ARP欺骗的木马程序停止运行时,用户会恢复从路由器上网,切换过程中用户会再断一次线。

 

解决方案:

在服务器上将网关的MAC地址和IP绑定,如果网关支持IP/MAC绑定,在您的路由器绑定即可,或者使用能将MAC地址和IP地址进行绑定的交换来避免此类情况发生。
在计算机上做MAC-IP绑定,将网关IP地址与MAC地址设为静态:

?编写批处理文件arp.bat:?
1)新建记事本,输入如下
@echo off
arp -d
arp -s 10.10.10.1 00-0A-EB-BC-8E-7A

 

注:10.10.10.1是你的网关,后面是对应的MAC地址.
2)选择记事本中的“文件”→“另存为”,文件名为arp;并修改文件名后缀为.bat。
3)将这个批处理文件放到每台计算机机的启动目录:“windows--开始--程序--启动”目录中。



以上所述内容,部分为网络节选,非本人亲写。

 

 

 

 

你可能感兴趣的:(C++,c,windows,C#,网络协议)