您的当前位置:首页正文

基于计算机网络对抗的研究与进展

来源:个人技术集锦
基于计算机网络对抗的僵尸网络研究与进展

摘要:阐述僵尸网络的研究状况,给出其基本定义、结构和实现过程。通过Agobot实例分析,提出将僵尸网络纳入计算机网络对抗体系之中的观点。基于计算机网络对抗理论抽象出整个僵尸网络的概念模型,对模型中功能的实现进行探讨。指出僵尸网络研究中存在的问题与进一步研究的建议。

关键词:网络安全;僵尸网络;僵尸工具;计算机网络对抗 引言

随着网络系统应用及复杂性的增加,僵尸网络成为网络系统安全的重要威胁。在网络环境下,多样化的传播途径和复杂的应用环境使僵尸网络迅速发展并趋于完善。僵尸网络成为计算机网络对抗研究的首要课题,它集中体现了近年来计算机网络威胁的新特征,预示着计算机网络威胁新的发展趋势。 1 国内外研究现状

僵尸网络在近年才开始被人们关注,其历史可以追溯到1993年,在IRC聊天网络中出现了bot程序——Eggdmp,它作为IRC聊天网络中的智能程序,能够自动执行防止频道被滥用、管理权限、记录频道事件等一系列功能,从而帮助用户更加方便地使用IRc聊天网络。随之,黑客也受到了这些良性bot工具的启发,开始编写恶意bot工具对大量的受害主机进行控制,利用它们的资源以达到恶意目标。20世纪90年代末,随着分布式拒绝服务攻击概念的成熟,出现了大量分布式拒绝服务攻击工具。攻击者通过这些工具掌握大量的bot主机,发动分布式拒绝服务攻击,而这些bot主机构成了bot网络的雏形。1999年在第8届DEFc0N年会上发布的subseven 2.1开始使用IRC协议构建攻击者对bot主机的控制信道,也成为第一个真正意义上的bot程序。之后,使用IRC协议的bot程序大规模出现,如GTBot、sd撕等,也使得IRcbot网络成为主流。2003年之后,黑客开始将bot程序与蠕虫的主动传播技术相结合,编写出能够快速构建大规模bot网络的工具。著名的有2004年爆发的Agobot、G∞bot和rBo∥spybot。而同年出现的Phatbot则在Agobot的基础上,开始使用P2P协议构建控制信道。由于bot网络对攻击者所带来的巨大价值,黑客界也在不断地对bot程序进行创新和发展,如使用加密控制信道、利用P2P网络进行传播,甚至使用完全的P2P网络作为控制信道等,这也使得对b毗网络的发现、跟踪和反制变得更加困难。 2.1 相关概念

信息对抗(IO)是侵袭敌方信息与信息系统,同时防御本方信息与信息系统所采取的行动。信息保障是确保信息与信息系统的可用性、完整性、机密性以及不可否认性而采取的保护和防御性信息对抗。计算机网络对抗(cN0)是信息对抗在计算机网络中的表现形式。美国国防都联合出版物关于网络对抗的相关定义如下:

定义l计算机网络对抗(cN0)是由攻击、防御和利用三部分共同组成的集合。

定义2计算机网络攻击(computer neWork anack,CNA)是指为达到预期目标或可能的效果,使用计算机硬件或软件,或通过计算机和计算机网络来操纵,以扰乱(dismpt)、阻止(deny)、削弱(degrade)或毁坏(destroy)计算机或计算机网络中的信息或者计算机和计算机网络本身的行动(operations,一系列操作)。

定义3 计算机网络防御(computer ne晰ork defen∞,CND)是指对内部的一些对象采取保护的措施,对来自利用(exploitation)计算机以及网络进行扰乱、阻止、削弱或破坏的情报的入侵采取防御的措施。

定义4 计算机网络利用(computer network唧loi诅tion,CNE)是指情报收集,以及使之能够从目标或敌方自动化信息系统、计算机或网络上获取数据的一系列支撑操作。cNE由两种活动组成:a)收集活动用来从目标计算机系统获取外部情报信息.b)支撑活动为收集外部

情报的用途而设计,使之能够获得或者易于访问目标计算机系统。

定义5僵尸网络是攻击者出于恶意目标,传播恶意程序,将大量主机感染成bot,并通过命令和控制信道进行远程控制的计算机的集合。 定义6僵尸工具是感染上恶意代码,构成了僵尸网络并且能执行僵尸网络远程控制者命令的个人计算机。 2.2典型结构

结合文献[7—10],基于IRc通信的Botnet的典型结构。

被安装在主机中的bot能够把自己拷贝到一个安装目录,并且修改系统配置,以便开机即能自动运行。攻击者首先通过加入exploit代码精心编写‰,这些bot模拟IRc客户端与IRc服务器进行通信;然后利用bot探测扫描目标网段,发现合适目标即执行控制者命令。 2.3实现过程

