投票失败:我们将AgentTesla带到干净的水中。 第二部分


我们继续进行一系列有关恶意软件分析的文章。 在第一部分中,我们讨论了CERT Group-IB的恶意代码分析专家Ilya Pomerantsev如何对从欧洲公司通过邮件收到的文件进行详细分析,并在那里找到了AgentTesla间谍软件 。 在本文中,Ilya介绍了主要AgentTesla模块的分阶段分析结果。

Agent Tesla是一种模块化的间谍软件,以合法键盘记录程序产品的名义作为软件即服务分发。 特斯拉特工能够从浏览器,电子邮件客户端和FTP客户端提取用户凭据并将其传输到服务器,以供攻击者使用,注册剪贴板数据并捕获设备的屏幕。 在分析时,开发人员的官方网站不可用。

配置文件


下表列出了所用示例中使用的功能:
内容描述
价值
KeyLogger使用标志
是真的
使用ScreenLogger的标志
错误的
KeyLogger日志发送间隔,以分钟为单位
20
ScreenLogger日志发送间隔,以分钟为单位
20
用于处理Backspace键的标志。 False-仅记录。 True-删除上一个键
错误的
输入CnC。 选项:smtp,webpanel,ftp
短信
线程的激活标志,以终止列表“%filter_list%”中的进程
错误的
UAC禁用标志
错误的
禁用任务管理器标志
错误的
CMD禁用标志
错误的
运行窗口禁用标志
错误的
禁用注册表查看器标志
错误的
禁用系统还原点
是真的
控制面板禁用标志
错误的
MSCONFIG禁用标志
错误的
资源管理器上下文菜单禁用标志
错误的
系统引脚标志
错误的
停靠在系统中时复制主模块的路径
%startupfolder%\\%insfolder%\\%insname%
用于为系统中固定的主模块设置属性“ System”和“ Secretive”的标志
错误的
修复系统后重新启动执行标志
错误的
用于将主模块移动到临时文件夹的标志
错误的
UAC旁路运行标志
错误的
记录的日期和时间格式
yyyy-MM-dd HH:mm:ss
标记为KeyLogger使用程序过滤器
是真的
程序过滤的类型。
1-在窗口标题中搜索程序名称
2-在窗口进程名称中搜索程序名称
1个
程序过滤器
脸书
推特
邮箱
Instagram的
“电影”,
Skype的
“色情”,
哈克
Whatsapp的
不和谐

固定系统中的主模块


如果设置了相应的标志,则沿着config中指定的路径复制主模块,作为在系统中修复的路径。

根据配置中的值,文件被赋予属性“隐藏”和“系统”。
自动启动由两个注册表分支提供:

  • HKCU \软件\微软\ Windows \ CurrentVersion \运行\%insregname%
  • HKCU \软件\微软\ Windows \ CurrentVersion \ Explorer \ StartupApproved \运行\%insregname%

由于引导加载程序已注入RegAsm进程,因此为主模块设置持久性标志将导致非常有趣的后果。 该恶意软件没有复制自身,而是将原始RegAsm.exe文件保护到了系统中,在此过程中进行了注入。



与C&C的互动


无论使用哪种方法,网络交互都始于使用checkip [。] Amazonaws [。] Com /资源获得受害者的外部IP。
下面介绍恶意软件中提供的联网方法。

网络面板


交互是通过HTTP协议进行的。 该恶意软件执行带有以下标头的POST请求:

  • 用户代理:Mozilla / 5.0(Windows U Windows NT 6.1版本:1.9.2.3)Gecko / 20100401 Firefox / 4.0(.NET CLR 3.5.30729)
  • 连接:保持活动
  • 内容类型:应用程序/ x-www-form-urlencoded

服务器地址设置为%PostURL% 。 加密的消息在参数“ p”中传递。 加密机制在“加密算法”(方法2)部分中介绍

传输的消息如下:

类型= {0} \ nhwid = {1} \ ntime = {2} \ npcname = {3} \ nlogdata = {4} \ nscreen = {5} \ nipadd = {6} \ nwebcam_link = {7} \ nclient = {8} \ nlink = {9} \ nusername = {10} \ npassword = {11} \ nscreen_link = {12}

type参数指示消息的类型:


hwid-从主板的序列号和处理器ID的值写入MD5哈希。 最有可能用作用户ID。
时间 -用于传输当前时间和日期。
pcname-定义为<用户名> / <计算机名>
logdata-日志数据。

传输密码时,消息如下:

类型= {0} \ nhwid = {1} \ ntime = {2} \ npcname = {3} \ nlogdata = {4} \ nscreen = {5} \ nipadd = {6} \ nwebcam_link = {7} \ nscreen_link = {8} \ n [密码]

以下是\ nclient [] = {0} \ nlink [] = {1} \ nusername [] = {2} \ npassword [] = {3}格式的被盗数据的描述。

短信


