0442-“会说话的键盘”-一个恶意推广木马的详细分析

# “会说话的键盘”:一个恶意推广木马的详细分析

0x00 背景
=======

* * *

拦截量一夜之间从零增长到20多万,通过回溯发现主要由“刚需”的色情播放器推广安装。然而分析时该软件却表现地很无辜——直接安装运行,看其功能就是为了实现按下按键播放对应的声音,几乎没有什么恶意行为。然而经测试,其功能并不完善,点击在线升级不进行任何判断就直接弹出当前已是最新版本的提示,这真的就是软件的全部功能吗?

![](http://drops.javaweb.org/uploads/images/61db785a51419e8f28e47b4825c603dd15568ec9.jpg)

(图1:木马拦截量呈爆发式增长)

0x01 样本简介
=========

* * *

软件名称:会说话的键盘
文件名:Key_jpls_9181068.exe
MD5:40dd0aca08e51406179f61cbc382ea84
行为简介:安装时判断自身文件名,不符合规则就弹出安装向导,符合则直接静默安装,安装后在%appdata%\TsanZioxs目录下释放如下文件,并运行。

![](http://drops.javaweb.org/uploads/images/08f66bebf4d406a55a73339ab9a13a0bdb8265f0.jpg)

(图2:安装后释放文件)

其中Sound目录下除了很多声音文件外,还有两个数据文件。

![](http://drops.javaweb.org/uploads/images/bed319b336048f28088cd0fe7c2f18ac123293e5.jpg)

(图3:Sound目录下部分文件)

运行后看着像是正常的软件,有界面、有看似正常的功能。

![](http://drops.javaweb.org/uploads/images/41c371acf83e5556e635f74b25089bc4ec8bf2e7.jpg)

(图4:任务栏创建图标)

![](http://drops.javaweb.org/uploads/images/c9db8182ed1abf5f89f4b574bd5932b4f6cef5c7.jpg)

(图5:点击图标后的相关界面)

0x02 详细分析
=========

* * *

QcemTiosp.exe行为:
—————-

1、在任务栏的通知区域创建图标,并创建相关的界面进行伪装,然而软件本身并不能实现播放按键声音的功能。如果符合条件,重启机器后将不会再出现相关界面,直接在后台执行。整个木马代码中被大量加入了异常处理函数并主动抛出异常,用于干扰分析。

![](http://drops.javaweb.org/uploads/images/cd64cab04f0c72e76f84d717085eb3afd60b3ab6.jpg)

(图6)

2、创建线程开始木马行为:首先获取MAC地址,并使用散列算法将MAC地址计算成一个hash值,随后将其发送到`udp.1qingling.com.cn:2005`,为了隐蔽该通讯使用UDP协议。

![](http://drops.javaweb.org/uploads/images/5d751aedf80727a216ccb3b58664c526dad80538.jpg)

(图7)

![](http://drops.javaweb.org/uploads/images/e3a330318096d2d2eb94bbf3f7287b29647a251e.jpg)

(图8)

![](http://drops.javaweb.org/uploads/images/52e81e52dcaf2686dc53dac26230b5ea91a94af3.jpg)

(图9)

3、接收服务器返回的数据,判断返回的相应值,如果是0x191,则不进行任何行为。

![](http://drops.javaweb.org/uploads/images/9bd3d260ca4339bacdc82682e05c4c84b41f56a1.jpg)

(图10)

4、为什么只上传了MAC的hash值就会返回0x191呢?难道有黑名单?或者通过MAC判断虚拟机?然而并不是,多次测试后发现该返回值与当前的ip地址有关系,比如在对北京、深圳、成都、杭州四个城市的测试中,发现只有北京和深圳返回了0x191,看来该木马至少避开了北京和深圳的用户。

![](http://drops.javaweb.org/uploads/images/a1da74c5c29f6dee2d31cfb4670189be112a427e.jpg)

(图11)

5、如果当前城市不是要屏蔽的城市,则不再装无辜,露出真面目,开始木马行为:首先创建开机自启动项长期驻扎电脑,随后将Sound目录下的Enter.bin文件映射到内存。

![](http://drops.javaweb.org/uploads/images/bef0e6ffe1ffb2397475d3981b35139b1081c0b4.jpg)

(图12)

6、经分析Enter.bin和Space.bin文件都是经过压缩的,压缩相关的参数存在文件的末尾,分别通过搜索Space和Enter关键词来定位压缩相关参数,如下图所示:

![](http://drops.javaweb.org/uploads/images/d29c6a93ee451e9bef70c6fd9424a923c7868cc8.jpg)

(图13)

![](http://drops.javaweb.org/uploads/images/94de6cc6ebcac9e60b0c3b3358775805ab9ed1e6.jpg)

(图14)

7、获取到相关参数后使用zlib库进行解压,该木马静态编译了zlib库,版本为1.2.3

![](http://drops.javaweb.org/uploads/images/50797a9902571befe980171f378fddd4a7513559.jpg)

(图15)

8、解压成功后对文件进行简单的校验,确认是PE文件后创建自身傀儡进程,将解压出的PE注入到傀儡进程中运行。

![](http://drops.javaweb.org/uploads/images/20d7f9d95afce155c5a8adfd3b8d430924305076.jpg)

(图16)

![](http://drops.javaweb.org/uploads/images/aa23db1ecd75e57c051ebe44082c5c07a72abe54.jpg)

(图17)

![](http://drops.javaweb.org/uploads/images/872bc92a3d63a9464dd8648c3e61802afecae80c.jpg)

(图18)

0x03 Enter.exe行为
================

* * *

该文件由Enter.bin解压而来不落地,MD5:1DCC1E25CF884AF7AF6EA3927CAB9D6E

1、下载`http://config.1qingling.com/biz/810.xml`配置文件,该配置文件经过加密,解密后内容如图19。该木马的主要功能分三块,第一是流氓推广、第二是弹窗,第三是右下角弹窗。每个功能都配置了生效时间,弹窗频率和时间等。

![](http://drops.javaweb.org/uploads/images/360e7fe740734a8d3ad3f55055da4e73ae710d1a.jpg)

(图19)

2、解析配置文件,根据配置文件进行下载推广行为。

![](http://drops.javaweb.org/uploads/images/6551d2229570c890e0bc771be152a9be198dbeb0.jpg)

(图20)

![](http://drops.javaweb.org/uploads/images/415ce4d731569b026f23f1966aeaedb9239bab48.jpg)

(图21推广的文件)

3、配置中的弹窗功能代码则不在此文件中,其以加载Enter.bin相同的方式加载Space.bin文件并在内存中加载,随后将配置文件中的参数作为命令行参数创建自身傀儡进程,将Space.bin注入执行。

![](http://drops.javaweb.org/uploads/images/617f2b68edefd898fd452046c0d8eba4bd73e1d4.jpg)

(图22)

![](http://drops.javaweb.org/uploads/images/294feada2e8631374be55edc4366d114493bd128.jpg)

(图23)

0x04 Space.exe行为
================

* * *

该文件由Space.bin解压而来不落地,MD5:1DCC1E25CF884AF7AF6EA3927CAB9D6E

1、该文件的主要功能是从命令行参数中获取弹窗相关的参数信息,进行弹窗行为。

![](http://drops.javaweb.org/uploads/images/3e25582d02c97cc9de38b5759730b4c028bf2caf.jpg)

(图24)

具体弹窗行为:

1)大的弹窗广告如图25:对应配置文件中的``标签

![](http://drops.javaweb.org/uploads/images/dace1bebbc587d2986d31e83ba85592693a2f467.jpg)

(图25)

2)右下角弹窗广告如图26:对应配置文件中的``标签

![](http://drops.javaweb.org/uploads/images/092cb62762cc526b8203d04bd9ef59d55b279cbf.jpg)

(图26)

0x05 后记:
========

* * *

随着安全软件的普及,纯粹木马的生存空间越来越小,更多的木马在看似正常的软件中插入恶意代码进行伪装,除了后台的恶意代码外,其在前台还创建了相应的伪装界面,尽量把自己装得单纯无害,甚至还会通过ip限制等手段逃避安全厂商的分析。

该木马的恶意推广列表中的大部分是流氓软件,还有少数危害严重的木马程序,且待下回分析。

© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容