无ARP欺骗的嗅探技术

上一篇 / 下一篇  2008-10-21 08:33:21

作者:cnqingIXPUB技术博客$qu rJ;j\o c k

//本文以发表于20083期黑客防线 版权归《黑客防线》杂志社所有
%B l-I.{)v0//转载请表明版权

"\/L7q#B@F&wM5l0IXPUB技术博客Oq)Y|j6a {1O t

ARP欺骗的攻击和防御技术都比较成熟了,这里也不再阐述。此次重点讲解如何不用ARP欺骗进行嗅探以及会话劫持的技术原理,实际的攻击方法是进行MAC欺骗。

2E'@)DS)v+jNC0IXPUB技术博客W7|/F cxGf

一、原理:

,G|D l Q0IXPUB技术博客P0e3{*XO.dG-P5z4r

在开始之前我们先简单了解一下交换机转发过程:交换机的一个端口收到一个数据帧时,首先检查改数据帧的目的MAC地址在MAC地址表(CAM)对应的端口,如果目的端口与源端口不为同一个端口,则把帧从目的端口转发出去,同时更新MAC地址表中源端口与源MAC的对应关系;如果目的端口与源端口相同,则丢弃该帧。IXPUB技术博客JEw)_5]c)Dcy

MI5|"^&_W6mq0有如下的工作场景:

Vw5`&@*e-S5\0IXPUB技术博客ByP)[c)B3qP1zi

一个4口的switch,端口分别为Port.A、Port.B、Port.C、Port.D对应主机 A,B,C,D,其中D为网关。

_I"S9o^0IXPUB技术博客CK6E*T6ky1QE

当主机A向B发送数据时,A主机按照OSI往下封装数据帧,过程中,会根据IP地址查找到B主机的MAC地址,填充到数据帧中的目的MAC地址。发送之前网卡的MAC层协议控制电路也会先做个判断,如果目的MAC相同于本网卡的MAC,则不会发送,反之网卡将这份数据发送出去。Port.A接收到数据帧,交换机按照上述的检查过程,在MAC地址表发现B的MAC地址(数据帧目的MAC)所在端口号为Port.B,而数据来源的端口号为Port.A,则交换机将数据帧从端口Port.B转发出去。B主机就收到这个数据帧了。IXPUB技术博客"T7S7kGs'AM

H:U z#Z,y w7l0图1IXPUB技术博客` DR1Cb6m

^#G$mh6`y0这个寻址过程也可以概括为IP->MAC->PORT,ARP欺骗是欺骗了IP/MAC的应关系,而MAC欺骗则是欺骗了MAC/PORT的对应关系。比较早的攻击方法是泛洪交换机的MAC地址,这样确实会使交换机以广播模式工作从而达到嗅探的目的,但是会造成交换机负载过大,网络缓慢和丢包甚至瘫痪,我们不采用这种方法。IXPUB技术博客RP?)l5i8R#K

IXPUB技术博客 Jj| O7XoHe"E

二、实战

fo_cB$ZG0IXPUB技术博客m*O8\a,tV

工作环境为上述的4口swith,软件以cncert的httphijack 为例,应用为A主机劫持C主机的数据。

BKVl(B7l0IXPUB技术博客]3t8f%n'Ok;VB

以下是劫持过程(da为目的MAC,sa为源MAC)

e)f)_}p)s!J{0IXPUB技术博客 r5~j o8q;k(td

1.A发送任意da=网关.mac、sa=B.mac的数据包到网关。

-JL)u+m\0

,@&C%Ll)slhT i0这样就表明b.mac 对应的是port.a,在一段时间内,交换机会把发往b.mac 的数据帧全部发到a主机。这个时间一直持续到b主机发送一个数据包,或者另外一个da=网关.mac、sa=b.mac的数据包产生前。
4C1H6wo ^|;[ij0IXPUB技术博客a3{ q&UX
图2

%YHxFZv0

4J4F"{1a(G"So A02.A 主机收到网关发给B的数据,记录或修改之后要转发给B,在转发前要IXPUB技术博客{X/L?*J'Rgj

z hK[,`"d8f-v0发送一个请求B.MAC的广播,这个包是正常的IXPUB技术博客9D'U F T D

IXPUB技术博客:? k7PYj w.u

MAC信息为:da=FFFFFFFFFF、sa=a.mac。IXPUB技术博客:g(^4Wj ~6A2r

IXPUB技术博客"Yz,QjC ww

这个数据帧表明了a.mac对应port.a,同时会激发b主机响应一个应答包

;{l9Gv%v)\K0

E;]7aM u)w@'M8E0MAC信息为:da=a.mac、sa=b.mac

-fzV6@K`O0

$X*h5u sAg ?Z&X pp0这个数据帧表明了 b.mac对应port.b

y&O F/D k0IXPUB技术博客` Y^u0I&]B3E

至此,对应关系已经恢复,A主机将劫持到的数据可顺利转发至BIXPUB技术博客:f~Dg]A)q4L!aO

hi)E.Z9Ltb1hK0图3IXPUB技术博客,g*g$N3f!H!j]

IXPUB技术博客 |5F^hB {gMs

3. 转发劫持到的数据到B,完成一次劫持

"k @2h u6E1V:t0U0

;c7U(K-c~4ld c-Z0三、攻击特点

we a%~X"X0IXPUB技术博客t-?.};UU#w\ g

1.由于这种攻击方法具有时间分段特性,所以对方的流量越大,劫持频率也越低,网络越稳定。

'r(eLYU\0IXPUB技术博客:xLJj(jY!l9B

2.隐蔽性强,基于1的特殊性和工作本质,可以在ARP防火墙和双向绑定的环境中工作。IXPUB技术博客7v!jd0^z

IXPUB技术博客P4cvg3grT g

四、如何防护

*^gt/kE0IXPUB技术博客\6x:jj'Y1j)m

高级的交换机可以采用ip+mac+port 绑定,控制CAM表的自动学习。目前尚无软件可以防护此类攻击

'_rz}L+N1q1[j0IXPUB技术博客 b\I~-c/?*E%r

五、利用工具

;\] |Nl CVp?0IXPUB技术博客.K7Pu%s^

1.httphijack beta 2 说明:http会话劫持IXPUB技术博客$_4i&o+`s1s

IXPUB技术博客,w `zE9e Y*O$k2z

2.ssclone 说明:交换环境下的会话复制软件(gmail,qqmail,sohumail…..)IXPUB技术博客9p e*L%q%R5H&RQ6M%m*s

9j l6l B:u!j03.skiller 说明:流量控制IXPUB技术博客2j9ry7reU U


TAG: arp ARP Arp 技术 欺骗

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar