【恶意文件】AgentTesla 贼心不死,换壳之后卷土重来
恶意家族名称:
AgentTesla
威胁类型:
间谍软件
简单描述:
2023 年 2 月 13 日,深信服 XDR 捕获新型间谍软件。
恶意文件分析
恶意事件描述
2023 年 2 月13 日,深信服 XDR 捕获新型间谍软件,此次事件中的恶意程序通过钓鱼邮件传播,当受害者解压邮件附件并执行其中的恶意程序之后,该程序会通过 PowerShell 添加 Defender 扫描白名单并创建计划任务,之后执行窃密操作。
恶意事件分析
通过进程执行链可以发现该样本是通过钓鱼邮件投递,受害者解压之后执行。
该样本是一个 .NET 编写的窃密程序,通过对资源节区的数据进行解密还原出恶意模块,然后使用反射加载的方式执行该模块。
调试发现该恶意模块名为 B4000。入口函数为Melvin.White。跟进函数,首先使用Sleep 休眠了 44s,在对一段硬编码的数据进行base64解码后再解压缩,还原出一个 PE 文件。
同样使用反射加载的方式加载还原出来的 PE,名为 Cruiser,在通过加载模块中的函数从图像中提取出另外一个模块 HIVacSim,同样使用反射加载。找到模块入口函数如下:
进入模块之后会执行一系列恶意操作。
释放文件
从资源节区中释放文件至 C:\Users\UserNAme\AppData\Roaming\NgsWWESFAPv.exe
,释放的文件与当前文件一致。
创建计划任务
通过schtasks.exe从XML文件中创建计划任务,二进制文件指向C:\Users\UserName\AppDataing\Romaing\NgsWWSFAPv.exe。
添加Defender白名单
通过 Powershell 添加 Defender 白名单。
创建傀儡进程
创建傀儡进程步骤大致如下:
1. 通过 GetThreadContext 获取线程内容
2. 使用 ReadProcessMemory 读取进程内容
3. 使用 VirtualAllocEx 在傀儡进程中分配空间
4. 使用 WriteProcessMemory 往分配的内存中写入数据,
5. 使用 SetThreadContext 设置执行入口。
6. 使用 ResumeThread 恢复傀儡进程的主线程。
在 SetThreadContext 处下一个断点,找到傀儡进程入口点:
在写完数据并激活傀儡进程之后当前进程就会结束,导出写完数据的傀儡进程继续调试。
信息主机收集
通过 Win32_BaseBoard 获取主板信息,之后获取主机和用户名信息等。
获取公网 IP
收集软件信息
收集多种浏览器信息。
在多个 try catch 中收集特定安装程序的数据:
包括 discord、Claws mail、eM Client、FileZilla、Foxmail、FTP Navigator、WinSCP、RealVNC、MySQL 等程序、以及系统凭证等信息。
发送数据
将收集到的数据进行处理之后通过邮件发送到特定邮箱。
解决方案
处置建议
1. 删除计划任务
2. 取消 Defender 白名单
3. 终结该进程及其子进程并删除对应文件。
深信服解决方案
【深信服检测响应平台 XDR】已支持检测该新型木马的恶意行为,请更新软件(如有定制请先咨询售后再更新版本)和 IOA 规则库、IOC 规则库至最新版本,设置相应的检测策略,获取全方位的高级威胁检测能力;
【深信服终端检测响应平台 EDR】已支持查杀拦截此次事件使用的病毒文件,请更新软件(如有定制请先咨询售后再更新版本)和病毒库至最新版本,并接入深信服安全云脑,及时查杀新威胁;
【深信服安全运营服务】通过以“人机共智”的服务模式帮助用户快速提高安全能力。针对此类威胁,安全运营服务提供安全设备策略检查、安全威胁检查等服务,确保第一时间检测风险以及更新策略,防范此类威胁。