初七的果子狸 发表于 2021-5-28 17:20

一个DLL注入病毒分析

本帖最后由 初七的果子狸 于 2021-5-30 15:35 编辑

前言
学无止境、道阻且长啊。继续分析病毒的旅程,这次是一个DLL注入病毒。

病毒名称:bea213f1c932455aee8ff6fde346b1d1960d57ff
样本MD5:6E4B0A001C493F0FCF8C5E9020958F38
链接:https://pan.baidu.com/s/1zA8ZKZfCr1LjdLxWKlIf5Q
提取码:fi7k
一、基础行为分析
1、病毒查壳
无壳,也没有什么特殊信息,很正常的一个信息

2、加密算法
含有大数运算

3、云沙箱分析
使用微步云沙箱分析




二、主要行为分析
通过火绒剑过滤进程行为,可以看到病毒释放了一个压缩包(g.zip)和一个dll文件(locale.dll),然后对资源管理器进行注入,最后自删除。


病毒执行完成后会访问某恶意网站,从而下载所需。由于该恶意网站已被查封,故无法访问成功


当然也可以使用fakenet模拟虚拟网络环境,这样可以更清楚的观察到病毒的操作流程
http://www.kahusecurity.com/downloadsConverter_v0.14.7z

http://paperlief.com/images/crows-flying-away-wallpaper-3.jpg

三、恶意代码分析
1、sub_402A10
main函数首先获取进程相关联的控制台窗口句柄,以隐藏的方式运行。然后进入TraversalTerminateProcess函数,函数执行了三次,每次传入的数据都是检测工具的进程名,看到这个函数内部获取快照遍历进程,并出现TerminateProcess api函数,推测是检测是否存在检测工具并杀死检测工具进程。




给edx赋值路径





完成对路径C:\Users\VicZ\AppData\Local\Temp\x.zip的拼接





在402B90处通过this指针传入一串混乱的字符串,并调用sub_402990函数进行解密




7z4..1v0r_teernvCos/adlowndom/coy.iturecusah.kww/w:/tpht
http://www.kahusecurity.com/downloadsConverter_v0.14.7z



再往下还有一张图片待下载,同上还有对路径C:\Users\VicZ\AppData\Local\Temp\g.zip的拼接




# 该网址由于已被废弃,因此无法访问
jp3.r-pepallway-wa-angyifls-owcrs/gema/iom.ceflierap/p:/tphtg
http://paperlief.com/images/crows-flying-away-wallpaper-3.jpg
通过在线云沙箱可以拿到这个图片(原网址已不可访问,无法正常下载)



下面先设置文件属性,然后获取一串16进制数据




通过sub_401F00函数转化出ASCII码cmd.exe /C ping 127.0.0.1 && del


2、sub_402110
用于判断文件是否下载成功

3、sub_402690
该函数首先创建一个文件:C:\windows\system32\locale.dll,获取缓冲区首地址,解密缓冲区内容为一个PE文件,将缓冲区内容写入到locale.dll文件中




循环解密部分




线程注入部分
先将notepad.exe进程创建的时间设置为C:\windows\system32\locale.dll创建的时间,然后远程线程注入explorer.exe



4、网址解密脚本
# python2
# foxcookie.github.io
str1 = '7z4..1v0r_teernvCos/adlowndom/coy.iturecusah.kww/w:/tpht'
str1 = str1[::-1]
num = len(str1)
list1 = list(str1)
i = 0

for k in range(num/4):
      list1,list1,list1,list1 = list1,list1,list1,list1
      i = i + 4
str2 = ''.join(list1)
print(str2)
解密原理:
逆序
四位一组
1 2换位、3 4换位
5、locale.dll
入口函数



sub_1000162A函数用于获取时间信息




sub_10001362函数




StartAddress函数
循环解密出http://d1picvugn75nio.cloudfront.net,然后调用浏览器访问




sub_10001188函数,根据传入值判断返回何种结果




传入值为1时




传入值为2时




传入值不为3时


四、手动查杀木马
1、删除cookies目录下生成的两个文件

2、删除生成的注册表

3、删除下载的文件

4、删除C:\windows\system32\locale.dll文件

五、参考链接
https://blog.csdn.net/weixin_44001905/article/details/98963175





初七的果子狸 发表于 2021-5-29 13:00

wanshiz 发表于 2021-5-29 07:54
楼主算大佬级了。浏览了大贴对dll的注入有了基本的了解。总觉得那个有点难对付的。

唔,平常的病毒杀软会直接报毒。就怕新型病毒,没被收录的。就只能依靠自己的直觉了,毕竟这也是没办法的事情。

初七的果子狸 发表于 2021-7-7 15:19

jackx 发表于 2021-7-6 20:39
样本链接失效了

我这看起来没问题啊,会不会是你网络的问题。或者你可以去 https://app.any.run/ 这个网站上下载,直接用MD5值搜索就行。

zigzag 发表于 2021-5-28 17:41

厉害了,,

lies2014 发表于 2021-5-28 17:45

样本链接失效了

sam喵喵 发表于 2021-5-28 18:11

长见识了,知道fakenet-NG,感谢分享

无能的侦探 发表于 2021-5-28 18:15

有点儿意思

lingyan 发表于 2021-5-28 18:32

这个病毒有意思

初七的果子狸 发表于 2021-5-28 19:51

lies2014 发表于 2021-5-28 17:45
样本链接失效了

多谢提醒,已修复

wanshiz 发表于 2021-5-29 07:54

楼主算大佬级了。浏览了大贴对dll的注入有了基本的了解。总觉得那个有点难对付的。

吾爱PYB 发表于 2021-5-29 10:35

学废了,谢谢分享
页: [1] 2 3 4
查看完整版本: 一个DLL注入病毒分析