当前位置:首页 > 开发 > 互联网 > 正文

菜鸟分析网络执法官

发表于: 2012-12-23   作者:dcj3sjt126com   来源:转载   浏览:
摘要:   最近在论坛上看到很多贴子在讨论网络执法官的问题。菜鸟我正好知道这回事情.人道"人之患好为人师" 手里忍不住,就写点东西吧. 我也很忙.又没有MM,又没有MONEY....晕倒有点跑题. OK,闲话少说,切如正题. 要了解网络执法官的原理. 就要先了解局域网的通信的原理. 前面我们看到了.在以太网上传输的都是具有以太网头的数据包. 

 

最近在论坛上看到很多贴子在讨论网络执法官的问题。菜鸟我正好知道这回事情.人道"人之患好为人师" 手里忍不住,就写点东西吧. 我也很忙.又没有MM,又没有MONEY....晕倒有点跑题.

OK,闲话少说,切如正题. 
要了解网络执法官的原理. 
就要先了解局域网的通信的原理.

前面我们看到了.在以太网上传输的都是具有以太网头的数据包. 
也就是局域网上连个机器相互通讯就要知道对方的MAC地址.

看看具体的过成 
比如一台netbug的机器要和一台o3的机器通讯.

首先.netbug要知道o3的IP地址.(这就要用到dns协议,暂时我们略过) 
netbug知道了o3的IP后,就可以组装IP协议层以上的包了. 
但前面已经说了.要在以太网上传输数据,就必须有一个的MAC,

要找MAC,netbug首先在自己的arp缓存里找是否有这个条目.
大家可以在cmd环境下.

C:\>arp -a

Interface: 192.168.0.225 --- 0x2 
Internet Address Physical Address Type 
192.168.0.4 00-80-ad-77-e2-9a dynamic 
192.168.0.9 00-e0-4c-39-15-f2 dynamic 
192.168.0.10 00-e0-4c-39-19-a5 dynamic 
192.168.0.12 00-10-b5-4d-4b-b7 dynamic


看到没有? 
如果IP所对应的MAC在这里没有.那netbug就会用到我们以前所讲的arp协议.

 

发送一个广播.如果在局域网上发现中间的IP和自己的IP符合,就发回ARP回应.

ff ff ff ff ff ff 00 e0 4c 82 8f ba 08 06 00 01 
08 00 06 04 00 01 00 e0 4c 82 8f ba c0 a8 00 27 
00 00 00 00 00 00 c0 a8 00 01 20 20 20 20 20 20 
20 20 20 20 20 20 20 20 20 20 20 20

00 01:ethern 
08 00:IP 
06:hardware address length 
04:Protocol address length 
00 01:Opertion type 
00 e0 4c 82 8f ba :sender hardware address 
c0 a8 00 27: sender IP address 192.168.0.39 
00 00 00 00 00 00:receiver hardware address 00 00 00 00 00 00 broadcast 
c0 a8 00 01:receiver ip address 192.168.0.1 
20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20:the data fixed.


如果没有回应,那netbug就会把网关的MAC做为对方的MAC 
然后封装ethern网包.发送出去.

 

OK,原理就说到这里,大家看出什么漏洞了吗? 
对,如果我门在arp缓存里修改网关的mac那.netbug就上去网了.

那如何远程去修改对方的arp缓存呢? 
有办法. 
就是arp的一个属性.免费arp. 
1.一个主机可以通过她来确定另一个主机是否设置了相同的IP地址. 
2.如果发送免费ARP的主机正好改变了硬件地址.那这个分组就可以更新其它主机缓存中的硬件地址.

C:\>arp /?

Displays and modifies the IP-to-Physical address translation tables used by 
address resolution protocol (ARP).

ARP -s inet_addr eth_addr [if_addr] <===添加arp条目 
ARP -d inet_addr [if_addr] <====删除arp条目 
ARP -a [inet_addr] [-N if_addr] <====显示arp条目

-a Displays current ARP entries by interrogating the current 
protocol data. If inet_addr is specified, the IP and Physical 
addresses for only the specified computer are displayed. If 
more than one network interface uses ARP, entries for each ARP 
table are displayed. 
-g Same as -a. 
inet_addr Specifies an internet address. 
-N if_addr Displays the ARP entries for the network interface specified 
by if_addr. 
-d Deletes the host specified by inet_addr. inet_addr may be 
wildcarded with * to delete all hosts. 
-s Adds the host and associates the Internet address inet_addr 
with the Physical address eth_addr. The Physical address is 
given as 6 hexadecimal bytes separated by hyphens. The entry 
is permanent. 
eth_addr Specifies a physical address. 
if_addr If present, this specifies the Internet address of the 
interface whose address translation table should be modified. 
If not present, the first applicable interface will be used. 
Example: 
> arp -s 157.55.85.212 00-aa-00-62-c6-09 .... Adds a static entry. 
> arp -a .... Displays the arp table.

C:\> 

 

网络执法官就是用的这个特性. 
使对方缓存中的网关地址错误. 
没有网关,当然上不去网了. 
如果发现相同IP具有不同的MAC,当然报错了. 
公司网络上不好使用网络执法官. 
等过几天, 
我抓几个包详细分析一下.
让我们模拟一次arp攻击:

C:\>arp -a