结合文献[10,11],给出了僵尸网络的实现过程。

a)利用exploit程序探测目标主机群中大量主机存在的漏洞,并通过exploit程序获得这些主机的管理员权限,成功之后在其系统中安装bot程序,感染这些主机,保证这些主机随时可访问。

b)Bot使用随机产生的nick枷e连接IRc ser佗r m印ping,尝试用已给的认证密码加入攻击者私有频道。

c)由IRc∞rver m印ping获取信息后,索取IRc服务器(也叫做IRC守护进程,是IRCd的缩写)提供频道的用户列表。

d)认证通过后允许bot加入到私人频道。 e)Bot开始监听频道,等待来自频道的主题。

f)攻击机器通过私有频道向bot发送主题,bot将主题解释为命令执行。 g)攻击目标机器,在目标机器上进行各种活动,如对其发起DDos攻击、监听明文数据、记录键盘、大规模身份窃取等。

由于所有的僵尸工具实现机制均通过HrITI'P或者FrP下载并执行文件,这使得僵尸网络被用于扩散新的僵尸工具变得非常容易。

3 目前流行的僵尸网络 3.1 A90bol系列

其特点是c++编程、模块化、使用址cap(一个包监听库)和Perl兼容正则表达式来监听和分类网络流量。A90bot可以使用NTFs altemate data s吮锄(ADS),并提供映像文件和进程隐藏的Rootkit能力在攻陷主机隐藏自己。早期的Ago.bot使用通信方式是集中式的IRc,后来的变体尤其是PhatI妣采用了分布式的P2P通信结构,这也是Bo协et的一个未来发展方向。

3.2 SDBot系列

其特点是c编程、简单易于实现,使用组件的方式,较快地加入新的特征和扫描技术。 3.3 KaitenQ8 Bots

其特点是替UNIX/Linll)【系统编写】。 3.4 GT-Bots

其特点是用mIRc脚本进行控制,增加了mIRc脚本能执行一些新功能,可以访问动态链接库中的扫描器,从而进一步扩散。 3.5 DSNX BOts

其特点是用c++编写并有一个很方便的插件接口;攻击者可以很容易地编写作为插件以扩展特性的扫描器和扩散器;同样,它也以GPL的方式发行;其默认版本并不附带扩散器。

但可以获取插件来克服这个问题,甚至可以得到如DDos攻击、端口扫描接口或隐式Hrl耶服务器的插件。 3.6 Sini

t其特点是真正的P2P,没有中央服务器,也没有seeds list(种子列表);所有通信和传输均数字签名,防止外来代码或讹误代码进入网络;通信时没有链路表,随机发送,直到与目标建立通信;自定义通信协议。

4 基于CNO的僵尸网络

4.1 CNO的僵尸网络概念模型

根据计算机网络对抗的理论,结合多种Botnet特征的分析结果,抽象出基于CN0的僵尸网络概念模型.

该模型的核心层是Botnet控制中心,具备指挥、控制、通信三部分功能,全面负责协调计算机网络攻击(cNA)、计算机网络防御(CND)、计算机网络利用(cNE)之间的关系。指挥在B0tnet中具体体现在显示命令信息和执行状态、搭建控制台、接收分析命令并触发执行;控制在Bot眦t中具体体现为更新、发送文件、主机状态控制、执行程序;通信在Bot呻t中具体体现为IRC、P2P、DNs、基于web、私秘频道。

在CNA、CND、CNE外围是对应的具体功能。CNA包含扰乱、阻止、削弱和毁坏;CND包含防卫和保护;cNE包含搜集和支撑。这些具体功能外围则是实现这些功能的插件,吼能随时调用、安装、卸载这些插件,具有灵活性。由于Ago晰结构优良、功能强大及源代码的泄露,本文以Agobot为实例,从CNA、CND、cNE三个方面的实现情况对模型进行分析。

4.2 CNA的实现

cNA由扰乱、削弱、阻止、损坏四个部分组成。Agobot只实现了其中的阻止一种功能,是通过分布式拒绝服务攻击(DDos)完成。舢robot使用DDos的目的是使目标中断或者完全拒绝对合法用户、网络、系统和其他资源的服务。

Agobot采用了五种DDos手段进行阻止活动,分别是:

a)H7rrP nood。也称为H1w’get flood,即向目标主机发送大量合法的HrI’IP get请求。该方式实现简单,在分布式条件下容易产生规模效应,以至于占用目标大量带宽,严重消耗目标资源。

b)PingFl00d。通过向目标发送lCMP报文实现。

c)SynFlood。利用了TCP基于连接的三次握手机制,伪造源IP,消耗目标资源。

