该僵尸网络利用路由器、摄像头等设备的漏洞,将僵尸程序传播到互联网,感染并控制大批在线主机,从而形成具有规模的僵尸网络。Botnet的工作过程包括传播、加入和控制三个阶段。 一个Botnet首先需要的是具有一定规模的被控计算机,而这个规模是逐渐地随着采用某种或某几种传播手段的bot程序的扩散而形成的,在这个传播过程中有如下几种手段: (1) 主动攻击漏洞。其原理是通过攻击系统所存在的漏洞获得访问权,并在Shellcode 执行bot程序注入代码,将被攻击系统感染成为僵尸主机。属于此类的最基本的感染途径是攻击者手动地利用一系列 黑客工具和脚本进行攻击,获得权限后下载bot程序执行。攻击者还会将僵尸程序和 蠕虫技术进行结合,从而使bot程序能够进行自动传播,著名的bot样本AgoBot,就是实现了将bot程序的自动传播。 (2) 邮件病毒。bot程序还会通过发送大量的邮件病毒传播自身,通常表现为在邮件附件中携带僵尸程序以及在邮件内容中包含下载执行bot程序的链接,并通过一系列社会工程学的技巧诱使接收者执行附件或点击链接,或是通过利用 邮件客户端的漏洞自动执行,从而使得接收者主机被感染成为僵尸主机。 (3) 即时通信软件。利用即时通信软件向好友列表中的好友发送执行僵尸程序的链接,并通过社会工程学技巧诱骗其点击,从而进行感染,如2005年年初爆发的MSN性感鸡( Worm.MSNLoveme)采用的就是这种方式。 (4)恶意网站脚本。攻击者在提供Web服务的网站中在HTML页面上绑定 恶意的脚本,当访问者访问这些网站时就会执行 恶意脚本,使得bot程序下载到主机上,并被自动执行。 (5)特洛伊木马。伪装成有用的软件,在网站、FTP 服务器、P2P 网络中提供,诱骗用户下载并执行。 通过以上几种传播手段可以看出,在Botnet的形成中传播方式与 蠕虫和病毒以及功能复杂的间谍软件很相近。 在加入阶段,每一个被感染主机都会随着隐藏在自身上的bot程序的发作而加入到Botnet中去,加入的方式根 据控制方式和 通信协议的不同而有所不同。在基于IRC协议的Botnet中,感染bot程序的主机会登录到指定的 服务器和频道中去,在登录成功后,在频道中等待控制者发来的 恶意指令。图2为在实际的Botnet中看到的不断有新的bot加入到Botnet中的行为。 在控制阶段,攻击者通过中心服务器发送预先定义好的 控制指令,让被 感染主机执行恶意行为,如发起DDos攻击、窃取主机 敏感信息、更新升级恶意程序等。图3为观测到的在控制阶段向内网传播恶意程序的Botnet行为。Botnet根据分类标准的不同,可以有多许多种分类。