样本信息
SHA1:44ce804719e52c09717e7da84dcad01036a2f4a3
样本是伪装成pdf文件的pe文件,来源any.run
样本分析
样本为.NET程序,经过多层解密,最后得到最后的窃密程序
在第一层解密中,样本读取资源中资源名为SB的数据
经过将&Z替换为A,字符串反转,base64解密,得到一个原始文件名为AndroidStudio.dll的样本
AndroidStudio.dll是一个.NET的dll
解密出的dll直接在内存中加载,可以看到调用的函数是StartGame
下图为函数主体
函数的参数如下
其中“VhWIQ”是资源名
"YvbB"是用作异或的**
获取图像的RGB值存入数组和"YvbB"异或运算
运算后的数据用GZip解压,得到Lazarus.exe
Lazarus.exe是一个. NET程序
将Lazarus.exe拖入dnSpy,可以看到资源中含有一个计划任务,大概是用于持久化
运行样本,断下构造函数上
可以看出样本是从资源中获取资源名为"MOFA"的资源进行解密,得到一个pe文件
把数据流保存下来,得到一个hEBLzOHZSqHBfNfhfalvgmXI.exe
然后创建进程
在Lazarus.exe中,还有一些通过模块名以及注册表来检测沙箱的手段
最后看hEBLzOHZSqHBfNfhfalvgmXI.exe
获取用户浏览器数据
拖慢程序执行恶意行为时间,防止沙箱及分析人员的检测
获取计算机名
通过SetWindowsHook Hook回调函数,获取键盘和剪贴板数据
截屏发送给服务器
除了以上恶意行为,还有一些行为没有继续分析,在vt查询,是AgentTesla的变种
总结
这篇文章主要是写了解密的过程,这个恶意程序用的对抗手法还是挺多的,字符串加密,将数据存成一个图像,检测模块和注册表达到反沙箱,延迟执行,多层解密最后才得到最终的窃密程序。在分析的过程中又学到了一些病毒手法和一些分析技巧。