SSClone非ARP会话劫持原理分析

    [雨 May 9, 2008 09:49 | by ]
作者 robur
前两天买的过期杂志上看到的一款软件,刚开始还没注意,后来就恨自己杂志买晚了。(今年3月份的《黑客防线》)
那个神奇的软件,就像我标题上说的,叫SSClone,解释起来就是:Switch Session Clone,也就是“交换机会话克隆”(纯字面翻译,纯的~ )。

这个软件有什么用?其特点就是可以不通过传统的ARP欺骗方法,来实现局域网内的会话监听、劫持、复制等操作。(其实这个软件本身是用来会话复制的,也就是拦截客户机发送给网关的数据包,如果拦截网关发送给客户机的数据包,那么就是会话劫持了。)
因为采用了非ARP欺骗的技术,结果不用测试都可想而知,所有的ARP防火墙都对它不起作用。(废话了,ARP防火墙就是拦截ARP的,没有ARP数据包有个鸟用啊,哈哈)

今天自己组建了一个小环境,做了测试,具体环境如下:
一台傻瓜交换机(就是不可管理的),一台笔记本(作为被攻击者),一台服务器(作为发动攻击者),还有一个网关(局域网通过NAT网关上网)。
笔记本、服务器和网关通过那个傻瓜交换机连接。科来分析系统部署在服务器上,只捕获服务器本机网卡收发的数据包……
服务器的地址:192.168.1.27  (00 D0 68 06 22 74)
笔记本的地址:192.168.1.100  (00 11 5B CD E8 46)
网关的地址:192.168.1.1  (00 0A EB DA 06 E0)

具体的环境介绍完了,下面我们开始分析攻击的过程。

Highslide JS


1、首先看看抓包后分析的网关MAC下的IP地址,除了网关自己的内网IP,还有一个192.168.1.42,呵呵,只要对自己网络心中有数的管理员,都会觉得不正常吧!

Highslide JS


2、我们打开了SSClone,开始搜索局域网内的所有IP地址。程序发出大量的ARP数据包查询局域网中存活的主机。这时可以看出,发送这些ARP请求的是操作者的真实主机,也就是说,如果要找用此程序捣乱的人,可以在此下手。

Highslide JS


3、我们看到,笔记本(192.168.1.100)回答了这个请求。

Highslide JS


4、在扫描结束后几秒钟,我们开始对笔记本的数据包进行劫持。

Highslide JS


5、现在可以看到,攻击者的计算机正在冒用网关的MAC地址以及一个假IP,向外发送数据包。也就是向交换机宣称,攻击者所在的端口对应的是网关的MAC,在真正的网关发送一个数据包,或攻击者再次发送一个伪造数据包之前,这个错误的映射关系(网关MAC<——>攻击者端口)将一直存在。攻击者以每秒钟发送10个包的速度继续发送,不断地让交换机接收这个错误的映射关系。

Highslide JS


6、交换机果然被欺骗了,将目标MAC为网关MAC的数据包,都发送到了攻击者的计算机上。我的科来只在服务器本地捕获,如果欺骗不成功,是不可能收到笔记本与网关的通信内容。

Highslide JS


7、截获之后,必然要把数据包转发出去,否则网络就不通了嘛~可是现在交换机上对应网关MAC的端口是攻击者自己的端口,程序就开始用一个假冒的MAC和IP,通过ARP请求192.168.1.1(网关)的MAC地址,网关收到之后会产生一个回应。
这样正确的根据第5条所述的原理,正确的映射关系就恢复了,于是攻击者的计算机可以把这些截获的数据继续传递给网关。
之后,通过再进行第5条所述的方法,设置错误的映射关系。

Highslide JS


8、第5条说的数据包的具体结构。

最后,关于这个方法的一些个人理解:
设置错误映射关系的数据包,不一定是IGMP,其他的数据包也有可能,只要伪造一下MAC地址即可。
找出攻击者,可以参考第2条的内容,但如果攻击者变通一下手法,也不一定管用。
通过原理可以大致推断出,这个方法除了搞劫持,还能搞断网掉线……只要攻击者不转发数据包就可以了。
解决方法,需要通过交换机的端口绑定来实现,MAC和IP双绑已经没有作用了。
因为是基于交换机端口的,所以那种设置子网来屏蔽ARP泛滥的方法,也没用啦!

刚刚接触这种技术,有不正确的地方欢迎大家指正!!! 数据包样本我就不发了,里面有我邮箱密码呀。。。。


附:
Quotation
Switch Session Clone

首款基于mac+port理论的hack工具。交换环境下无arp欺骗的会话复制软件,利用mac+port欺骗方式实现sniffer.通过过滤(url)中的cookie信息复制出相同的会话.适用于任何http协议.比 "黑帽"聚会中的hamster功能更加强大。可以成功的穿过各种反arp工具。
经过实验,可以成功突破antiarp 和 360arp的防护。

使用说明:

1、设置参数

首如果本机含有多个网卡或者ip的话,需要选择主机的网卡和子网掩码。程序会自动探测出相应的主机ip和网关ip以及mac地址。

2、开始监听

点击start按钮,进行数据的监听。注意观察下方的Console窗口,操作的每一步都会有详细的提示。监听到数据后,会在左方的DomainList列表中以url方式出现。在URL列表中选择相应的监听到的连接,下方会给出详细的信息,包括cookie等信息。双击连接即可以相应的身份进入被攻击者的访问页面。

3、结果分析

可以将结果保存以文件方式导入和导出

Highslide JS


高级功能

1、选择数据sniffer模式。

程序共有两种模式。大于5台主机可使用paasvity模式,小型网络和测试建议使用active模式。两种模式的区别就是passive模式在劫持到数据之后不主动恢复链路网络会自动恢复。这样可以减少本机的发包量。

2、设置URLFilter

过滤器是url包含过滤,可以监听特定的URL的信息。也可不设置。

3、设置Packet/s。此参数为发包率

设置越大,监听到的信息越多。同时也会造成网络流量的增加。也可不设置。
因为在一次会话过程中,会有很多次的请求,只要截获其中的一次请求的数据,就可获得被劫持者的身份。所以,不需要过大的发包率。

4、设置Proxy Host。也可不设置。如果选择Proxy Host可进一步提高隐藏性。(本功能为高级功能,即使不选,现在的工具也无法监控到。)

首先点击scan按钮,扫描出网络中的主机,然后选择相应的主机,即可成功设置proxy。

5、设置Use Pcap

在程序的右下角有个api mode。通过双击可以修改为pcap模式。
pcap模式依赖选择的网卡,该模式可将session设置到外部浏览器。推荐使用默认的api模式。

其他更多功能请自行发现。谢谢! Bug To cncert.net@gmail.com

下载http://www.cncert.net/up_files/soft/SSClone1210.rar

注意:需要.net 2.0支持 ,不支持无线网卡。
Technology | Comments(0) | Trackbacks(0) | Reads(11414)
Add a comment
Emots
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
Enable HTML
Enable UBB
Enable Emots
Hidden
Nickname   Password   Optional
Site URI   Email   [Register]
               

Security code Case insensitive