一个自称 lpk.dll 的病毒分析

该样本将自己命名为 lpk.dll,与系统 lpk.dll 同名,在进程需要使用 lpk.dll 时,便会遭到该样本的劫持。

样本运行后,首先会判断当前运行的进程是病毒母体还是释放出来的子体,如果不是子体则将包含子体的资源文档导入到创建的临时文档中,并运行此临时文档。

接下来恶意代码会查找可以感染的逻辑磁盘,并创建线程进行感染,判断是否为目录,若是,则遍历目录进行感染;判断是否是 exe 文档,若是,则复制自身到当前目录下;判断是否为压缩文档,若是,则将自身添加到压缩文档中。

该恶意代码释放出来的子体会使用 taskkill 结束 360 主动防御进程。子体会判断服务 Nationalroi 是否存在,若存在,则运行服务函数。服务函数会创建 hra%u.dll 将 lpk.dll 写入此文档,会访问

http://204.72.210.221/admin.html

并读取网页 源代码,提取网页源代码中的域名,并进行连接,接收指令并执行。若服务 Nationalroi 不存在,则子体会复制自身到

C:\WINDOWS\system32\

目录下的文档 %s%s%s%s%s.exe 中,将此进程注册为服务,并作为服务启动,然后删除自身。

样本信息

MD5:B0E75EAA9316E037095F2F15EAC70F32

时间戳:2010-09-14 16:27:39

样本分析

lpk.dll 分析

样本运行后操作如下:

1、载入资源文档,此资源文档是一个字符串 Nationalroi。根据此字符串,创建同名互斥量,保证只有一个实例运行。

2、判断文档后缀名是否为 TMP,若是,则不导入资源文档。若不是,则导入资源文档。

3、将导入的资源文档存入临时文档中,创建进程运行此临时文档

4、判断当前加载的文档是否为 lpk.dll,如果是,则获取系统 lpk.dll 的函数填充到自己的同名函数中。

5、若当前加载的文档不是 lpk.dll,则扫描电脑上所有可以感染的逻辑磁盘,若可以感染,则创建线程进行感染。

6、搜索磁盘中的文档,判断是否为特殊文档或是目录。若是目录,则遍历目录进行感染。

7、若磁盘中的文档不是目录,则获取文档扩展名,判断是否有 exe 文档,若有,则将 lpk.dll 复制过去,并设置文档属性为隐藏。

8、判断磁盘中是否有 rar 文档或 zip 文档,若存在,则感染压缩包中的文档

9、感染压缩包。获取 winrar 的运行路径,若没有安装 winrar 就直接退出。

10、生成一个临时文档名 IRAR%s.tmp,查询压缩包中是否包含 lpk.dll,若不包含,将压缩文档中的所有 exe 解压到 IRAR%s.tmp\ 目录下,将此目录和文档 lpk.dll 一起压缩到 %s.zip 中。但是进程中使用的压缩语句语法错误,应该执行不了。

11、压缩完成后,删除 IRAR%s.tmp\ 目录。

hrl%s.tmp 分析

样本运行后操作如下:

1、使用 taskkill 结束 360 主动防御进程。

2、在注册表中查找 Nationalroi,如果不存在,就创建服务,复制自身到系统目录,设置为服务并启动,然后结束当前进程。如果存在,启动 Nationalroi 服务,运行服务函数。

3、创建互斥量,确保只有一个服务正在运行。

4、创建文档 hra%u.dll,并把资源文档写入此文档。

5、更新 hra%u.dll 的资源文档。

6、获取 hra%u.dll 的两个函数 StartWork 和 StopWork

7、通过异或解密,获得网址

8、访问 http://204.72.210.221/admin.html 并读取网页源代码。

9、根据网页源码内容,提取域名,转换成IP地址,进行连接。接收远程服务器的指令并进行相关操作。


10、获取操作系统版本信息,获取 CPU 信息等。

11、若 Nationalroi 服务不存在,则复制新的文档,并将此文档当做服务启动。

分析完毕

总结

该报告的行文以及排版值得所有人学习借鉴。lpk 后门虽然是老病毒,但每天的感染量依然很大,最好的解决方法就是少在下载站下软件,少下一些外挂进程等等

关键词:科技互联网

相关推荐:

暗云III v3.0 、Mykings、Mirai多个病毒家族结伴来袭的实战分析

一个带简单密码的病毒分析

一款注入型勒索病毒Ryuk,拉开2019年勒索病毒攻击的序幕

05简单DLL劫持

Satan变种病毒分析处置手册

GandCrab传播新动向——五毒俱全的蠕虫病毒技术分析V1.1

“微信支付”勒索病毒分析及解密工具

一个利用姿势清奇的11882格式溢出文档的分析

NotPetya勒索病毒分析报告