图4 Botnet 僵尸网络阶层式拓朴
拥有最佳强健度的莫过于botnet 僵尸网络随机式拓朴(图5),botclient彼此相连,没有中控server,任何一个botclient失去联系,也不会影响到其他的botclient,botherder可下达指令给botnet 僵尸网络中的任一个botclient,再由它广播给其他的botclients,但其设计难度也是较高的,botherder必须确认每一个botclient都可以收到指令,而且只会收到一次,避免重复执行。
图5 Botnet 僵尸网络随机式拓朴
接下来我们来谈谈botnet 僵尸网络常用的一些传输协定;botnet 僵尸网络最常用的传输协定为IRC,它提供了在线聊天的机制,bot连上C&C server,并加入一个botherder已经预先开好的聊天频道,然后等着botherder在频道上下达指令,在执行完指令后,bot再将结果回传到频道上;IRC botnet 僵尸网络之所以盛行的关系,除了有完整的C&C server架构外,还因为可在网络上找到其source code,黑客只要稍加修改,即可成为一个新的bot,例如:GTBot、Gaobot。也因为IRC bot的盛行,所以有相当多公司的防火墙已经封锁此种传输协定,为了突破防火墙,许多bot改采HTTP,并且使用pull command的作法,因为大部分的防火墙都不挡outgoing的封包,所以由bot使用URLs跟botherder进行沟通,并由其中的query string来取得指令。上面所介绍的传输方式都需有中控server,如果bot采用Peer-to-Peer协定,则可形成先前所提及的随机式拓朴,不用担心C&C server crash;那么bot如何利用P2P来进行沟通呢?通常P2P bot都是使用文件夹分享的机制,bot下载特定文件夹,文件夹内容为botherder的指令,不过P2P bot也有其天生的缺点,因为它没有中控server,无法在同一时间将指令下达给所有的bots,所以不能达到要进行DDoS攻击的时效性要求。Botnet 僵尸网络所采用的传输模式之多,甚至连MSN也”雀屏中选”,MSN botnet 僵尸网络利用微软的MSN server充当其C&C server,bot模仿成真正MSN程序隐藏在受害者机器上,而botherder早就预先为它注册好一个MSN帐号,并加入其好友名单中,所以便可随时直接对其下指令,这种方式的好处是无须管理其C&C server (微软会自行管理),并可躲过侦测软件的监控,但缺点为微软只要检查其MSN server,即可发现异常,并可进行控管。
(责任编辑:)