一种隐蔽的Botnet命令控制信息传送方法

2017-08-08 01:20郭晓军
无线互联科技 2017年14期
关键词:控制者二进制僵尸

郭晓军

(1.西藏民族大学 信息工程学院,陕西 咸阳 712082;2.西藏光信息处理与可视化技术重点实验室,陕西 咸阳 712082)

一种隐蔽的Botnet命令控制信息传送方法

郭晓军1,2

(1.西藏民族大学 信息工程学院,陕西 咸阳 712082;2.西藏光信息处理与可视化技术重点实验室,陕西 咸阳 712082)

命令控制信息的安全传送是僵尸网络(Botnet)正常发挥作用的关键所在。针对Botnet命令控制信息的隐蔽传送问题,文章提出一种基于Web页面信息隐藏的命令控制信息传送方法,可分为命令控制信息转换、嵌入、发送与恢复等部分,并对每部分进行了较为详细的描述。

僵尸网络;命令控制信息;Web页面信息隐藏

近年来,僵尸网络(Botnet)已成为互联网安全所面临的最大威胁之一[1]。根据国内外已有相关研究文献,Botnet可被定义为利用特制恶意代码感染计算机、智能手机等终端设备,将这些设备变为可被控制的节点Bot,且僵尸网络控制者通过命令与控制服务器发布命令控制(Command and Control,C&C)信息来管理这些Bot,当这些Bot收到僵尸网络控制者发布的命令控制信息后,可对指定目标进行隐私信息窃取,大规模DDoS攻击、反射放大攻击、网络钓鱼欺骗、垃圾邮件发送等恶意行为[2]。

可见,C&C信息准确无误地传递给Bot节点对僵尸网络的稳定运行与功能发挥起着非常关键的作用。Bot只有在正确接收和执行这些C&C信息后,才能实现僵尸网络控制者的攻击意图,从而造成实质性的威胁与破坏。从目前已有研究工作来看,僵尸网络的C&C信息传送方式大致可分为两类:(1)直接将C&C信息以明文的方式作为传输层协议(如UDP,TCP等)或应用层协议(如HTTP,IRC等)的数据载荷进行传送,但此种方法容易被难深度包分析技术检测,从而会轻易地识别出所传送的C&C信息,隐蔽性较差;(2)将C&C信息采用某种加密算法(如对称加密算法等)进行加密形成密文,然后将该密文传送给Bot,Bot从该密文解密出C&C信息并进行执行,虽然该方式与明文传送方式相比,提高了C&C传送的隐蔽性,但该方法增加了僵尸代码的设计复杂度与Bot节点的时空开销,所产生的加密网络流量也容易引起网络监管者的警觉,增大了本地Bot被暴露的可能性。

鉴于上述两种方法的缺点,本文在综合考虑C&C信息传送过程的安全性,且僵尸节点Bot在处理C&C信息过程保持较低时空开销等问题基础上,提出一种基于网页信息隐藏的C&C信息传送方法CTWH,该方法通过简单变换将C&C信息转换为二进制编码串形式,然后再通过Web页面信息隐藏方法,将该二进制编码串嵌入在载体Web页面的HTML代码中,并通过网络进行发送,Bot节点在接收到携带C&C信息载体Web页面后,提取出二进制编码串并进行解码,以恢复出C&C信息,有效增强了C&C信息传送过程的隐蔽性。

1 CTWH方法过程

CTWH方法可分为3部分:C&C信息转换,C&C信息嵌入,C&C信息发送与恢复。

1.1 C&C信息转换

C&C信息是指僵尸网络控制者通过C&C服务器发送给多个Bot的DDoS攻击、目标扫描与嗅探、垃圾邮件发送、恶意代码升级更新等指令[3]。其形式多采用类似Linux命令方式发送给Bot,即“命令+选项+参数”的格式,如命令“ddos.syn 10.1.0.16 80”是对目标10.1.0.16的80端口进行syn泛洪攻击,可见C&C信息基本有可见的ASCII码构成。C&C信息转换是指将C&C信息中的字符根据ASCII表转换成对应的二进制编码形式。设CMD表示一条C&C信息,CMD=c1c2……cn,该过程可用式(1)表示:

其中,ci表示C&C信息的一个字符,ASI(ci)表示取字符ci在ASCII中对应的二进制值。S表示转换后的二进制编码串,且其长度为|S|=8n。

1.2 C&C信息嵌入

为提高C&C信息传送过程的隐蔽性,当C&C信息CMD转换为二进制编码串S后,本文以常见Web页面的HTML代码为载体,采用信息隐藏技术将S嵌入在该HTML的行尾,以完成CMD的隐藏。具体过程如图1所示。

图1 C&C信息嵌入流程

其中,函数Insert()作用是将二进制值嵌入在载体Web页面HTML代码的行尾部,此处可通过在尾部插入不可见字符来实现[4],例如,Insert()函数可通过嵌入“空格(0x20)”来表示“0”,“制表符(0x09)”来表示“1”,对于“0110”,Insert()可在HTML代码的行尾插入表示为“0x20090920”来表示。此外,此处所使用的载体Web页面可由僵尸网络控制者自由产生。

1.3 C&C信息发送与恢复

C&C信息发送是指命令控制服务器节点将携带CMD的载体Web页面通过网络发送给所有Bot。此过程可通过僵尸网络控制者攻陷的Web服务器或自己搭建的隐蔽Web服务器来进行发送。C&C信息恢复是指Bot节点接收到携带CMD的载体Web页面后,从中提取出所隐藏的二进制编码串,然后还原出CMD的过程。该过程首先采用与C&C信息嵌入过程的逆操作从载体Web页面中提取出si,然后再通过与C&C信息嵌入过程的逆过程还原出CMD。至此,Bot就可执行该CMD对应的功能。

2 结语

如何保证命令控制信息的隐蔽传送,是僵尸网络正常运行所应解决的关键问题。本文给出的利用Web页面隐藏C&C信息并进行传送的方法,既可保证传送过程的隐蔽性,还能降低僵尸代码设计与实现的复杂性,为该问题提供了一种可参考的解决思路。

[1]ChEN P,DESMET L,HUYGENS C. A study on advanced persistent threats[C].Aveiro:The 15th IFIP TC 6/TC 11 International Conference on Communications and Multimedia Security,2014.

[2]RAFAEL ARG,GABRIEL MF,PEDRO GT. Survey and taxonomy of botnet research through life-cycle[J]. ACM Computing Surveys,2013(4):1-33.

[3]The Honeynet Project. Appendix A:Botnet commands-which commands the bots understand[EB/OL].(2012-11-01)[2017-07-25].https://www.honeynet.org/node/55.

[4]ZHAO QJ,LU HT,JIANG XH. Webpage watermarking for tamper-proof[J].Journal of Shanghai Jiaotong University,2005(3):280-284.

A covert Botnet command and control information transmission method

Guo Xiaojun1,2
(1. Information Engineering School ofXizang Minzu University, Xianyang 712082, China;2. Xizang Key Laboratory of Optical Information Processing and Visualization Technology, Xianyang 712082, China)

The safe transmission of command and control(C&C)information is the key to the normal functioning of Botnet. Aiming at the hidden transmission problem of Botnet C&C information, a C&C information transmission method based on Web page information hiding is proposed in this paper. It can be divided into C&C information conversion, embedding, transmission and recovering and other parts, and each part of a more detailed description.

Botnet; command and control information; Web page information hiding

西藏自治区高校青年教师创新支持计划;项目编号:QCZ2016-41。西藏民族大学青年学人培育计划资助项目,项目编号:17MDQP05。西藏民族大学2016年教学改革与研究课题;项目编号:2016310。藏区网络空间安全与舆情智能监管科研创新团队建设项目;项目编号:2000301040025。

郭晓军(1983— ),男,山西长治。

猜你喜欢
控制者二进制僵尸
用二进制解一道高中数学联赛数论题
笔记本电脑“僵尸”
从“控制者”变身“隐形人”
有趣的进度
二进制在竞赛题中的应用
浅谈中小学财务人员角色转换的紧迫性
数据控制者的权利与限制
你愿意当吸血鬼还是僵尸?
App已死?80%的僵尸应用带来的困惑
“僵尸肉”横行谁之过