Interface: 192.168.0.225 --- 0x2 
Internet Address Physical Address Type 
192.168.0.1 00-50-ba-2b-ad-7b dynamic 
192.168.0.4 00-80-ad-77-e2-9a dynamic 
192.168.0.9 00-e0-4c-39-15-f2 dynamic 
192.168.0.10 00-e0-4c-39-19-a5 dynamic 
192.168.0.12 00-10-b5-4d-4b-b7 dynamic 
192.168.0.53 00-e0-4c-39-1d-80 dynamic 
C:\>arp -d 192.168.0.4

C:\>arp -s 192.168.0.4 00-e0-4c-39-15-f2

C:\>arp -a

Interface: 192.168.0.225 --- 0x2 
Internet Address Physical Address Type 
192.168.0.1 00-50-ba-2b-ad-7b dynamic 
192.168.0.4 00-e0-4c-39-15-f2 static 
192.168.0.9 00-e0-4c-39-15-f2 dynamic 
192.168.0.10 00-e0-4c-39-19-a5 dynamic 
192.168.0.12 00-10-b5-4d-4b-b7 dynamic 
192.168.0.51 00-c0-9f-16-da-8d dynamic 
192.168.0.53 00-e0-4c-39-1d-80 dynamic

C:\>tracert 210.26.50.242

Tracing route to 210.26.50.242 over a maximum of 30 ho

1 * * * Request timed out. 
2 * * * Request timed out. 
3 * ^C


C:\>arp -d 192.168.0.4

C:\>arp -a

Interface: 192.168.0.225 --- 0x2 
Internet Address Physical Address Type 
192.168.0.1 00-50-ba-2b-ad-7b dynamic 
192.168.0.4 00-80-ad-77-e2-9a dynamic 
192.168.0.9 00-e0-4c-39-15-f2 dynamic 
192.168.0.10 00-e0-4c-39-19-a5 dynamic 
192.168.0.12 00-10-b5-4d-4b-b7 dynamic 
192.168.0.51 00-c0-9f-16-da-8d dynamic 
192.168.0.53 00-e0-4c-39-1d-80 dynamic

C:\>tracert 210.26.50.242

Tracing route to XRL [210.26.50.242] 
over a maximum of 30 hops:

1 <1 ms <1 ms <1 ms PROXY [192.168.0.4] 
2 1 ms <1 ms <1 ms 218.4.142.137 
3 1 ms <1 ms <1 ms ^C 
C:\>

 

今天抓了个网络执法官的包。

00 80 ad 02 a8 31 dest address 
00 80 ad 6d 38 92 sour address 
08 06 arp packet


00 01 ethern net packet 
08 00 IP address 
06 hardware address length 
04 ip address length 
00 02 arp reply 
00 80 ad 6d 38 92 source address MAC 
c0 a8 00 04 source IP address 192.168.0.4 
00 80 ad 02 a8 31 dest address MAC 
c0 a8 00 e1 dest IP address 192.168.0.225

23 45 73 72 01 94 07


192.168.0.4是我的网关IP地址。 
如此操作以后。

D:\Documents and Settings\coolrit>arp -a

Interface: 192.168.0.225 --- 0x2 
Internet Address Physical Address Type 
192.168.0.4 00-80-ad-77-e2-9a dynamic 
192.168.0.37 00-e0-4c-82-7d-74 dynamic

D:\Documents and Settings\coolrit>arp -a

Interface: 192.168.0.225 --- 0x2 
Internet Address Physical Address Type 
192.168.0.4 00-80-ad-6d-38-92 dynamic 
192.168.0.37 00-e0-4c-82-7d-74 dynamic

 

但也许有人有疑问。 
如何让windows自己跳出消息说。有IP冲突呢?

我们来看这样一个包:

00 80 ad 02 a8 31 00 80 ad 02 a8 32 08 06

00 01 
08 00 
06 04 
00 02 
00 80 ad 02 a8 32 
c0 a8 00 e1 
00 80 ad 02 a8 31 
c0 a8 00 e1

 

看到没有。 
两个IP地址都是一样的。 
OK。 
现在把这个包replay一下。

哈哈~~~ 
看好戏吧。

菜鸟分析网络执法官

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
环境: WRTNode开发板 问题概述: 在控制台执行print,死机。执行httpd则可以运行。发现部分靠后的
这次我以爬新浪微博为例,这个过程太纠结了,参考了好多大神的帖子,不过还是遗留了很多问题,我们
什么是HtmlUnit HtmlUnit是一个开源的浏览器模拟工具,可以方便我们模拟浏览器的行为,例如打开网页
上一篇写到,要是分析每一个url,包括滚动条滚动的url和分页的url就可以构造出来url来访问,从而抓
现如今,谁都知道IP地址,上周就有个阿姨,特意叫我帮她改下IP地址。看来互联网确实很强大了,谁都
一、安装xdebug模块 1、去www.xdebug.org 下载相应版本php的模块文件,保存下载后的文件到php的ext
原文地址: 《谁说菜鸟不会数据分析》读后感 作者: 雪梦 @小蚊子乐园 其实我是犹豫了一段时间后才
Vector类: 为了更好的从宏观上理解Vector,我们可以首先看一下Vector的父类以及实现的一些Interfac
《谁说菜鸟不会数据分析(工具篇)》 基本信息 作者: 张文霖 狄松 林凤琼 出版社:电子工业出版社
作者:@recobeyang http://weibo.com/1662436833
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号