文章首发地址:
https://xz.aliyun.com/t/14926
文章首发作者:
T0daySeeker
概述
近期,笔者在浏览威胁情报时,无意间发现了一款比较有意思的木马,此木马运行后会释放多个载荷,并且其内部代码中还内置了SMTP、FTP的连接代码。本着研究的目的,笔者尝试基于其信息对威胁情报进行了关联对比,发现此木马其实是AgentTesla远控木马的最新变体。
AgentTesla远控端
基于网络调研,梳理AgentTesla远控的背景情况如下:
-
Agent Tesla是一种目前最流行的远程访问木马 (RAT)之一,它是高度可定制的,在许多黑客论坛、平台上进行售卖。 -
AgentTesla最初于2014年在一个土耳其语网站上作为一个简单的键盘记录器进行出售,其后的时间,其开发团队为其不断进行更新迭代,随着功能不断增强,已经成为能够盗取浏览器、FTP、VPN、邮箱和 WIFI 等多种敏感信息的专业窃密软件。
发展时间线如下:
-
2014年:首次公开在官网进行售卖 -
2017年:采用 http 协议进行传输数据 -
2018年:开始采用 smtp 进行数据传输 -
2020年:添加获取 WIFI 信息功能,可窃取 WIFI 密码等信息
为了能够更直观的了解AgentTesla远控,笔者查阅了很多资料,由于未能找到有对其进行详细介绍的官方网站,因此,只能从网络资料中找了几张关于AgentTesla远控端的界面截图。
配置自启动
网络中截图如下:
配置窃取应用凭证
网络中截图如下:
配置通信方式
网络中截图如下:
杀软测试
网络中截图如下:
Zhrp.exe
使用dnspy对此样本进行分析,发现此样本代码被混淆处理,因此,尝试使用de4dot工具对其进行去混淆处理后,即可相对清晰的对其进行剖析(去混淆后,代码还是很不直观)。
代码混淆
去混淆前样本代码截图如下:
去混淆后样本代码截图如下:
解密SimpleLogin.dll
通过分析,发现此样本运行后,将从资源中检索名为off
的嵌入式资源,然后通过解密算法对加密数据进行解密,解密后的数据为名为SimpleLogin.dll的PE文件,相关代码截图如下:
解密算法
通过分析,提取此样本资源文件解密算法如下:
-
first、second数组为内置的密钥信息;
解密算法代码截图如下:
加载SimpleLogin.dll
通过分析,发现此样本成功解密SimpleLogin.dll文件后,将在内存中加载SimpleLogin.dll文件:
-
调用类:LoginForm类中的Justy(string, string, string)方法 -
调用参数:6643416A、687077、AndroidSignTool
相关代码截图如下:
SimpleLogin.dll
解密Gamma.dll
通过分析,发现此样本运行后,将从资源中检索名为Key0
的嵌入式资源,然后通过GZIP算法对压缩数据进行解压缩,解压缩后的数据为名为Gamma.dll的PE文件,相关代码截图如下:
加载Gamma.dll
通过分析,发现SimpleLogin.dll样本将实例化Gamma.dll样本中的ReactionDiffusionLib.ReactionVessel类,用于后续调用其中的函数功能。
相关代码截图如下:
Gamma.dll-CausalitySource函数
通过分析,发现SimpleLogin.dll样本在运行过程中,将调用Gamma.dll样本中的CausalitySource函数。
进一步分析,发现CausalitySource函数的功能为:将十六进制值转换为其ASCII码值。
调用CausalitySource函数前的变量值截图如下:
调用CausalitySource函数后的变量值截图如下:
CausalitySource函数代码截图如下:
Gamma.dll-SearchResult解密函数
通过分析,发现SimpleLogin.dll样本在运行过程中,将调用Gamma.dll样本中的SearchResult函数。
进一步分析,发现SearchResult函数的功能为:使用hpw
密钥对隐写在位图中的载荷数据进行解密。
SearchResult函数代码截图如下:
解密Tyrone.dll
通过分析,发现SimpleLogin.dll样本将按照如下逻辑解密Tyrone.dll文件:
-
从Zhrp.exe样本资源中检索名为 fCAj
的位图资源; -
从 fCAj
位图资源中提取Tyrone.dll文件的加密载荷; -
调用Gamma.dll样本的SearchResult函数(密钥参数为hpw)对加密载荷进行解密;
相关代码截图如下:
解密后载荷截图如下:
加载Tyrone.dll
通过分析,发现SimpleLogin.dll样本成功解密Tyrone.dll文件后,将在内存中加载Tyrone.dll文件:
-
调用gfjFseo7ilTwA8Y0nJ类的Oex9YxVO6h()函数
相关代码截图如下:
Tyrone.dll
配置信息
通过分析,发现Tyrone.dll样本运行后,将解密内置配置信息用于后续功能,配置信息如下:
0||1||0||1||0||||||1||1||1||0||||||||||||||0||0||0||0||0||0||0||0||4.0||2||12640||0||0||||||0||0||1||3||3||auto||1||.exe||
相关代码截图如下:
自启动-计划任务
通过分析,发现Tyrone.dll样本运行后,将复制宿主Zhrp.exe程序至%APPDAT%目录中,然后创建计划任务用于实现自启动。
相关截图如下:
解密bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe
通过分析,发现Tyrone.dll样本运行后,将从资源中检索名为PVrTN
的嵌入式资源,然后通过解密算法对加密数据进行解密,解密后的数据为名为bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe的PE文件(Agent Tesla最终木马)。
相关代码截图如下:
解密算法
解密算法截图如下:
进程替换
通过分析,发现Tyrone.dll样本运行后,将调用CreateProcessA函数以暂停方式创建进程,然后调用VirtualAllocEx、WriteProcessMemory等函数向新创建的进程中写入解密后的bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe文件载荷,以实现进程替换。
相关代码截图如下:
Agent Tesla最终木马
独立实例运行
通过分析,发现bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe样本运行后,将判断系统中是否存在相同进程名的进程实例,若存在,则将相同进程名的进程实例关闭。
相关代码截图如下:
获取公网IP地址
通过分析,发现bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe样本运行后,将通过访问https://api.ipify.org
地址获取公网IP地址。
相关代码截图如下:
安全检测
通过分析,发现bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe样本运行后,将从如下角度进行安全检测:
-
调用CheckRemoteDebuggerPresent函数判断是否正在被远程调试 -
访问 http://ip-api.com/line/?fields=hosting
用于检查被控主机是否属于托管服务提供商 -
计时器 -
反杀软/沙箱 -
反虚拟机
判断是否正在被远程调试
相关代码截图如下:
判断是否是托管服务提供商
相关代码截图如下:
相关外联请求的API说明如下:
计时器
相关代码截图如下:
反杀软/沙箱
相关代码截图如下:
反虚拟机
相关代码截图如下:
外链下载
通过分析,发现bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe样本运行后,将外联下载calc.exe程序,下载后的程序将保存至%TEMP%目录中,然后加载执行。
外联地址如下(实际访问下载,发现已失效):
https://mzcomedy.com.ng/wp/wp-content/uploads/calc.exe
相关代码截图如下:
自启动
通过分析,发现bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe样本运行后,将通过如下方式实现自启动:
-
把宿主程序复制至%APPDATA%AdobeAdobe.exe路径处 -
在HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun注册表中添加Adobe自启动项
相关代码截图如下:
配置信息
通过分析,发现bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe样本运行后,将根据内置的配置信息执行对应的功能代码。
相关代码截图如下:
窃取键盘记录数据
相关代码截图如下:
窃取屏幕截图
相关代码截图如下:
窃取浏览器凭证数据
内置的相关应用列表如下:
Kometa、7Star、Uran、Opera Browser、Coccoc、Cool Novo、CentBrowser、K-Meleon、QIP Surf、BlackHawk、Brave、IceCat、Coowon、Thunderbird、SeaMonkey、Liebao Browser、Postbox、IceDragon、Chrome、Chromium、PaleMoon、Comodo Dragon、360 Browser、Iridium Browser、Torch Browser、Elements Browser、Flock、Amigo、Citrio、Edge Chromium、Sleipnir 6、Yandex Browser、Epic Privacy、WaterFox、Orbitum、Sputnik、Chedot、CyberFox、Vivaldi、Firefox
相关代码截图如下:
窃取剪贴板数据
相关代码截图如下:
窃取数据
通过分析,发现bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe样本将通过POST请求将窃取数据发送至https://dancingtutorial.com.ng/blackmarket/inc/ed02af730792a8.php
地址处。
相关代码截图如下:
相关IOC
梳理相关IOC信息如下:
#Zhrp.exe
F8C9DFD7934FF3F3688E61D599A15424
#Gamma.dll
E4B5D57E9E46A4E76075B5B92F71577F
#Tyrone.dll
DD277CD241B6D02B873DA7D0AFA6D2A4
#bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe
ABE56DDEE7C45D74EA2A4416DA6387A4
#download
https://mzcomedy.com.ng/wp/wp-content/uploads/calc.exe
#Web Panel
https://dancingtutorial.com.ng/blackmarket/inc/ed02af730792a8.php
#IhKL.exe
6EF956ED9F5E1FF71A1E484902A6D1A5
#SimpleLogin.dll
9E4AEA62EE76EFB9013E6440AFD8FFE6
#Tyrone.dll
F68A6DB52DD1425A4E7F0326277111F6
#bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe
ABE56DDEE7C45D74EA2A4416DA6387A4
#download
https://mzcomedy.com.ng/wp/wp-content/uploads/calc.exe
#Web Panel
https://dancingtutorial.com.ng/blackmarket/inc/ed02af730792a8.php
#txEV.exe
ACE7F45CC6EEED16FC511CDA50BDD226
#SimpleLogin.dll
DAD76A28B6FC51471A1A834C6524E806
#Gamma.dll
28B43A10958CAEF0465F7B93BE0A0D77
#Tyrone.dll
894847A4FA085C28BE4F9788E3519E41
#bfb5da9f-48ba-40d7-85d4-7ec204e8e6d3.exe
ABE56DDEE7C45D74EA2A4416DA6387A4
#download
https://mzcomedy.com.ng/wp/wp-content/uploads/calc.exe
#Web Panel
https://dancingtutorial.com.ng/blackmarket/inc/ed02af730792a8.php
#BQc.exe
7EF2ACB1BC18A7F27832AED85092C0B5
#Gamma.dll
E4B5D57E9E46A4E76075B5B92F71577F
#Tyrone.dll
B025D4C795BF4546A48987B6A91271A7
73CE9773E42337925F662BA19174667D
#fbec3f02-6e9f-4f86-9316-ecfcdda6dace.exe
B41E086810ECAAE22209313B5A6569CE
#download
https://mzcomedy.com.ng/wp/wp-content/uploads/calc.exe
#Web Panel
https://mailx.org.ng/original/inc/812961c72ca62b.php
原文始发于微信公众号(T0daySeeker):AgentTesla最新变体剖析-通过Web Panel方式窃取终端隐私数据
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论