某QQ木马分析

某QQ木马分析

这是一个较老的QQ木马文件,文件也不大,但是剖开来看却是机关重重内藏玄机。

木马文件简单的通过图标来伪装成安装程序,用户只要不小心打开了,在权限足够的情况下就被种下木马了。

图片1

首先来分析主文件,其中主函数过程如下:

如果木马首次打开将会拷贝自身到系统目录和360安装目录来伪装,并会在注册表中存入相关数据。之后执行注入木马操作。

程序会在注册表下Software/rar下存入3个键,data、s、e,其中最主要的的data键值,他存储的是需要注入的可执行文件数据,这在后面会讲到。

 

在注入木马前会检测几种杀毒软件:

检测杀毒软件之后程序会以CREATE_SUSPENDED模式创建WinLogon进程,之后在对新进程进行dll和数据注入:

注入的内容分4部分(dll数据部分注入了两次):主dll数据、模块名等信息、shellcode、shellcode参数。

内存的注入在od中可以直观的显示出来:

图片2

注入完成后就是patch entryPoint的代码来执行注入数据了,原本的入口点代码被替换为执行shellcode的相应代码:

图片3

原本的入口点代码被替换,新code的任务是创建以所注入的shellcode为入口点的新线程,以及sleep 主线程。

现将注入的shellcode提取并分析:

它其实是一个loaddll的过程,其中包括载入段、解析IAT、修复重定位的过程。传入的shellcode参数的结构为:

这里包含的api地址是根据系统api在同系统环境下进程地址相同的原理来注入的,这使得shellcode可以直接调用,在OD中可以直观的看出参数数据。

图片4

下面dump出该dll来进行分析,该dll其实也是个加载器,不过它是从注册表中加载数据来解密的。

最后解密并加载的就是最终的木马dll了,我从注册表中提取出数据自行解密来进行分析。该dll的内容比较多不过最主要的部分还是显而易见的,从中可以断定它是一个针对QQ2009-2011版本的木马程序。以下分析几个关键的函数部分。

获取账号信息:

设置hook 以及检测内存:

键盘key监控部分:

注册表数据提取以及设置开机自启动:

 

到此该qq木马文件就分析完了,木马程序的隐藏之深不得不让人叹服啊,为了躲避杀软件查杀,采用了系统进程注入、注册表储存数据、动态内存加载dll等方法,而且过程中的数据传递都是加密的。总之,使用软件需慎行。

 

makings:

qq_trojan.zip

发表评论

电子邮件地址不会被公开。 必填项已用*标注