ARP欺骗
ARP攻击的原理,现象,和解决方法是什么?
1.首先给大家说说什么是ARP
ARP(Address Resolution Protocol)是地址解析协议,是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。
ARP原理:某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后,就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。
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欺骗。
2.网络执法官利用的就是这个原理!
在网络执法官中,要想限制某台机器上网,只要点击"网卡"菜单中的"权限",选择指定的网卡号或在用户列表中点击该网卡所在行,从右键菜单中选择"权限",在弹出的对话框中即可限制该用户的权限。对于未登记网卡,可以这样限定其上线:只要设定好所有已知用户(登记)后,将网卡的默认权限改为禁止上线即可阻止所有未知的网卡上线。使用这两个功能就可限制用户上网。其原理是通过ARP欺骗发给被攻击的电脑一个假的网关IP地址对应的MAC,使其找不到网关真正的MAC地址,这样就可以禁止其上网。
3.修改MAC地址突破网络执法官的封锁
根据上面的分析,我们不难得出结论:只要修改MAC地址,就可以骗过网络执法官的扫描,从而达到突破封锁的目的。下面是修改网卡MAC地址的方法:
在"开始"菜单的"运行"中输入regedit,打开注册表编辑器,展开注册表到:HKEY_LOCAL_
MACHINE/System/CurrentControl
Set/Control/Class/{4D36E972-E325-11CE-BFC1-08002BE103
18}子键,在子键下的0000,0001,0002等分支中查找DriverDesc(如果你有一块以上的网卡,就有0001,0002......在这里保存了有关你的网卡的信息,其中的DriverDesc内容就是网卡的信息描述,比如我的网卡是Intel 210
41 based Ethernet Controller),在这里假设你的网卡在0000子键。
在0000子键下添加一个字符串,命名为"NetworkAddress",键值为修改后的MAC地址,要求为连续的12个16进制数。然后在"0000"子键下的NDI/params中新建一项名为NetworkAddress的子键,在该子键下添加名为"default"的字符串,键值为修改后的MAC地址。
在NetworkAddress的子键下继续建立名为"ParamDesc"的字符串,其作用为指定Network
Address的描述,其值可为"MAC Address"。这样以后打开网络邻居的"属性",双击相应的网卡就会发现有一个"高级"设置,其下存在MAC Address的选项,它就是你在注册表中加入的新项"NetworkAddress",以后只要在此修改MAC地址就可以了。
关闭注册表,重新启动,你的网卡地址已改。打开网络邻居的属性,双击相应网卡项会发现有一个MAC Address的高级设置项,用于直接修改MAC地址。
MAC地址也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。这个地址与网络无关,即无论将带有这个地址的硬件(如网卡、集线器、路由器等)接入到网络的何处,它都有相同的MAC地址,MAC地址一般不可改变,不能由用户自己设定。MAC地址通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20:0A:8C:6D就是一个MAC地址,其中前6位16进制数,08:00:20代表网络硬件制造商的编号,它由IEEE分配,而后3位16进制数0A:8C:6D代表该制造商所制造的某个网络产品(如网卡)的系列号。每个网络制造商必须确保它所制造的每个以太网设备都具有相同的前三字节以及不同的后三个字节。这样就可保证世界上每个以太网设备都具有唯一的MAC地址。
另外,网络执法官的原理是通过ARP欺骗发给某台电脑有关假的网关IP地址所对应的MAC地址,使其找不到网关真正的MAC地址。因此,只要我们修改IP到MAC的映射就可使网络执法官的ARP欺骗失效,就隔开突破它的限制。你可以事先Ping一下网关,然后再用ARP -a命令得到网关的MAC地址,最后用ARP -s IP 网卡MAC地址命令把网关的IP地址和它的MAC地址映射起来就可以了。 [详细说明:对付arp欺骗的方法:
首先你正常上网的情况下,(最好就你一台机器上网,其他的关机)
你运行cmd进入DOS命令行输入:
arp -a
察看一下你的网关的MAC地址(就是后面的那以堆有数字,有字母,两个两个在一起的那个)
用纸记下来。
然后输入:
arp -s 网关IP 网关MAC
例如:
arp -s 192.168.1.1 00-00-02-0c-46-a4
这样就能绑定网关的MAC地址到你自己的电脑上。
就不怕WinCap的arp欺骗了。
需要注意的是:这个配置在重启电脑后失效,需要重配置。所以让你拿纸笔记下来。]
4.找到使你无法上网的对方
解除了网络执法官的封锁后,我们可以利用Arpkiller的"Sniffer杀手"扫描整个局域网IP段,然后查找处在"混杂"模式下的计算机,就可以发现对方了。具体方法是:运行Arpkiller(图2),然后点击"Sniffer监测工具",在出现的"Sniffer杀手"窗口中输入检测的起始和终止IP(图3),单击"开始检测"就可以了。
检测完成后,如果相应的IP是绿帽子图标,说明这个IP处于正常模式,如果是红帽子则说明该网卡处于混杂模式。它就是我们的目标,就是这个家伙在用网络执法官在捣乱。
扫描时自己也处在混杂模式,把自己不能算在其中哦!
找到对方后怎么对付他就是你的事了,比方说你可以利用网络执法官把对方也给封锁了!:-)
附录:
1 .检查本机的“ ARP 欺骗”木马染毒进程
同时按住键盘上的“ CTRL ”和“ ALT ”键再按“ DEL ”键,选择“任务管理器”,点选“进程”标签。察看其中是否有一个名为“ MIR0.dat ”的进程。如果有,则说明已经中毒。右键点击此进程后选择“结束进程”。
2 .检查网内感染“ ARP 欺骗”木马染毒的计算机
在“开始” - “程序” - “附件”菜单下调出“命令提示符”。输入并执行以下命令:
ipconfig
记录网关 IP 地址,即“ Default Gateway ”对应的值,例如“ 59.66.36.1 ”。再输入并执行以下命令:
arp –a
在“ Internet Address ”下找到上步记录的网关 IP 地址,记录其对应的物理地址,即“ Physical Address ”值,例如“ 00-01-e8-1f-35-54 ”。在网络正常时这就是网关的正确物理地址,在网络受“ ARP 欺骗”木马影响而不正常时,它就是木马所在计算机的网卡物理地址。
Internet Address Physical Address Type
218.194.XX.189 000e.a654.0bab dynamic
218.194.XX.131 000e.a654.0bab dynamic
218.194.XX.133 000e.a654.0bab dynamic
218.194.XX.132 000e.a654.0bab dynamic
218.194.XX.139 000e.a654.0bab dynamic
218.194.XX.136 000e.a654.0bab dynamic
218.194.XX.143 000e.a654.0bab dynamic
218.194.XX.142 000e.a654.0bab dynamic
也可以扫描本子网内的全部 IP 地址,然后再查 ARP 表。如果有一个 IP 对应的物理地址与网关的相同,那么这个 IP 地址和物理地址就是中毒计算机的 IP 地址和网卡物理地址。