d)Junon∞d。A利埘通过修改并嵌入j咖.c,实现了J咖of1∞d。Ju∞.c编译得到的程序是一个TCP s)rIl n00der,它能够仿效unux和windows以极快的速度创建包。

e)uDPFl00d。通过向目标发送大量面向无连接的uDP数据包。Sp00feduDP是改进的uDPn00d,通过向目标发送大量伪造源IP的UDP数据包,目标主机一旦发现没有相应的应用程序等待此uDP包时,就忙于向伪地址回复发送ICMP包。 4.3 CND的实现

Agobot实现了计算机网络对抗理论中CND的保护和防卫。

保护:a)Agobot实现RsA数据加密和签名.b)可选择地建立安全套接层;c)Agobot结合lRc通道实现用户的身份鉴别和访问授权。

防卫:a)Agobot以多态性完成用户、文件的伪装.b)能够关闭反病毒软件、防火墙及其更新,关闭部分端口,实现一定程度的反检查;c)可以在指定端口开启H’rrP、H1TrPs和socks代理服务;d)还能将指定的代P端口重定向到其他主机。 4.4 CNE的实现

计算机网络对抗理论中cNE包括使能活动、收集活动。

A90bot具体实现了使能活动中探测下的端口扫描以及收集活动中监听下的窃听网络流量和窃听击键。

1)使能活动 Agobot具备端口扫描功能,它对已知的四个微软漏洞进行扫描,为主动扩散做好准备。四个漏洞分别是remote pmcedure call(RPC)、distribubed c锄ponem object model(DCOM)缓冲区溢出漏洞、IIs5/wEBDAV缓冲区溢出漏洞、RPc ka衙漏洞。Agobot还可以利用自身携带的弱用户名和密码扫描NetBios,尝试获取经过授权的用户名和密码,便于利用网络共享传播。一旦扫描成功,Agobot就进行扩散。

2)收集活动 AgoJDot实现了窃听网络流量和注册表检测功能。其中注册表检测从注册表中获取多款游戏和软件的注册码。 4.5问题及发展趋势

就Botnet系统自身而言,其成功在于它同时集成了三个特征:远程受控功能;实现r不同命令的执行;可深度繁殖的扩散机制。这些是它区别于蠕虫和病毒之处。尽管Botnet系统凭借以上特性在计算机网络对抗实践中得到运用,然而现有Botnet系统用于计算机网络对抗还是不够的,缺少计算机网络对抗理论重要组成部分——情报。Botnet系统的CNA、CND、cNE功能也很不完善,无法满足计算机网络对抗的实际需要。 Botnet系统的进一步发展应着手于以下几个方面: a)进一步依照CNA中的划分丰富和完善各项功能。

b)建立全新的情报子系统,完成情报加工和分发,更好地为CNA和CND服务。

c)将要素做成可独立生产、获取和部署的,可以被组装到一个功能性系统中的可执行单元,即做成构件,将Botnet系统做成构件化软件。 d)使用基于DHT资源定位方式的P2P通信模式。

e)目前B0tnet的通信机制已从集中式模式,如IRc向P2P转换,但尚不成熟。主要表现在两个方面:首先,一些Bo协et使用的是混合性的P2P通信模式,如PIlatb眦,仍保留着中心服务器管理,从而集中式通信模型的弊端还没有完全解决;其次,一些Botnet使用纯P2P通信模式,如Sinit,但其搜索机制并不完善,大都使用广播式的资源定位方式。纯P2P模式分布式的方式采用分布式管理,基于DHT资源定位可以方便地实现内容的定位。 f)加入遗传和演化功能。理想的遗传表现为以下两个方面:(a)目前的Botnet系统是由手工将新的漏洞特征编写成代码,再编译执行,而笔者希望Botnet能结合b)提出的情报系统自动实现漏洞的发现到利用新漏洞完成攻击的过程;(b)目前Botnet系统中的Botnet工具都是一次编译而成,笔者希望今后的Bot∞t系统朝构件化软件方向发展。在扩散和进化过程中,bot工具先将主体和一些基本功能构件植入目标主机,随后利用基本功能构件收集环境信息。与其他bot工具协调工作,协调后自适应环境,增强相应功能构件,弱化甚至删除过时或不再使用的功能构件。

g)采用新技术和策略用于隐藏bot工具与控制者之间的通信通道。 h)完善bot工具本身的压缩加密技术,便于bot工具的传播和隐藏。

5 结束语

B0tnet以其飞速演变过程、日益庞大的规模、深远的破坏性成为国际关注的一个热点。以系统科学、计算机网络对抗等理论基础为依托,对Botnet加以合理的改进,不断完善其功能,使之能很好地融于计算机网络对抗体系之中,对于计算机网络对抗研究起到了促进作用。

因篇幅问题不能全部显示,请点此查看更多更全内容