该款木马分析文章在2015年由@PETER KáLNAI 最先发表于AVAST的公开blog中,木马的架构严谨,设计精良,应该是产业化的一部分。接下来我们就来看一下这款木马的具体的感染,命令执行和持久化的思路,希望能给我们搞防御的小伙伴扩充一点防御思路。
安装脚本&感染媒介
木马的最初感染方式十分传(dou)统(bi),他是通过暴力登录SSH服务获取root权限的方式来成功搞下感染体的(这里就体现了一个高质量的字典的重要程度了)。成功拿下root权限之后,攻击者就会向目标机器通过shell的方式利用脚本传递执行安装一个木马。这个脚本文件主要包括一些程序如main, check, compiler, uncompress, setup, generate, upload, checkbuild和一些变量如 __host_32__, __host_64__, __kernel__, __remote__等。主程序的作用是根据感染目标机器的系统开发版本加密传输并且选择C&C服务器。
在下面的请求中,iid参数传递的是内核版本名称的MD5哈希。脚本首先用lsmod命令列本机所有的模块信息,然后,提取名称和vermagic字段。在我们测试的环境中,被测试的环境是“3.8.0-19-generic SMP mod_unload modversions 686 ”,对应的MD5是CE74BF62ACFE944B2167248DD0674977。
接下来,就有三个GET请求被发送到C&C服务器上。
第一个是表明目标机器运行的操作系统的信息:
request: GET /check?iid=CE74BF62ACFE944B2167248DD0674977&kernel=3.8.0reply: 1001|CE74BF62ACFE944B2167248DD0674977|header directory is exists!
然后,compiler程序会发送第二个GET请求:请求中包括的字段我们猜测应该有C&C服务器,版本信息等,通过这个带有本机特定版本信息的请求,服务器可以据此生成一个可执行程序:
小编推荐阅读