调查局在最近的一份报告中指出2010年是僵尸网络(Botnet)年,全球遭遇攻击数量中僵尸网络名列第一。不久前,台湾当局就破获了一起国家级的僵尸网络;该僵尸网络连接台湾的主控台(CNC),以2万多个病毒,对30多个国家同时发动拒绝式服务的攻击。
僵尸网络(Botnet)到底是怎么发动攻击的?以下这篇深入剖析文章是由趋势科技Sr. Dev Manager Arther Wu所撰写。
Botnet 僵尸网络:
无声的主流威胁 恐使电脑使用者成罪犯
你是否曾经想过自己的电脑会是攻击他人系统的帮凶?或是成为助长地下经济的一员?2003年在美国奥勒冈州的Clark,利用botnet 僵尸网络(或称为傀儡网络),同时两万多台电脑对ebay发动DDoS攻击;2005年一月美国一位20岁的年轻人,使用botnet 僵尸网络瘫痪西雅图-西北医学中心的医疗系统,造成约一百五十万美金的损失,并危害到该院病人的生命。2008年,中国的黑客发动botnet 僵尸网络大军,DDoS攻击著名的巴哈姆特游戏社交网站,要求该网站配合其宣传,否则将继续阻断其服务;美国联邦调查局指出,全球约有一百多万台的电脑遭受bot控制成为botnet 僵尸网络一员,在不知不觉中黑客已经利用你的电脑为所欲为了。
Bot 的威胁
FBI:Botnet 僵尸网络受害者超过 1 百万人
全台有三分之一电脑遭植入僵尸程序
每10部电脑就有1.1部成为非自愿的僵尸电脑
约7.5成 IT安全人员,没有意识到僵尸网络威胁
Gartner估计在本年度末大概会有75%的企业会感染上僵尸病毒
根据 Marshal 的报导,有六个 Botnet 必须为现今 85% 的垃圾邮件与网络钓鱼电子邮件负责。
Bot 怎么植入我的电脑?
如果一台操作系统和浏览器有漏洞的PC访问了一个含有恶意程序的网站或是博客,可能在不知情的情况下就感染了。尤其是许多人喜欢在网络上交换影音或音乐文件,但下载同时可能不知不觉就让电脑中毒了,黑客藉此远端端控制你的电脑,不只会窃取个人隐私、监控上网活动,电脑还会像僵尸一样被控制,变成黑客窃取他人电脑资料的帮凶!
根据趋势科技 TrendLabs 统计指出在平均每月至少有超过 1 百万台 PC 遭僵尸网络相关恶意程序感染。
在介绍botnet 僵尸网络行为之前,我们先来了解其历史;1988年时,Jarkko Oikarinen在芬兰的欧芦大学(University of Oulu)设计出一套在线聊天系统,称之为Internet relay chat (IRC),隔年Greg Lindahl在IRC架构上撰写了GM (Game Manager for the Hunt the Wumpus game),这是第一个IRC bot,当初的bot只是一个方便管理系统的工具,并未有任何恶意的行为,然而现今的bot已经成为网络安全的一大隐患,也成为黑客赚钱的有利工具。
一般的Botnet 僵尸网络组成可分为三部份:
botherder: 下达指令给botnet 僵尸网络成员的司令官,为黑客本身
botclient: 被遥控的受害者电脑,受害者通常不会察觉自己已经遭受感染,而成为botnet 僵尸网络的一份子。
Command and control server (C&C server): 负责管理控制整个botnet 僵尸网络的server,并将botherder的指令传递给botclient
其架构如图1;当一台电脑被感染而成为botnet 僵尸网络新成员时,先向连向C&C server注册,并等候它的指令,而botherder透过C&C server得知目前botnet 僵尸网络的情况,有多少botclient成员?各分布在哪些国家?可进行什么样的攻击?如果botherder想要进行DDOS攻击,只需下达指令给C&C server,C&C server再传送给等待的botclient,此时所有的botclient将攻击目标电脑,并将执行结果回传给C&C server;由此可知,黑客可躲在幕后假借他人之手达到己之所欲。
图1 简易Botnet 僵尸网络架构图
Botnet 僵尸网络种类
Botnet 僵尸网络可依照其网络拓朴模式及其传输协定来进行分类;标准的botnet 僵尸网络为星状拓朴,如图2,所有的botclient连向同一个C&C server,botherder只要透过此server就可控制整个botnet 僵尸网络,不过这也是其缺点,当server发生crash时,botherder将失去他辛苦建立的botnet 僵尸网络。
图2 Botnet 僵尸网络星状拓朴
为了解决星状Botnet 僵尸网络的问题,因此有了多重server拓朴,如图3,当其中一台server发生错误时,其他的server将取代它,使botnet 僵尸网络能正常运作,这种拓朴提高了botnet 僵尸网络的容错能力,相对的,它需要更高深的设计技巧,因为server之间要能彼此沟通,并随时可取代其他server进行工作。
图3 Botnet 僵尸网络多重server拓朴
图4所描绘的为阶层式botnet 僵尸网络,它提供极高的可扩充性,不需要任何的C&C server,所以也就无须担心server crash造成的影响,虽然当一个高阶层的botclient断线,会导致一部分的botclients失联,但是至少不会让整个botnet 僵尸网络失去作用。
图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,即可发现异常,并可进行控管。
Botnet 僵尸网络会造成什么危害呢?
以下我们将介绍botnet 僵尸网络所造成的威胁;
扩张地盘:对botherder而言,如果botnet 僵尸网络愈大,代表其攻击效果越显着,且在地下经济中,出租botnet 僵尸网络是以bot个数来计价,所以bot的首要任务就是感染其他电脑,扩张其版图。
DDoS攻击:Botnet 僵尸网络最常被使用的攻击模式就是DDoS攻击,来进行对敌对公司的报复行动,或是勒索一般企业,其攻击技巧大都为TCP Syn flood、UDP flood或Smurf attack。
安装广告软件:广告主通常是依照其广告软件安装的电脑数量,来给予散布者相对应的金钱,所以bot会在受感染的机器上安装广告软件,并尽可能的安装到其他电脑中。
散布垃圾邮寄及钓鱼邮件:现在大部分的电子邮件系统都可侦测可疑的邮件IP来源,并加以封锁,但是现今的垃圾邮件或是钓鱼邮件是由botnet 僵尸网络中的bot发出,每一台受bot感染的机器都是spammer,令mail server防不胜防。
非法储存或偷取智慧财产:偷取电影、游戏或音乐…等等智慧财产也是bot擅长手段,botherder甚至会利用botnet 僵尸网络建立一个网络储存空间,将偷来的文件夹,储存在受bot感染的电脑中,botherder无需花钱购买硬体储存资料,也不用担心被智财权的拥有者提告,所以当你的电脑中多出一些莫名的电影或是音乐时,不要高兴太早,先检查自己是否受到bot的感染。
破解密码:当黑客想要破解某个密码时,电脑常需要做到长时间大量的运算,如果采取分散式运算,将可以大大缩短破解时间,因此botherder会将运算工作分给botnet 僵尸网络中的bots来进行。
点击诈欺:网络广告的收费方式通常是依照被点击的次数来向广告主收钱,因此botmet会针对特定的广告进行点击攻势,为botherder带来获利。
侦测Botnet 僵尸网络的工具
看了以上的介绍,你是否担心自己也是botnet 僵尸网络的成员呢?没关系,使用趋势科技专门的侦测bot的工具,就可以让它无所遁形。
结论
Botnet 僵尸网络一直以来都是黑客赚钱的有利工具,所以会他们想尽办法让自己的botnet 僵尸网络难以侦测,例如使用HTTPS传输,减少传送内容被过滤的可能性,使用洋葱路由(onion routing)或是fast-flux networks来加强其隐匿性,避免其C&C server被锁定;botherder彼此间甚至是互为敌对,当你的电脑被某一个bot感染时,它也会尝试去移除其他的bot,藉由打击敌人来提高自己的获利;因为botnet 僵尸网络的变化多端,利用现成的技术来增加其侦测难度,所以botnet 僵尸网络的侦测技术将是网络安全的一大挑战。
<!--[endif]-->