一个典型僵尸网络浅析

      某公司平台部在工作过程中会检测到各类僵尸网络,本文将分析一典型僵尸网络(以下简称botnet)的架构。

9d86ecafef89c168b68f4dae243c2b2e.png

《大话西游》  “反正我要死,你就帮个忙。我听说如果刀子出得快部位准,把人剖开后人不会马上死掉,眼睛还能看得见。你就帮个忙出手快点,把我的心挖出来让我看一看,行不行?”

被***是难免的,如果检测得快,我们能发现敌人做了什么,及时控制其蔓延危害网络,亡羊补牢为时未晚。

1.    僵尸网络传播

botnet或蠕虫,一个重要的特征就是自动传播能力,这里介绍2类常见的传播方式。

1.1漏洞传播

为了快速获取大量被控僵尸肉鸡,***者会及时更新***模块。笔者有一个经验,每次在检测到有新一波***手法时,去查查最近公开的漏洞或许就能看到。

同时作为僵尸网络大范围的***行为(甚至是漫无目的的),几乎可以预见到的是他的行为和***方式100%会被侦察到,所以他们不会使用最新0day。

用1day是权衡两者最经济的方式,并且偏爱能直接执行命令的类型,譬如:struts2 RCE、JBoss DeploymentFileRepositoryWAR Deployment、CVE-2012-1823(PHP-CGIRCE)等。

1.2自动化***工具

漏洞常有,而装有存在漏洞的软件的不常有,但人的弱点总是避免不了的。比如弱口令问题,现如今最古老的弱口令猜解***依然存在,ssh\ftp\rdp\telnet等等,加之tomcat管理后台等各种口令。现在越来越快的网速,越来越强的硬件性能使之效率越来越高。

2.    僵尸网络架构

接下来讲讲最近在捕获的一个僵尸网络,其功能特点非常具有代表性。以下是其各功能模块分析。

2.1下载者

负责接收控制者指令,下载更新功能模块。

c5b5874dcc0ecde07f1d44e1a2d41cf7.png

2.2传播中继站

僵尸网络制造者为了隐蔽自己也避免整个botnet被捣毁,他不可能将传播源集中到一个地方,所以常常在肉鸡上建立中继站。

在这个案例中,它会搭建一个简易的web来实现。

f59da3e64a3cae23543085c49d3d41dc.png

2.3被控端

作为一个僵尸傀儡最主要就是“听话”,此次案例它采用的是irc通道。这里他预设了2个域名作为server通讯地址,而域名解析到的IP是可随时更换的,ircbot随机连接到任一个server。

bdd88bef780d338479ed412c19e95bfe.png

此ircbot有多个基础功能,如DDOS、执行命令、自杀、更换server、切换静默状态(Disables all packeting)等。

fdaf8927040f946b5d846aba07645fa3.png

2.4肉鸡功能
Ircbot都是那些古老的功能,下面这些常常才是各种不同BotNet特有的。

(一) 漏洞扫描***

本案例中是php CGI的RCE (CVE-2012-1823)

vir:~/tl/aa/tmp # lsChangeLog  Makefile  TODO  bm.h  inst        ipsort    ipsort.sgml  php.c   pnscan.1  pnscan.o     version.c  wsLICENSE    README    bm.c  bm.o  install-sh  ipsort.1  php          pnscan  pnscan.c  pnscan.sgml  version.ovir:~/tl/aa/tmp # head php.c/* Apache Magica by Kingcope *//* gcc apache-magika.c -o apache-magika -lssl *//* This is a code execution bug in the combination of Apache and PHP.On Debian and Ubuntu the vulnerability is present in the default installvir:~/tl/aa/tmp # cat ws#!/bin/bashwhile [ 1 ]; do#       ___A=`echo $(( (($RANDOM<<15)|$RANDOM) % 255 + 0 ))`        ___A=`echo $(( $RANDOM % 255 + 0 ))`        ___B=$(( ((RANDOM<<15)|RANDOM) % 255 + 0 ))        ./pnscan -w"HEAD / HTTP/1.0\r\n\r\n" -r"Server: Apache" -t 1000 $___A.$___B.0.0/16 80        #echo $___A.$___B#sleep 20done

(二) 挖矿奴隶

4b33c2c6450121b795b31692c4c6877e.png

现在的”***”早已不是之前崇尚自由、崇尚技术极致的时代了,金钱才是他们最终目的,所以我们也在此botnet中发现了“挖掘机”,并且丧心病狂的的***同时进行2种网络匿名货币的挖掘Protocoin和Primecoin,充分榨干系统性能。

f87fd367c3c33989cc1bcdfcc2bc4c35.png

Protocoin 挖掘机

8cec4e7cc9eb8ad13ee4ec7241bfa1d6.png

Primecoin 挖掘机

(三) 提权

此案例中的***者并不满足于web漏洞进来获得的普通权限,还通过系统漏洞,以及社工(信息采集)方式获得root权限。

056ffe9377e1790e1b3d2ac1004859d8.png

系统提权漏洞工具

23e9e5354300ef4bbf6da3d32b44e009.png

爬取conf用于密码root猜解

通过上述分析,我们可以看到此僵尸网络利用CVE-2012-1823漏洞大肆传播,并且利用被控的肉鸡进行2种网络货币的挖掘,充分榨取肉鸡系统资源。

828177810aecfbe20c9742fb7ab4ef3a.jpg

BotNet 架构

3.    应对僵尸网络威胁

bae5fd55fa8b9b21213d37ca7930763e.jpg

Botnet***尝试统计

以上是近期检测到的botnet***尝试趋势统计。Botnet从建立到覆灭是有其生命周期的,如果发现得早是可以及时修补漏洞,建立阻断策略,避免其危害扩散。

fc1f300501b9cd5b61ff4209d034d4fa.jpg

BotNet 生命周期

日常安全工作中通过对***检测数据的分析,能感知到僵尸网络的演变以及0day\1day\Nday的***趋势。当僵尸网络在其初期,尚未形成规模之时,如果及时联合业界安全联盟加以打击,必将其扼杀在摇篮。合作形式可包含但不限于以下方式:

4be780cc0233d236e191300012afd39a.jpg

腾讯自有业务和服务器的规模庞大,作为一个目标巨大的“靶场”又是一个分布式的大“蜜罐”,我们可以充分挖掘其数据潜力帮助业界共同提升安全水平,但相比整个互联网环境来说又是微不足道的。

【转载自:iHk-system.com|寻访诸神的网站】