基于webshell的僵尸网络研究-李可.pdf





《基于webshell的僵尸网络研究-李可.pdf》由会员分享,可在线阅读,更多相关《基于webshell的僵尸网络研究-李可.pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第37卷第6期2016年6月通信学报Journal on Commtmications、,0137 NO6June 2016doi:1011959jissn1000-436x2016118基于Webshell的僵尸网络研究李可】,2,方滨兴1,崔翔12,刘奇旭2,严志涛2(1北京邮电大学计算机学院,北京100876:2中国科学院信息工程研究所,北京100093)摘要:以Web服务器为控制目标的僵尸网络逐渐兴起,传统命令控制信道模型无法准确预测该类威胁。对传统Webshell控制方式进行改进,提出一种树状拓扑结构的信道模型。该模型具备普适和隐蔽特性,实验证明其命令传递快速可靠。总结传统防御手段在
2、对抗该模型时的局限性,分析该信道的固有脆弱性,提出可行的防御手段。关键词:僵尸网络;命令与控制;信道预测;Webshell中图分类号:TP3095 文献标识码:AResearch on Webshellbased botnetLI KeL2,FANG Binxin91,CUI Xian91,LIU QiXU2,YAN Zhita02(1School ofComputer,Beijing University ofPosts and Telecommunications,Beijing 100876,China;2Institute ofInformation Engineering,Chine
3、seAcademy ofSciences,Beijing 100093,China)Abstract:、itll the rapid fismg of Web server-based botnetstraditional channel models were unable to predict threesfrom themBased on improving traditional Webshell control methoda command and control charmel modeI based ontree structure was proposed111e model
4、 was widely applicable and stealthy and the simulation experimental results show itcan acliieve rapid and reliable commands deliveryAftcr summarizing the limitations of current defenses against the pro-posed model,the models inherem vulnerabilities is analyzed and feasible defense strategies are put
5、 forwardKey words:botnet,command and control,channel prediction,Webshell1引言僵尸网络(botnet)是指通过入侵网络空间内若干非合作用户终端构建的、可被攻击者远程控制的通用计算平台。其中,被感染的用户终端称之为僵尸主机(bot);攻击者指掌握僵尸主机资源,对其具有操控权力的控制者(botmaster);远程控制指攻击者通过命令与控制(C&C,command andcontr01)信道对僵尸主机进行一对多的操控。通过僵尸网络所掌握的大量计算及信息资源,攻击者可发起分布式拒绝服务攻击(DDoS,distributed den
6、ialofservice)、垃圾邮件(spare)、恶意软件分发、点击欺诈(click fraud)以及比特币网络攻击等恶意活动【2,3J,给互联网安全构成严重威胁。僵尸网络的发展经历了3个阶段:早期僵尸网络以个人计算机PC为感染目标;随着智能手机的普及和通信技术的发展,移动僵尸网络逐渐成为了工业和学术研究的新方向。而如今,在PC和手机终端防护日趋完善,僵尸主机生存面临瓶颈的背景下,攻击者将目光投向了互联网中大量开放且脆马马的w曲服务器【4J,根据NETCRAFT网站2015年11月发布的报告【5J显示,全球面向Web服务的主机数达553万台,Web站点数量超过9亿个。赛门铁克(Symante
7、c)互联网安全威胁研究报剖6J显示,2014年全球网站中有76存在安全漏洞,其中的20存在高危漏洞。随着CGIPHP(CVE一2012一1823)、Structs2(CVE 2013225I)、“破壳”(CVE20146271)等重量级漏洞的频繁曝收稿日期:20151215;修回日期:20160308基金项目:国家自然科学基金资助项目(No61303239);国家高技术研究发展计划(“863”计划)基金资助项目(No2012AA012902)Foundation Items:The National Natural Science Foundation of China(No6 1 30323
8、9),The National High Technology Research andDevelopment Program(863 Program)fNo2012AA012902)万方数据通信学报 第37卷出,诸如Wopbot、TSUNAMI、BoSSaBoTv2等【弗J以Web服务器为攻击对象的僵尸网络案例不断出现,网站的服务及数据安全面临着严峻的挑战。在Web服务器僵尸网络的研究方向上,学术界尚未出现针对该应用背景的攻防研究。此外,工业界案例普遍存在感染过程复杂、依赖管理员系统权限、通信信道脆弱的缺陷,难以广泛实现和长期生存。这些已有案例未能针对Web服务的特性和对抗环境进行演化,该类
9、型的僵尸网络预测尚存在研究的空间。基于以上事实,利用Webshell构建普适和隐蔽的僵尸网络是一种新思路。如表l所示,同PC和移动僵尸网络相比,Webshell僵尸网络在终端防护、权限要求和数据资源上存在差异,可利用Web应用或服务漏洞自动化感染网络中大量脆弱目标。此外,由于Webshell无法主动持续化运行、依靠外界请求执行功能代码,其命令下需采用主动推送的方式传递(如图l和图2所示)。上述因素导致了传统中心结构和P2P结构僵尸网络模型无法应用于Webshell管控。然而,已知的Webshell的控制方法在面向大规模场景下存在单点性能瓶颈,各感染节点协同工作能力较差,因此,需要提出一种更加高
10、效和健壮的模型来预测此类僵尸网络威胁。控制者命令控制服务器僵尸主机p心结构僵尸网络 P2P结构僵尸网络基于以上事实,本文提出一种基于树状层次化结构的Webshell僵尸网络。该僵尸网络不依赖固脆弱的命令控制资源,引入主机信誉评估和动态加密机制,具有良好的健壮性和隐蔽性。仿真实验证明该僵尸网络的命令传递高效可靠,可管理大规模Webshell。同时针对该僵尸网络特点,本文提出了可行的防御方法。2相关工作幽2 Webshell管控拓扑为了应对未来新型僵尸网络的威胁,研究人员开展了大量僵尸网络信道模型的预测。其中,非中心结构的僵尸网络具有较好的抗毁能力,成为了研究人员关注的重点。Wang等【9J提出了
11、一种新的混合型P2P僵尸网络命令控制信道,该信道采用层次化结构,其初始化(bootstrap)过程不依赖硬编码的节点名单(peer list)或特定域名资源,消除了单点失效,信道的命令传输过程采用非对称密钥加密,难以被防御人员监控和劫持,该方法可以实现负载均衡,具有较好的抗毁能力,可管理大规模僵尸网络。Stamberger等Il uJ提出了一种基于Kademlia协议的僵尸网络命令控制信道协议Overbot, 僵尸主机的请求流量隐藏在合法P2P应用中,难以被追踪和发现,极大提升了僵尸网络整体健壮性和隐蔽性。Hund掣提出了一种难以被追踪和关闭的P2P僵尸网络Rambot,该模型采用基于信誉评分
12、的僵尸主机验证机制(credit-point system)以及工作量证明机制(proof-of-work)判断通信节点身份的真实性,能有效对抗节点名单污染以及“女巫”(sybil)攻击【l 21,具有较好的主机生存性。表1 PC僵尸网络、移动僵尸网络与Webshell僵尸网络对比万方数据第6期 李可等:基于WebsheU的僵尸网络研究 13虽然P2P僵尸网络具有良好的健壮性,然而其最大的局限性在于难以管理,因此,一些研究人员尝试对中心结构僵尸网络进行改进,通常采用第三方协议和应用充当通信载体和媒介,以此增强僵尸网络的隐蔽性和健壮性。Singh等ll列评估了利用Email实现僵尸网络通信的可行
13、性。Xu等【14】研究了利用DNS来构建隐蔽的命令控制信道的可行性。Xiang等【l 5J利用W曲20服务提出了一种基于URL Flux技术的移动僵尸网络,该方法具有良好的隐蔽性和韧性,运用在智能手机场景中能满足低能耗和低资费需求。Lee等【l 6J提出了一种AliasFlux协议的信道模型,该模型通过恶意利用缩址服务和搜索引擎,实现了隐蔽的命令控制活动。不同于上述已有工作,本文在对传统Webshell改进的基础上,提出一种针对Web服务器的轻量级僵尸网络Webot,该僵尸网络基于HTTP协议,不依赖系统权限和第三方应用,具有普适特性;使用主动推送模式下发命令,不依赖脆弱信道资源,较传统信道模
14、型更适用于Web服务器管控场景。3信道设计与实现31 Webshell管控模式改进传统Webshell侧重于单点控制,攻击者往往开发私有脚本工具对Webshell进行单点批量化管理。然而,该模式本质上是简单且脆弱的,在面向大规模管控时并发能力有限,命令下发耗时较长,难以满足实时协同任务的需求。为了满足大规模场景下高效的命令传递和灵活管控,本文对传统Webshell的访问连接及代码结构进行了如下改进。1)在访问连接方面,以PHP格式的Webshell为例,命令传递过程采用无连接思想,即控制者将命令发送给当前僵尸主机后,不等待其执行返回继续执行后续命令下发,ignore )函数能保userabor
15、t(证连接断开后僵尸程序仍可继续正确执行,该方法极大缩短空闲等待时间,允许攻击者实现命令快速传递。2)在代码结构方面,传统的Webshell主要分为简单Webshell和功能Webshell 2种形式。定义1简单Webshelh俗称“小马”,指仅提供基本命令执行功能的Webshell,代码结构简单。定义2功能Webshelh俗称“大马”,指包含完整木马功能的Webshell,代码结构复杂,功能多样。简单Webshell形如,不包含复杂功能代码,命令执行时需动态上传完整执行代码,体积较小,常用于上传功能Webshell;而功能Webshell通常将所有的功能代码整合到Webshell文件中,命令
16、执行时无需上传执行代码,但存在文件体积较大、易遭遇上传拦截和静态查杀的弊端。本文采用的Webshell选取了二者的平衡点,提供基本命令运行及协议实现所需的逻辑功能,不包含具体功能(如DDoS、扫描等)代码,使僵尸程序在支持复杂控制逻辑、具备良好功能扩展性的同时,仍具有较高的渗透成功率和较好的终端生存性。32信道拓扑结构为了消除命令下发单点瓶颈,实现快速、健壮、隐蔽的信息传递,本文设计实现了一种层次化树状拓扑结构的信道模型,该模型自项向下并发传递命令,其中,WebsheU统一称为僵尸主机,进一步按职能又可划分为超级僵尸主机和普通僵尸主机,两者定义如下。定义3超级僵尸主机:通过信誉评估方法筛选出稳
17、定可信的僵尸主机,该类主机在命令的传递过程中承担命令转发职能,既充当服务端又充当客户端。定义4普通僵尸主机:不可信或不稳定的僵尸主机,在命令传递过程中只等待接收攻击者指令,不承担转发功能,只充当客户端。如图3所示,控制者通过跳板网络【2J将命令传递给超级僵尸主机,超级僵尸主机将接收到的命令消息彼此独立、并发地转发给后续子节点,逐层传递,直到命令传达到所有叶子节点(即普通僵尸主机)为止。图3 Webot僵尸网络拓扑结构级僵尸主机普通僵尸主机万方数据通信学报 第37卷33僵尸主机信誉评估在Webot设计中,为消除不稳定或不可信主机(如Sybil节点)对僵尸网络命令控制活动的影响,本文采用信誉评估(
18、reputation evaluation)的方法来对僵尸主机进行筛选,选取可信可靠的主机充当超级僵尸主机,而余下的则为普通僵尸主机,信誉评估标准包括如下内容。1)在线时间L控制者通过Call Home命令对僵尸主机的在线情况进行统计,在线时间越长,认为该主机更稳定可靠。2)网站排名R。假定防御人员部署的Sybil节点通常不具备高权重和高排名属性,基于白名单思想,控制者可借助Alexa排名识别部分高权重的主机,该类僵尸主机通常被认为是可信的。3)工作量证明尸。基于Sybil节点不会对真实互联网发动大量恶意攻击的假设,执行大量恶意攻击的僵尸主机将拥有更多的工作量证明,其可信度越高,控制者通过僵尸
19、主机对自主建立的感知节点进行低速攻击(如DDoS)来评估工作量。综合上述3个因素,单台僵尸主机的信誉值形的判定如下K=wr王+wR足+雌P (1)其中,Wr、WR、Wp分别代表上述各对应因素的判断权重,当所高于预设阈值艿时认为该僵尸主机可充当超级僵尸主机,K越高,所在的层数越小;反之,K低于阈值6的僵尸主机被判定为普通僵尸主机。34僵尸主机状态转移设计每个感染主机均处于等待或活跃2类状态:当空闲时,主机处于等待状态,等候外部来自控制者或其父节点的命令;相应地,主机从接收命令开始到执行代码完毕,整个过程称为活跃状态,具体又可分为接受命令、解析命令、攻击、转发、更新5个子状态。如图4所示,默认超级
20、僵尸主机处于等待状态,一旦获得外部命令后开始执行解密和分析操作。认证无误后,超级僵尸主机开始执行命令,包括转发、攻击和更新3种操作状态:转发操作指超级僵尸主机根据解析的命令内容,将指定的命令转发给选定的子节点;攻击指执行既定的攻击功能(在第45节具体介绍);更新操作指下载最新功能插件或更新自身文件。命令执行完毕后,主机回归等待状态,等待接受下一次命令。图4超级僵尸主机状态转移如图5所示,普通僵尸主机与超级僵尸主机状态转移过程大致相同,不同之处在于,普通僵尸主机只具备攻击和更新2种操作状态,不具备转发状态。图5普通僵尸主机状态转移35命令控制协议实现为隐藏C&C服务器的真实身份、实现匿名的信息传
21、递,Webot基于hidden service服务,将C&C服务器架设在匿名网络Tot中117】,防御人员难以定位其真实IP。此外,基于可信的云主机或VPS资源,利用第三方代理软件(如Tor2web),Webot在Tor网络的边界搭建代理节点(如图6所示),使公网中的僵尸主机无需安装额外组件即可访问Tor网络中的C&C服务器。在协议实现过程中,为了保护通信安全,防止信道劫持,Webot结合对称加密RC4和非对称加密RSA 2种方式对命令来源进行鉴别。同时采用动态加密思想,即单个主机单次通信密钥动态变换机制,对僵尸主机请求C&C服务器过程进行加密认证。表2和表3分别描述了协议实现中有关参数及各实
22、体所掌握资源情况。万方数据第6期 李可等:基于Webshell的僵尸网络研究表2 相关参数说明 如图6所示,Webot命令控制协议实现步骤参数 说明 如下。通知命令,告知节点请求获取功能或转发命令功能命令,包括DDoS、扫描、垃圾邮件发送、文件回传、CallHome、更新等转发命令,包括转发目标u及对应的通知命令CkWebot僵尸主机URL列表代理节点地址RSA加密算法DES加密算法RSA加密算法公钥RSA加密算法私钥Bot ID。标识唯一的僵尸主机时间窗,包括开始时间和结束时间一次性会话密钥表3 各实体所掌握资源角色 所掌握资源控制者Private_KeycER_KeyiCFC&C服务器UC
23、kvL,g_KeyiCrE1Di僵尸主机Public KeyEIDi代理节点 无控制者 跳板网络萋超级僵主机点1)控制者事先生成R Key集合,利用Private 对通知命令C加密得到 ,然后连KeyE(CN)同待下发的功能命令CF一同部署在C&C服务器中。2)控制者通过跳板网络将E(CN)发送给初始的超级僵尸主机,以鳓=鼠佩蚶,R_rey,研,其中,氓锄盯为代理节点的地址;R Key表示当前僵尸主机当次通信所使用的临时密钥,简称一次性会话密钥;r标识该命令的有效时间。3)超级僵尸主机接收到耳c)后利用硬编码的Pub比Key进行解密校验,校验无误后利用Rrey对自身硬编码的ID,进行加密,将E
24、加 发送Key给代理节点,代理节点将请求转发给位于Tor网络中的C&C服务器。4)C&C服务器在接收到请求后,对四f身份及RKey的有效性进行校验,校验通过则返回E(CkCF)R rey。5)超级僵尸主机对返回的命令E1(Ck Cr)R_Key进行解密,其中,印M,以,Ps黜甜,R Key,乃P,咖据硒,超级僵尸主机得到M后,向其中目标主机转发对应的通知指令E(CN),转发完毕执行功能指令CF。若后续子节点为超级僵尸主机,则执行上述类似操作;若为普通僵尸主机,则只接受并执行G,不进行转发。上述通信流程保证了只有合法僵尸主机才能知晓控制者指令,他人无法通过流量监听获取通信内容,保证了通信的机密性
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 webshell 僵尸 网络 研究

限制150内