交互是通过SMTP协议进行的。 传输的消息为HTML格式。 BODY参数为:


信件标题的一般格式为: <用户名> / <计算机名> <内容类型> 。 信件及其附件的内容均未加密。


交互是通过ftp协议进行的。 名称为<内容类型> _ <用户名>-<计算机名称> _ <日期和时间> .html的文件被传输到指定的服务器。 文件内容未加密。


加密算法


在这种情况下,使用以下加密方法:

方法1


此方法用于加密主模块中的字符串。 对于加密,使用AES算法。

输入的是六位数的十进制数字。 在其上执行以下转换:

f(x)=((((x >> 2-31059)^ 6380)-1363)>> 3

结果值是嵌入式数据数组的索引。

数组的每个元素都是一个DWORD序列。 组合DWORD时,将获得一个字节数组:前32个字节是加密密钥,其后是初始化向量的16个字节,其余字节是加密数据。

方法2


3DES算法用于ECB模式,并在整个字节中填充( PKCS7 )。

密钥由%urlkey%参数指定,但是其MD5哈希用于加密。

恶意功能


研究中的样本使用以下程序来实现其恶意功能:

键盘记录器


如果使用WinAPI函数存在相应的VPO标志,则SetWindowsHookEx将为键盘击键事件分配其自己的处理程序。 处理程序功能通过获取活动窗口的标题开始。

如果设置了执行应用程序过滤的标志,则根据指定的类型执行过滤:

  1. 在窗口标题中查找程序名称
  2. 在窗口进程名称中查找程序名称

接下来,将一条记录添加到日志中,其中包含有关活动窗口的信息,格式为:


然后记录有关按下的键的信息:
关键
记录
退格键
取决于处理Backspace键的标志:False- {BACK}
True-删除上一个键
开锁
{CAPSLOCK}
Esc
{ESC}
PageUp
{PageUp}
往下
?darr;
删除
{DEL}

&quot;
F5
{F5}

&amp;
F10
{F10}
标签页
{TAB}
<
&lt;
>
&gt;
空格键
F8
{F8}
F12
{F12}
F9
{F9}
ALT + Tab
{ALT + TAB}
完结
{END}
F4
{F4}
F2
{F2}
CTRL键
{CTRL}
F6
{F6}
对啊


&uarr;
F1
{F1}
向左
&larr;
Pagedown
{PageDown}
插入
{插入}
赢了
{Win}
Numlock
{NumLock}
F11
{F11}
F3
{F3}
首页
{HOME}
回车
{ENTER}
ALT + F4
{ALT + F4}
F7
{F7}
另一个关键
大写或小写字符,取决于CapsLock和Shift键的位置

以给定的频率,收集到的日志将发送到服务器。 如果传输失败,则将日志以以下格式保存到文件%TEMP%\\ log.tmp中:


当计时器关闭时,文件将被传输到服务器。

屏幕录像机


恶意软件以指定的频率创建Jpeg格式的屏幕快照, 质量值为50,并将其保存到文件%APPDATA%\\ <10个字符的随机序列> .jpg中 。 传输后,文件被删除。

剪贴板记录器


如果设置了相应的标志,则会根据下表在拦截的文本中进行替换。


之后,将文本插入日志:


密码老师


恶意软件可以从以下应用程序下载密码:
浏览器
电子邮件客户
FTP客户端
镀铬
展望
Filezilla
火狐浏览器
雷鸟
WS_FTP
IE浏览器/边缘
福克斯邮件
Winscp
游猎
歌剧邮件
核心FTP
Opera浏览器
增量邮件
FTP浏览器
Yandex
Pocomail
Flashfxp
科摩多
尤多拉
Smartftp
Chromeplus
蝙蝠
FTPCommander
铬色
邮筒
火炬
爪甲
7星
阿米哥
勇敢的软件
Jabber客户
VPN客户端
中心浏览器
磅/平方英寸+
开放VPN
切多
可可
元素浏览器
下载管理器
史诗隐私浏览器
互联网下载管理器
小田
Jdownloader
轨道
人造卫星
uCozMedia
维瓦尔第
海猴
群浏览器
UC浏览器
黑鹰
赛博狐
K-甜瓜
冰猫
冰龙
Palemoon
水狐
Falkon浏览器


抵消动态分析


  • 使用睡眠功能。 允许通过超时绕过一些沙箱
  • 销毁Zone.Identifier流。 允许您隐藏从Internet下载文件的事实
  • 参数%filter_list%设置恶意软件将以一秒为间隔完成的进程列表
  • 禁用UAC
  • 禁用任务管理器
  • 禁用CMD
  • 禁用运行窗口
  • 禁用控制面板
  • 禁用RegEdit工具
  • 禁用系统还原点
  • 在资源管理器中禁用上下文菜单
  • 禁用msconfig
  • UAC绕过:

主模块的无效功能


在分析主模块的过程中,确定了负责在网络上传播并跟踪鼠标位置的功能。

蠕虫


在单独的流中,监视可移动媒体连接事件。 当连接到文件系统的根目录时,该恶意软件将以名称scr.exe复制,然后搜索扩展名为lnk的文件。 每个lnk命令都更改为cmd.exe / c start scr.exe并启动<原始命令>并退出

介质根目录中的每个目录都被赋予了Hidden属性,并使用隐藏目录的名称和命令cmd.exe / c start scr.exe&explorer / root,\“%CD%<目录名称> \”&exit 创建了一个扩展名为lnk的文件。

鼠标追踪器


拦截方法类似于键盘所使用的方法。 此功能仍在开发中。

文件活动


方式
内容描述
%Temp%\ temp.tmp
包含尝试绕过UAC的计数器
%startupfolder%\%insfolder%\%insname%
在HPE系统中进行整合的方式
%Temp%\ tmpG \ {当前时间(以毫秒为单位).tmp
主模块备份的路径
%Temp%\ log.tmp
日志文件
%AppData%\ {10个字符的任意序列} .jpeg
屏幕截图
C:\ Users \ Public \ {10个字符的任意序列} .vbs
引导加载程序可以用来关闭系统的vbs文件的路径
%Temp%\ {任意文件夹名} \ {文件名}
引导加载程序用于停靠在系统中的路径

入侵者简介


借助“有线”身份验证数据,我们得以访问命令中心。


这使我们能够确定攻击者的最终邮件:

*** @ gmail [。] com中的junaid [。]

命令中心的域名注册在sg *** @ gmail [。] Com上

结论


在对攻击中使用的恶意软件进行详细分析的过程中,我们能够确定其功能并获得与此案例相关的最全面的危害指标列表。 了解malvari的网络交互机制可以对调整信息保护工具的操作提供建议,并编写稳定的IDS规则。

AgentTesla作为DataStealer的主要危险在于,为了执行其任务,它不需要在系统中进行固定或等待控制命令。 一旦在机器上,他立即开始收集私人信息并将其传输到CnC。 这种攻击性行为在某种程度上类似于密码学家的行为,唯一的区别是后者甚至不需要网络连接。 如果从恶意软件本身清除了受感染的系统后与此家庭发生冲突,则必须更改至少理论上可以存储在上述应用程序之一中的所有密码。

展望未来,假设发送AgentTesla的攻击者经常更改初始引导加载程序。 这样一来,攻击时静态扫描程序和启发式分析程序就不会引起您的注意。 这个家庭立即开始活动的趋势使系统监视器变得无用。 应对AgentTesla的最佳方法是在沙箱中进行初步分析。

在本系列的第三篇文章中,我们将研究AgentTesla使用的其他引导程序,并了解其半自动解包的过程。 不要错过!

杂凑


SHA1
A8C2765B3D655BA23886D663D22BDD8EF6E8E894
8010CC2AF398F9F951555F7D481CE13DF60BBECF
79B445DE923C92BF378B19D12A309C0E9C5851BF
15839B7AB0417FA35F2858722F0BD47BDF840D62
1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD

C&C


网址
sina-c0m [。] icu
smtp [。] sina-c0m [。] icu


雷基


登记处
HKCU \软件\微软\ Windows \ CurrentVersion \运行\ {脚本名称}
HKCU \软件\微软\ Windows \ CurrentVersion \运行\%insregname%
HKCU \软件\微软\ Windows \ CurrentVersion \ Explorer \ StartupApproved \运行\%insregname%

互斥体


没有指标。

档案


文件活动
%Temp%\ temp.tmp
%startupfolder%\%insfolder%\%insname%
%Temp%\ tmpG \ {当前时间(以毫秒为单位).tmp
%Temp%\ log.tmp
%AppData%\ {10个字符的任意序列} .jpeg
C:\ Users \ Public \ {10个字符的任意序列} .vbs
%Temp%\ {任意文件夹名} \ {文件名}

样品信息


名称
不明
MD5
F7722DD8660B261EA13B710062B59C43
SHA1
15839B7AB0417FA35F2858722F0BD47BDF840D62
SHA256
41DC0D5459F25E2FDCF8797948A7B315D3CB0753
98D808D1772CACCC726AF6E9
型式
PE(.NET)
尺码
327680
原始名称
AZZRIDKGGSLTYFUBCCRRCUMRKTOXFVPDKGAGPUZI_20190701133545943.exe
日期戳
2019/07/01
编译器
Vb.net

名称
IELibrary.dll
MD5
BFB160A89F4A607A60464631ED3ED9FD
SHA1
1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD
SHA256
D55800A825792F55999ABDAD199DFA54F3184417
215A298910F2C12CD9CC31EE
型式
PE(.NET DLL)
尺码
16896
原始名称
IELibrary.dll
日期戳
2016/10/11
编译器
微软链接器(48.0 *)

Source: https://habr.com/ru/post/zh-CN479120/


All Articles