僵尸网络 ,可进行Spam和DDoS攻击。
2.1 IRc僵尸网络
攻 击者在 公共或 者秘密 设置 的
IRC聊天服务器中开辟私有聊天频道
作为控制频道 ,僵尸程序中预先就包
含了这些频道信息,当僵尸计算机运
行时 ,僵尸程序会 自动寻找和连接这
些控制频道 ,收取频道中的消息。攻
击者则通过控制频道向所有连线的僵
尸程序发送指令。
计算机受到病毒或木马的感染后
成为Bot,Bot经常连接到一个IRC网
络,加入一个控制者操纵的频道,等
待控制者的命令 ,在何时进行什么样
的攻击 。僵尸网络包含成千上万的主
机形成分布式的强有力的攻击,使得
攻击难以预防。所以预防计算机感染
BOt程序或者关闭控制中心都能有效
地阻止僵尸网络的形成。
2.2 P2P僵尸网络
不同于传统的cnent—server模式 ,
对等网络 (P2P,Peer to Peer)是
一 种资源 (计算、存储、通信与信息
/服务器 (Client/Server,C/S)体
系架构相对应。与C/S网络架构相反,
P2P的网络架构在进行通信时不存在
中心节点,节点之 间 (Peer)是对等
的,即每一个节点可以进行对等的通
信。网络资源不再集中在网络的中心
服务器 ,而是分布在靠近用户的网络
边缘的各P2P节点上。这种网络架构
所带来的优点是P2P网络各节点的资
源可以共享,网络资源是P2P各节点
的总和。
3 lRC僵尸网络
3。1 IRC (Intemet Relay Chat)协议
IR C协议采用客户端/服务器模
式,客户端连接到IRClIII务器,多个
IRCN务器组成服务器网络 ,从一个
用户到另一个用户的信息可以通过服
务器网络传递 ,即使这些用户连接到
不 同的服 务器亦然 。举例 来说 ,如
果irc.263.netN务器对应多个IP,每
个IP都运行IRC Server程序,如果
用户A连接fi|IPl,用户B连接fi|IP2,
维普资讯
僵F网络的研究与发现
摘要:由于僵尸网络已经发展为攻击者的一个攻击平台,对于僵尸网络的防范与检测逐渐成为当前迫在眉睫的安全需求。该
丈通过对僵尸网络的分析与研究‘介绍了传播、控制,并对典型特征进行了详细的阐述。
关键词:僵尸程序;僵尸网络:点对点
Research and detection of the BotNet
CAI Huì-mei
(J,均'IIa/J I!7StitUt8 of Comput/i7g T8C加%gy, 胁刀;214083, 只 !ì. C/J/j时
Abstract: As the Botnets are a root cause of the Internet a ttacks , the detecting of Botnets had been a stare in the face to the security
requirement. This artic/e based the analyse and research ‘ introduced the spreading , controlling and the characteristic of the Botnets.
Key words:B饨; BotNet; P2P
1 号 l言
垃坡邮件 (Spam) 的传播、
DDoS攻击越来越成为当前亘联网上
的公共问题,而侄尸网络正是攻击者
手中的一个攻击平台。利用这个攻击
平台,攻击者可以实施各种各样的破
坏行为,并且使这些破坏行为比传统
的实施方法危害更大、更难防范。比
如,传统的蠕虫不能"回收成果
即蠕虫的释放者通常不知道蠕虫f代t码
成功入侵 r哪些计算机,也不能从释
放蠕虫的行为中给自己带来直接的利
益。但是攻击者让蠕虫携带僵尸程序
(Bot) ,不fEl.可以"回收"蠕虫蔓
延的成果,还可以对感染蠕虫的计算
机集中进行远程控制。通过僵尸网络
实施这些攻击行为,简化了攻击步骤,
提高了攻击效率,而且更易于隐藏身
份。僵尸网络的控制者可以从攻击中
获得经济利益,这是僵尸网络日益发
展的重要原动力。因此需要一种有效
的 }j法来发现和阻止这样危险的网络。
2 简介
→台被植入僵尸程序的机器成为
僵尸计算机,随时等待控制者发送指
令进行攻击。由一群僵尸计算机组成
僵尸网络,可进行Spam和DDoS攻击。
IRC 僵尸网络
攻击者在公共或者秘密设置的
IRC聊天服务器中开辟私有聊天频道
作为控制频道,僵尸程序中预先就包
含了这些频道信息,当僵尸计算机运
行时,僵尸程序会自动寻找和连接这
些控制频道,收取频道中的消息。攻
击者则通过控制频道向所有连线的僵
尸程序发送指令。
计算机受到病毒或水马的感染后
成为Bot , Bot经常连接到一个IRC网
络,加入一个控制者操纵的频道,等
待控制者的命令,在何时进行什么样
的攻击。僵尸网络包含成千上万的主
机形成分布式的强有力的攻击,使得
攻击难以预防。所以预防计算机感染
Bot程序或者关闭控制中心都能有效
地阻止僵尸网络的形成。
P2P 僵尸网络
不同于传统的client-server模式,
对等网络 (P2P , Peer to Peer) 是
一种资源(计算、存储、通信与信息
等)分布利用与共享的网络体系架构,
与目前网络中占据主导地位的客户机
/服务器 (Client/Server , C/S) 体
系架构相对应。与C/S网络架构相反,
P2P的网络架构在进行通信时不存在
中心节点,节点之间 (Peer) 是对等
的,即每一个节点可以进行对等的通
信。网络资源不再集中在网络的中IL)
服务器,而是分布在靠近用户的网络
边缘的各P2P节点上。这种网络架构
所带来的优点是P2P网络各节点的资
源可以共享,网络资源是P2P各节点
的总和。
3 IRC僵严网络
IRC (Internet Relay Chat) 协议
IRC协议采用客户端/服务器模
式,客户端连接到HRC服务器,多个
IRC服务器组成服务器网络,从一个
用户到另一个用户的信息可以通过服
务器网络传递,即使这些用户连接到
不同的服务器亦然。举例来说,如
果irc. 263 . net服务器对应多个IP,每
个IP都运行IRC Server程序,如果
用户A连接到IPt,用户B连接到IP2 ,
那么A和B依然可 以加入相同的频道 ,
互相之间可 以对话。这个功能 由IR C
Server实现,对用户是透明的,用户
只需选择irc.263.net这个IRC服务器 ,
加入喜欢的频道即可。
I R C服 务 默 认 的端 口是T C P
6667,通常也可以在6000~7000端口
范围之内选择 ,也可以配置为任何合
法端口。许多IRC Bot为了逃避常规
的检查,选择443、8000、500等自定
义端口。
用户可在IR CN务器上建立、选
择和加入感兴趣的频道 ,一个用户可
以将消息发送给频道内的所有其他用
户,也可以秘密地发送给单个用户。
频道管理员可以设置频道模式,
比如,需要密码才能加入频道、设置
频道为隐藏模式 (使频道对普通权限
用户不可见),等等。
3.2 IRC Bot的实现
I R C B 0 t实 际上是 一个 定制
的IR C客户端 ,它与供用户正常
使用IRCN务的客户端 (如HIRC、
mlRC)的不同之处是:(1)IRC Bot
只需支持部分IRC命令;(2)IRC Bot
会将收到的消息作为命令解释执行,
而正常客户端却将这些消息作为聊天
内容显示在屏幕上。
因为IRC Bot需要实现的IRC命
令很少 ,现在的IRC Bot通常是独立
的客户端,一般至少需要实现以下
IRC命令 :
(1)NI CK和USER:设置昵称和
用户名,呢称在B0t登录的IRC网络
内必须惟一;
(2)PASS:IR C服务器可以配置
为需要连接口令,PASS命令在TCP
三次握手后立刻发送;
(3)JOIN #Channel key:加入
一 个频道,keY为频道密码,可选 ;
僵尸网络为保证自身安全,常常设置
甍 l薯
0 学术.技术
频道密码;
(4)MODE:修改频道或用户模式,
绝大多数IRC Bot都将自身设置为不
可见;
(5)PING和PONG:维持与IRC服
务器的连接,当IR C客户端一段时间
未 “发言”时,服务器向客户端发送
PING命令,客户端回应PONG命令,
参数与PING的参数相同,表示客户
端处于存活状态;正常的IRC用户经
常处于聊天状态,而IRC Bot除非接
收到控制者命令或者汇报自身状态,
否则都处于空闲状态,这时不断与服
务器发送PING/PONG命令来维持连
接 ,这也是IRC Bot的一个特征 ;
(6)PRIVMSG #Channel
msg:向一个频道或用户发送消息,
控制者或B Ot都利用该命令互相通信,
控制者几乎总是 向频道而不是单个用
户发送消息(控制命令);
(7)DCC SEND:传送文件。Bot
用该命令作为继续扩散的方法之一。
3.3利用僵尸网络的行为特征
(1)快速加入型Bot
这类BOt通常利用蠕 虫传播 ,一
旦在受害主机上运行,就按预定义的
参数连接I R C服务器 、加入指定的频
道接受指令。短期内大量IRC客户端
加入同一服务器的同一频道是可疑的。
(2)长期连接型Bot
正常用户很少长期停留在一个
频道 中,而BOt只有在接受 “退 出”、
“休眠” 、 “自杀”等命令才会退出。
(3)发呆型Bot
BOt与正常用户另一个不同之处
是B Ot很少 “说话”,经常 “发呆”,
靠ping/pong命令来维持连接。
3.4解除僵尸网络
要反控制一个僵尸网络 ,首先要
掌握的基本信息包括以下几点:(1)
控制服务器 信息 :域名或IP、端 口
(port)、连接密码(如有)。(2)频道
信息:频道名 (channe1)、频道密
码(如有)。(3)控制密码、编码规则和
Host:控制者发送密码到频道中,用
于标识身份,常以.1ogin pass的形
式 出现 ;编码 规则和是否启用h0St
认证是B 0t程序实现的,不体现在网
络通信中。(4)BOt支持的命令集:
主要是认证 、升级和 自删除类的命
令,~/l/login、.update、.download、
.uninstall等。
获得了Botnet的基础特性后,有
多种方法可以反控制僵尸网络,每种
方法的复杂度和效果各不相同。
(1)模拟控制者,对僵尸网络进行
完全控制
前提是已经掌握 了上面提到的僵
尸网络的基础信息。模拟控制者通过
认证后,可以发送各种BOt支持的命
令:
1)发送更新命令
可 以使BOt下载并运行自身的专
杀工具,当然,需架设网站或文件服
务器等作为存放专杀工具的载体;也
可以修改控制密码或更新B Ot,从而
接管整个僵尸网络。
2)自删除命令
使BOt删除 自身。这种方法只有
在发现僵尸网络正在从事恶意活动时
才有价值,否则,单纯地删除BOt后,
这种有漏洞的系统很快会被其他恶意
代码感染。事实上,含有一种Bot的
主机通常同时含有多种其他Bot。
(2)切断用户主机和控制服务器的
联系,使僵尸网络失去控制
网管可以在本网的网关处或者安
全设备上切断本网用户和控制服务器
的联系,使本网内的用户不受僵尸网
络的控制。
控制的方式,可以通过IP或者僵
尸网络所使用的域名。如果对域名的
维普资讯
那么A和B依然可以加入相同的频道, 频道密码; (port) 、连接密码(如有)0 (2)频道
互相之间可以对话。这个功能由IRC (4)MODE: 修改频道或用户模式, 信息:频道名 (channel)、频道密
Server实现,对用户是透明的,用户 绝大多数IRC Bot都将自身设置为不 码(如有) 0 (3)控制密码、编码规则和
只需选择这个IRC服务器, 可见 g 日ost: 控制者发送密码到频道中,用
加入喜欢的频道即可。 (5)PING和PONG: 维持与IRC服 于标识身份,常以 .login pass的形
1 R C 服务默认的端口是TCP 务器的连接,当IRC客户端一段时间 式出现 s 编码规则和是否启用host
6667,通常也可以在6000-7000端口 未"发言"时,服务器向客户端发送 认i正是Bot程序实现的,不体现在网
范围之内选择,也可以配置为任何合 PING命令,客户端回应PONG命令, 络通信中。 (4)B ot支持的命令集:
法端口。许多IRC Bot为了逃避常规 参数与PING的参数相同,表示客户 主要是认证、升级和自删除类的命
的检查,选择443 、 8000、 500等自定 端处于存活状态 s 正常的IRC用户经 令,如login、 .update 、 .download、
义端口。 常处于聊天状态,而IRC Bot除非接 . uninstall等。
用户可在IRC服务器上建立、选 收到控制者命令或者汇报自身状态, 获得了Botnet的基础特'性后,有
择和加入感兴趣的频道,一个用户可 否则都处于空闲状态,这时不断与服 多种方法可以反控制僵尸网络,每种
以将消息发送给频道内的所有其他用 务器发送PING/PONG命令来维持连 方法的复杂度和效果各不相同。
户,也可以秘密地发送给单个用户。 接,这也是IRC Bot的一一个特ñf; (1)模拟控制者,对僵尸网络进行
频道管理员可以设置频道模式, (6)PRIVMSG #Channel 完全控制
比如,需要密码才能加入频道、设置 msg: 向一个频道或用户发送消息, 前提是已经掌握了上面提到的僵
频道为隐藏模式(使频道对普通权限 控制者或Bot都利用该命令互相通信, 尸网络的基础信息。模拟控制者通过
用户不可见) ,等等。 控制者几乎总是向频道而不是单个用 认证后,可以发送各种Bot支持的命
IRC 80t 的实现 户发送消息(控制命令) ; 令:
IRC Bot实际上是一个定制 (7)DCC SEND: 传送文件。 Bot 1)发送更新命令
的 IR C客户端,它与供用户正常 用该命令作为继续扩散的方法之一。 可以使Botr载并运行自身的专
使用IRC服务的客户端(如HIRC 、 利用僵尸网络的行为特征 杀工具,当然,需架设网站或文件服
mIRC) 的不同之处是(1)IRC Bot (1)'快速加入型Bot 务器等作为存放专杀工具的载体 g 也
只需支持部分IRC命令 (2)IRC Bot 这类Bot通常利用蠕虫传播,一 可以修改控制密码或更新Bot,从而
会将收到的消息作为命令解释执行, 且在受害主机上运行,就按预定义的 接管整个僵尸网络。
而正常客户端却将这也消息作为聊天 参数连接IRC服务器、加入指定的频 2) 自删除命令
内容显示在屏幕上。 道接受指令。短期内大量IRC客户端 使Bot删除自身。这种方法只有
因为IRC Bot需要实现的IRC命 加入同一服务器的同一频道是可疑的。 在发现僵尸网络正在从事恶意活动时
令很少,现在的IRC Bot 通常是独立 (2)长期连接型Bot 才有价值,否则,单纯地删除Bot后,
的客户端,一般至少需要实现以下 正常用户很少长期停留在一个 这种有漏洞的系统很快会被其他恶意
IRC命令: 频道中,而Bot只有在接受"退出"、 代码感染。事实上,含有一种Bot的
(1)NICK和USER: 设置昵称和 "休眠"、 "自杀"等命令才会退出。 主机通常同时含有多种其他Bot。
用户名,昵称在Bot登录的IRC网络 (3)发呆型Bot (2)切断用户主机和控制服务器的
内必须惟→, Bot与正常用户另一个不同之处 联系,使僵尸网络失去控制
(2)PASS: IRC服务器可以配置 是Bot很少"说话经常"发呆 网管可以在本网的网关处或者安
为需要连接口令, PASS命令在TCP 靠pÌng/pong命令来维持连接。 全设备上切断本网用户和控制服务器
二次握手后立刻j发送 g 解除僵尸网络 的联系,使本网内的用户不受僵尸网
(3)JOIN # Channel key: 加入 要反控制一个僵尸网络,首先要 络的控制。
一个频道, key为频道密码,可选 t 掌握的基本信息包括以下几点: (I) 控制的方式,可以通过IP或者僵
僵尸网络为保证自身安全,常常设置 控制服务器信息:域名或IP、端口 尸网络所使用的域名。如果对域名的
注册机构拥有司法方面的管辖权,还
可以在依照正当的法律程序将其使用
的域名取消。如果控制服务器在本国
境内,则更可以依照法律程序关闭僵
尸网络的控制服务器。不过,这种方
法通常需要安全组织和网管甚至司法
部门的配合。另外,与控制服务器失
去联系的BOt如果处于执行命令的阶
段,仍然可以继续执行预置的命令。
(3)清除主机上的Bot程序
寻找、定位被植入僵尸程序的计
算机,让这些计算机的用户使用专用
软件清除本机的僵尸程序并作安全升
级 。这 是一项庞大 的工 作而且 有很
多困难。2005年,CNCERT/CC发现
十万多台计算机被僵尸网络控制,但
是没有渠道和这些计算机的用户联系,
也不能直接将这些信息公布出来 (会
给用户带来更大风险),因此只能通
过合作渠道对部分网络的用户进行了
通报。另外 ,清除主机上的BOt程序,
不但规模太大且效率低下 ,而且也属
于冶标不治本的方法 ,因为攻击者同
时也在继续扩张,使新的计算机加入
僵尸网络。
4 P2P僵尸网络
攻击者通 常使 用中心 架构 ,利
用高性 能的服 务器作为C&C服 务器 ,
实现攻击者与僵尸计算机的通讯 ,以
发起攻击。与僵尸网络斗争就是要找
到他们的弱点:C&ClE务器。
目前 的僵尸网络 的控制 方式 已
经从传统的I R C方式扩展到P2P方式,
但是在P2P技术中,控制中心无处可
寻。P2P僵尸网络利用P2P协议 实现
传播和控制。主机之 间相互通讯,攻
击者作l为对等主机中的任 一台,只要
就 可以实现攻击。
测方法阻止这样
危险的网络。
在过 去的 几年 中 ,Sl aPP e r,
Sinit,Phatbot和Nugache采用不同
的先进设计 ,分别完成 了P2P的不同
实现。
4.1传播
P2P技术利用P2P网络传播 自身。
在P2P网络中文件共享是非常普及的 ,
用户之间存在大量的文件下载。一些
BOt将 自己命名为流行的文件 ,用户
将B Ot程序误认为是正常的程序下载
了。
大多P2P Bot是这种类型的,所
以病毒厂商将它们命名为P2P类型 ,
~IP2P-Worm.Win32.SpyBot.fb。
虽然这类B0t利用P2P进行传播 ,但
还是连接到IR Clt务器。可以通过截
获数据包分析处理。
4.2控制
另一类P2P B Ot采用P2P技术发
送控制命令。控制者作为Peer~l入到
网络 中发送命令 ,就可以控制整 个
B Ot网络了。根据P2P协议 的实现 方
式 ,可以将P2P Bot分为两类:
(1)私有的P2P网络
大 多B Ot仅使用P2P网络实现通
讯。这意味着BOt使用私有的协议进
行通讯。例~IPhatbot采用W ASTE
代 码实现P2P通 讯 ,Nug ache和
SpamThru采用 自己的协议进行通讯 。
(2)开放的P2P网络
一 些Bot 利用现有的P2P网络,
利用内嵌的聊天 系统。B Ot间的通信
完全淹没在正常的P2P通讯中,这使
得要检测出非常困难。
虽然现在还没有很多B Ot使用这
种技术,但是分布式网络巨大的优势
将使Bot拥有者加速P2P技术的普及。
4,3 Bot分析
以Phatbot为例,对P2P Bot进
行分析。
Phatbot采用WASTE技术进行
通讯 。它是 一种加密的P2P网络,开
放源代码。 与其他BOt、W O Fm不同
之处是PhatbOt采用P2P协议作为主
要的控制方式。因为P2P协议还没有
国际通用的标准 ,所以要使用P2P协
议就需要 自己实现 或者借用开源软
件。Phatbot使用了WASTE (A0L
实现的P2P开 源软 件 ,用于传递秘
密 消息 和 文 件 )的 代 码 。 有趣 的
是,Phatbot放弃了WASTE已有的
加密功 能 ,可能 的原 因是实现一套
密钥体系需要人为因素。Phatbot冒
充W ASTE体系下的合法客户端软件,
发现其他Phatbot,从而进行通信。如
果能够破译Phatbot的通信密码 ,就
可以控制整个Phatbot网络,密码采
用MD5算法加密后存放在Phatbot文
件体内。
Phatbot通过Gnutella P2P网络
感染主机,发现对等主机。Gnutella
是一份关 于发布检索的协议。虽
然Gnut el1 al#议也 支持传统 的客
户端/中心服 务器 的检索规 范 ,但
Gnutella协议更主要是支持点对点的,
没有中心的检索 。在这个模型中,所
有的客户端也是一个服务器,同样反
之亦然。这些所谓的Gnutella客户机
正常情况下执行联系服务器和客户端
的任务。他们提供客户端的接口使用
户可以发出查询请求和看检索结果。
同时他们也接收来自其他客户机的请
求 ,检查他们自己的数据中匹配的部
分,返回可用的结果。因为具有天然
的分布性,一个执行Gnutella协议的
网络是具有高度容错的,比如当部
分客户机离线,网络服务不会被中断。
Phatbot冒充Gnutella的客户端 ,但
使用了不同的端 口。
维普资讯
注册机构拥有司法方面的管辖权,还
可以在依照正当的法律程序将其使用
的域名取消。如果控制服务器在本国
境内,则更可以依照法律程序关闭僵
尸网络的控制服务器。不过,这种方
法通常需要安全组织和网营甚至司法
部门的配合。另外,与控制服务器失
去联系的Bot如果处于执行命令的阶
段,仍然可以继续执行预置的命令。
(3)清除主机上的Bot程序
寻找、'Ë位被植入僵尸程序的计
算机,让这些计算机的用户使用专用
软件清除本机的僵尸程序并作安全升
级。这是一项庞大的工作而且有很
多困难。 2005年, CNCERT/CC发现
十万多台计算机被僵尸网络控制,但
是没有渠道和这些计算机的用户联系,
也不能直接将这些信息公布出来(会
给用户带来更大风险) ,因此只能通
过合作渠道对部分网络的用户进行了
通报。另外,清除主机七的Bot程序,
不但规模太大且效率低下,而且也属
于治标不治本的污法,因为攻击者同
时也在继续扩张.使新的计算机加入
僵尸网络。
4 P2P僵P网络
攻击者通常使用中心架构,利
用高性能的服务器作为C&C服务器,
实现攻击者与僵尸计算机的通讯,以
发起攻击。与僵尸网络斗争就是要找
到他们的弱点 C&C服务器。
目前的僵尸网络的控制方式已
经从传统的IRC方式扩展到P2P方式,
但是在P2P技术中,控制中心无处可
寻。 P2P僵尸网络利用P2P协议实现
传播和控制。主机之间相互通讯,攻
击者作为对等主机中的任 4台,只要
将命令在网络中广播就可以实现攻击。
因此需要一个新的检测方法阻止这样
危险的网络。
在过去的几年中, Slapper ,
Sinit , Phatbot 和Nugache采用不同
的先进设计,分别完成了P2P的不同
实现。
传播
P2P技术利用P2P网络传播自身。
在P2P网络中文件共享是非常普及的,
用户之间存在大量的文件下载。一些
Bot将自己命名为流行的文件,用户
将Bot程序误认为是正常的程序下载
了。
大多P2P Bot是这种类型的,所
以病毒厂商将它们命名为P2P类型,
如P2P-Worm. . fb。
虽然这类Bot利用P2P进行传播,但
还是连接到IRC服务器。可以通过截
获数据包分析处理。
控制
另一类P2P Bot采用P2P技术发
送控制命令。控制者作为Peer加入到
网络中发送命令,就可以控制整个
Bot网络了。根据P2P协议的实现方
式,可以将P2P Bot分为两类:
(1)私有的P2P网络
大多Bot仅使用P2P网络实现通
讯。这意味着Bot使用私有的协议进
行通讯。例如Phatbot采用WASTE
代码实现P2P通讯, Nugache和
SpamThru采用自己的协议进行通讯。
(2)开放的P2P网络
一些Bot 利用现有的P2P网络,
利用内嵌的聊天系统。 Bot间的通信
完全淹没在正常的P2P通讯中,这使
得要检测出非常困难。
虽然现在还没有很多Bot使用这
种技术,但是分布式网络巨大的优势
将使Bot拥有者加速P2P技术的普及。
Bot 分析
以Phatbot为例,对P2P Bot进
行分析。
Phatbot采用WASTE技术进行
通讯。它是一种加密的P2P网络,开
放源代码。与其他Bot 、 Worm不同
之处是Phatbot采用P2P协议作为主
要的控制方式。因为P2P协议还没有
国际通用的标准,所以要使用P2P协
议就需要臼己实现或者借用开源软
件。 Phatbot使用了WASTE (AOL
实现的P2P开源软件,用于传递秘
密消息和文件)的代码。有趣的
是, Phatbot放弃了WASTE已有的
加密功能,可能的原因是实现一套
密钥体系需要人为因素。 Phatbot冒
充WASTE体系下的合法客户端软件,
发现其他Phatbot,从而进行通信。如
果能够破译Phatbot的通信密码,就
可以控制整个Phatbot网络,密码采
用MD5算法加密后存放在Phatbot文
件体内。
Phatbot通过Gnutella P2P网络
感染主机,发现对等主机。 Gnutella
是一份关于发布检索的协议。虽
然Gnutella协议也支持传统的客
户端/中心服务器的检索规范,但
Gnutella协议更主要是支持点对点的,
没有中心的检索。在这个模型中,所
有的客户端也是一个服务器,同样反
之亦然。这些所谓的Gnutella客户机
正常情况下执行联系服务器和客户端
的任务。他们提供客户端的接口使用
户可以发出查询请求和看检索结果。
同时他们也接收来自其他客户机的请
求,检查他们自己的数据中匹配的部
分,返回可用的结果。因为具有天然
的分布性,一个执行Gnutella协议的
网络是具有高度容错的,比如当部
分客户机离线,网络服务不会被中断。
Phatbot冒充Gnutella的客户端,f!l
使用了不同的端口。
i ll00 _◆0 000 、避 拣
4.4检测 决这个问题,但是对于僵尸网络显 僵尸网络。但是针对不同的Bot,除
通过对僵尸程序进行分析 ,发现 然不可行 ,因为SUpernode,fl/.容易 非找到Bot程序设计的缺陷 ,否则我
可以从以下几方面检测出僵尸网络。 受到攻击。捕获一 台supernode就会 们很难找到方法发现他们。这是今后
(1)开放端口 导致许多Pee r从网络中断开。进出 研究的方向。国
通常P2P网络技术中需要打开一 supernode的通讯过于密集会导致容
个或一个范围内的端口用于相互之间 易被发觉。 参考文献:
的通讯。网络中的用户都在监听某个 (3)发现peer [1]Phatbot trojan analysis.
特定的端IZl,这使得检测僵)aP2P僵 该与哪些主机建立连接是P2P技 Http://www.Iurhq.com/phatbot.htm1.
尸程序成为可能。通过监测这些端 IZl 术的一个问题。Nugache使用了一个 Ph tb。 。J Iysi。· :
的网络数据,可以得出哪些主机被感 IP列表用于建立初始的连接。对于僵 。:// ·‘ q.com/p 曲。 .htm1.
染了,并获得僵尸网络拓扑图。当然, 尸网络并不是一个明智的选择,因为 w ’ :
如果僵尸程序与别的应用程序共用一 这样容易被监控,并被掌握整个僵尸 讹 :// 。 。。 rce 。噌。·呲/’
个端口,就想办法将正常的应用数据 网络。通过检测,会发现通讯中的许 [ ] · roject,¨ K 。 y。“ 。 。 y:
剔除出去。 多可疑报文。虽然这个寻找连接peer
. . , , .
’ ’
, ,
(2)连接失败 的方式非常有效,但将来的Bot并不 [5]
Bot s。ftw a re l。。k s t。 im p r。v e
Bot程序初始运行时会有较高概 会采用这种方法。 peer
age.secu rityF。cus. 2 OO6.
率 的连 接失败 ,~ P2PN络的通 htt p
://www.s e cu rityf o c u s.com/
病。由于防火墙,NAT或对等主机 5结束语 news/1】sgo/
.
的P2P程序没有运行,都会导致网 本文在对僵尸网络进行分析和研
络连接错误。这会导致许多IcMP 究的基础上,详细阐述了IRc僵尸网 作者简介 :蔡慧梅
,
女,江南计算机研 j
“destination unreachable”和TCP 络的实现、行为特征和具体的解除方 究所工程师,研究方向:信息安全。 j
重置报文。P2P文件共享网络采用 法。对于P2P类型僵尸网络,指出了 收稿日期 :2007一】2--1 2
一 台专门的主机 (supernode)来解 通用的检测方法,有助于查找和控制 l
解密运算,计算量较大,
,
,
在选 二三 :[究.计算机应 C 蒜NN- DDoS
.
T ra nsacti
,
o n s o n
,
I nform a
,
tio
:
n
System Security 2002 5 2 取取模的质数时,不同的质数有效地 用,2oo7.】. and , , (): 蘩
选取是否会对路径恢复结果误差造成 [4]顾晓清.Dos攻击及其追踪方案研 1 1 9—1 57. 攀
要分
q
的问题。固
l一 一 r t 『1.
。
i : i An, : a uthentica te d. ma rking em。。 。: IPTechni tle aga n s Denia 0f Se vi Ce raceback A Proceed ngs of Twen eth
0 蔷
维普资讯
检测
通过对僵尸程序进行分析,发现
可以从以下几方面检测出僵尸网络。
(1)开放端口
通常P2P网络技术中需要打开→
个或一个施围内的端口用于相互之间
的通讯。网络中的用户都在监听某个
特定的端口,这使得检测僵尸P2P僵
尸程序成为可能。通过监测这些端口
的网络数据,可以得出哪些主机被感
染了,并获得僵尸网络拓扑圈。当然,
如果僵尸程序与别的应用程序共用一
个端口,就想办法将正常的应用数据
剔除出去。
(2)连接失败
Bot程序初始运行时会有较高概
率的连接失败,这是P2P网络的通
病。由于防火墙, NAT或对等主机
的P2P程序没有运行,都会导致网
决这个问题,但是对于僵尸网络显
然不可行,因为supernode很容易
受到攻击。捕获一台supernode就会
导致许多peer从网络中断开。进出
supernode的通讯过于密集会导致容
易被发觉。
(3)发现peer
该与哪些主机建立连接是P2P技
术的一个问题。 Nugache使用了一个
IP列表用于建立初始的连接。对于僵
尸网络并不是一个明智的选择,因为
这样容易被监控,并被掌握整个僵尸
网络。通过检测,会发现通讯中的许
多可疑报文。虽然这个寻找连接peer
的方式非常有效,但将来的Bot并不
会采用这种方法。
5 结束语
本文在对僵尸网络进行分析和研
僵尸网络。但是针对不同的Bot,除
非找到rjBot程序设计的缺陆,否则我
们很难找到方法发现他们。这是今后
研究的方向。每部
参考文献:
[1] Pha tbot trojan analysis.
[2]Phatbot trojan analysis.
[3] WASTE.
[4] H. Project , "Know your enemy:
botnets , " 2005 ,
http://www . honeynet. org/papers/bots/
[5] Bot software loo k. s to improve
peerage. Securityfocus , 2006
news/J J 390/
络连接错误。这会导致许多ICMP 究的基础上,详细阐述了IRC僵尸网 作者简介 t 蔡慧梅,女,江南计算机研
"destina tion unreacha ble "和TCP 络的实现、行为特征和具体的解除方 究所工程师,研究方向.信息安全。
重置报文。 P2P文件共享网络采用 法。对于P2P类型僵尸网络,指出了 收稿日期 :2007一 J 2一 12
一台专门的主机 (supernode) 来解 通用的检测方法,有助于查找和控制
(上接23页)
解密运算,计算量较大,同时,在选
取取模的质数时,不同的质数有效地
选取是否会对路径恢复结果误差造成
波动性的影响,都是在今后的研究中
要分析的问题。@
参考文献:
川徐恪,吴建平等.高等计算机网
络一体系结构、协议机制、算法设
计与路由器技术.机械工业出版社,
. 447-453
[2] 张健,陈乔等.一种通用的大规
模 DDoS 攻击源追踪方案研究 小型微
型计算机系统,.
[3] 胡志刚,戴诏等,基于认证的反
射 DDoS 源追踪新方案研究.计算机应
用, 2007. J .
[4] 顾晓清. DOS 攻击及其追踪方案研
究(学位论文 )..
[51 Chen Z , Leemc. An IP Tracebac k.
[J]. ACM Transactions on Information
and System Security , 2002 , 5 (2)
门 9-137
[8] Song D , Perr Ig A. Advanced and
authentica ted mar k. ing schemes for IP
Technique against Denial-of-Service tracebac k. [A]. Proceedings of Twentieth
Attac [A]. Proceedings of 19 the Annual Joint Conference of the IEEE
Annual Computer Security Application 臼mputer and Communications Societies[C].
Conference (ACSAC p03) [C]. 2003. 96
114.
[6] Krawczyk. H, Bellarem , Canettir. HMAC:
Keyed-Hashing for Message Authentica tion
[S]. RfC 2104 , 1997.
[7] Dean D, fran IN M, Stubblef leld
A. An Algebraic Approach to IP Traceback.
2001.
作者简介:余鹏 (1983一),男,硕士
研究生, 研究方向.计算机网络与网
络安全;杨木清 (1949←) ,男,教授,
研究生导师, 研究方向:计算机网络。
收稿日期 2007一 10-29