软件也有“第六感”?
在局域网内聊天,如果想知道邻居的QQ号怎么办?相信大家会不约而同地说出“QQ第六感”的名字。不错,很多技巧类文章都提到过它,使用“QQ第六感”可以嗅探到局域网内其他主机上别人的QQ号,那这是怎么回事呢?难道它也有第六感?解铃还需系铃人,下面还是让它自己说吧!
主角登场认识一下
嘿嘿,没锴,今天出场的就是我,“QQ第六感”,是的,顾名思义,我就是一个如同有着第六感般神奇能力的QQ周边软件。只要我在局域网中的一台计算机上悄悄地运行,整个局域网一一可能是一间办公室,一家网吧,甚至一个小区上所有已经登录的QQ号码和他们计算机的IP地址都会被我明明白白得显示出来!怎么样?是不是真的像有第六感一样神奇呢?
嗅探神话 慢慢道来
计算机上网,一般都不是直接与互联网相连的,都是由计算机连接到由路由器等设备组成的局域网,然后再连接到互联网上。就像是一座宾馆中有许多间客房,但是客人只能通过宾馆的大门才能进出一样,数据不管是进入局域网中的计算机还是由局域网中的计算机发出,都必须经过路由器。于是,另一个问题就紧接着而来了:进入了“宾馆大门”的数据们,是如何找到自己要去的“房间”的呢?
实际上,就像宾馆中的每闻客房部有门牌号一样,局域网中的所有计算机也都有唯一的MAC地址(Media Acces Control,媒体访问控制子层地址)作为自己的“身份标识”。当一个送信的服务员在宾馆大门(路由或者网关)接到一封送给MAC地址为“00-53-D3-45-00-00”房间的信(数据包)的时候,这位傻乎乎的送信员并不会直奔这个房间而去,而是拿着这封信敲开每一闻客房(计算机)询问“请问您这里是00-53 D3-45-00-00号房间么?”被询问的计算机会响应,如果是,就把这封信抄写一遍留下,服务员会继续拿着原稿敲开剩下的客房(计算机)询问,直到将整个宾馆(局域网)巡游一圈之后,再回到宾馆大门(路由),把原稿销毁掉。是的,我也知道这听上去实在是有点笨,但是这也是为了应对一封信(数据包)要发给多个房间(计算机)的情况。所以,这个服务生手中信封上的地址的形式类似可用下图来表示。
技术解剖 谜底揭晓
嘿嘿,现在,聪明的你一定想到我这神奇的“第六感”是如何应验的了吧?没错,就是我悄悄地守在了自己房间的门口(运行了软件的计算机),只要看到有送信的服务生走过来,不由分说就将他手中的信(数据报)偷过来,复制一份,拆开信封后,如果发现内容中有发给隔壁某个房间(局域网中其他的计算机)的QQ号为55xxxxxx的信,那就自然知道隔壁某个房间中有一个人的QQ号是55xxxxx了。不过这也给我了一个限制:要嗅探QQ号,需要对方在我监控后发送过信息。最后,我做完这一切还是要把信还给服务生的,否则,那位隔壁的女生就要收不到其他人发给她的信息了!不过如果数据太多,我处理不过来,那么局域网内的其他机子就与互联网连接不上了。那么嘿嘿,说穿了之后,我这所谓的“第六感”是不是也没有什么秘密可言呢?
笔者有话说:实际使用过“QQ第六感”的人都知道,一旦软件运行,整个局域网都会陷入瘫痪。从这里,很多人也会想到它的原理类似于常说的“ARP欺骗”。这个软件就是利用了MAC的信息本质上是要流过整个子层的原理,抓到MAC层的数据包之后查看里面有没有发给QQ特定端口(4000或者4002、4003等等)的信息,如果有,信息中的QQ号就会被显示,目标主机的IP地址也可以获得。这一点是和“P2P终结者”类似的,数据包都要在这中转—下。其实更进一步,有了IP地址。目标计算机名甚至目标计算机上共享的数据都可以查看。由于QQ号这种身份标识不像聊天内容本身那样可以加密后传输,所以想要找出来QQ号并不困难。用Sniffer之类的抓包软件配合一定的分析能力抓取DLC(Data Link Control,数据链路控制)帧的话,也可以很容易得到。另外,这个QQ第六感其实不仅仅是个嗅探软件,还可以“踢人下线”,其实算是有一点不良行为的软件了。“踢人”的原理基本上就是ARP欺骗攻击,不断地发包之后伪装入侵。


您当前的位置: