故事从收到一封神秘的礼品卡信件开始…… - 嘶吼 RoarTalk – 网络安全行业综合服务平台,4hou.com

故事从收到一封神秘的礼品卡信件开始……

ang010ela 恶意软件 2020-03-30 11:00:00
2398723
收藏

导语:研究人员发现黑客组织利用人们对USB设备的信任来武器化USB设备以攻击用户。

攻击

如下是一封礼品卡的信,信中还附有一个USB设备。但是该USB设备实际上含有恶意软件。

Gift Card Letter

图 1. 含有恶意USB设备的礼品卡

分析

研究人员查看设备的相关信息,发现有打印的“HW-374”信息,谷歌搜索发现shopee.tw一个“BadUSB Leonardo USB ATMEGA32U4”。

BadUSB

图 2: 与收到的USB设备匹配的网站图片

该设备使用了Arduino微控制器ATMEGA32U4,被变成用来模拟USB键盘。因为PC设备默认是相信USB键盘设备的,插入电脑后,键盘模拟器就会自动注入恶意命令。

为了快速获取UBS的payload,研究人员将其连接到一个air-gapped的笔记本,安装的是Ubuntu系统,研究人员分析发现了以下payload。

Powershell Payload

Payload

图 3. 使用VIM拦截Payload,发现一个混淆的PowerShell脚本

解混淆PowerShell命令一个简单的密文替换。

Decoding the payload

图 4.使用CyberChef解混淆的PowerShell命令

解混淆的字符串中有一个从hxxps://milkmovemoney[.]com/st/mi.ini处下载第二阶段PowerShell代码的命令。

Deobfus

图 5. 下载的第二阶段Powershell代码

 Downloaded script

图6 下载的脚本

第二阶段PowerShell执行流如下:

· 复制wscript.exe 到 %AppData%\Microsoft\Windows\wipre.exe;

· 解码JS命令,并保存为prada.txt;

· 用命令“cmd.exe /c wipre.exe /e:jscript prada.txt”执行prada.txt;

· 显示伪造的消息框警告。

Fake Message Box

图 7. 伪造的消息框警告

Javascript Payload

保存为prada.txt的JS代码是第3阶段payload,使用Windows内置的脚本wscript.exe来执行。

Prada.txt

图 8. 保存为Prada.txt的反混淆的JS代码

JS是用简单变量替代混淆的。脚本的主要功能是以唯一ID来注册受感染的主机给C2服务器,然后接收额外的JS代码,JS代码用eval()函数。

下面是JS代码的执行流:

1、获取当前UTC时间生成唯一ID;

2、检查脚本是否位于%AppData%\Microsoft\Windows文件夹中,如果并在该文件夹中就删除;

3、延迟2分钟执行。

4、生成含有以下信息的数据:

· group : f1 (硬编码)

· rt : 2 (硬编码)

· secret : secret hash (硬编码)

· time : 120000

· uniq_id : current UTC milliseconds

· id : MAC address and hostname (使用WMI查询)

5、URL编码该数据并用随机生成的key来XOR编码数据;

6、将生成的XOR key加入到编码的数据中

7、合成一个含有参数的HTTP POST body:

kbaxmaconhuc=

8、合成一个 URL 路径:

https:///

9、使用下面的HTTP请求header以HTTP POST raw body发送数据到C2 url:

User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:69.0) Gecko/20100101 Firefox/50.0'
Content-Type: %application/x-www-form-urlencoded'

10、C2服务器响应编码的JS代码

11、使用eval() 解码和执行JS代码。

在该事件中,C2服务器是活动的,会响应如图9所示编码的数据。编码的数据用XOR key来解码。数据和key都是限定在“&_&”或URL编码的“%26_%26”。解码的数据中会发现一个将会在受感染的主机中执行的JS代码。

Encoded Data

图 9: 用编码的数据响应C2服务器

JS代码在解码时,会发现一个从受感染主机中收集系统信息的代码。

Figure9

图 10: 解混淆的JS代码,是C2服务器发送的代码的一部分

收集后发送给C2服务器的系统信息包括:

· 用户名;

· 主机名;

· 用户的系统权限。

使用WMI查询获取以下信息:

· 进程所有者;

· 域名;

· 计算机型号;

· 操作系统信息;

· 操作系统名;

· OS build;

· OS版本;

· 内存容量;

· 可用内存;

· 操作系统注册的用户;

· 操作系统注册的组织;

· 操作系统序列号;

· 安装日期;

· 操作系统架构;

· 操作系统产品类型;

· 语言代码;

· 时区;

· 用户数;

· UAC级别权限;

· Office和Adobe acrobat安装情况;

· 运行的进程列表;

· 受感染的主机运行在虚拟环境中。

收集的信息发送给C2服务器后,主JS代码会进入一个2分钟的休眠循环,然后从C2服务器获取新的命令。完整攻击流如下所示:

Attack_flow

图 11: 攻击流

总结

USB设备随处可见,而且被广泛使用,一些人认为USB设备是安全无害的。但是USB控制器芯片可以重新编程,这类设备可以被用来发起攻击和感染用户计算机。而这类USB设备被安全领域专业人员广泛使用,风险不言而喻。这篇文启示我们:不要相信此类设备。

文章后续更新:发布这篇文章后,我们已经收到多方面的确认,该活动与FIN7 APT活动的IOC匹配。FIN7是一个网络犯罪集团,至少从2015年起就开始瞄准酒店和零售业。

本文翻译自:https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/would-you-exchange-your-security-for-a-gift-card/如若转载,请注明原文地址
  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论

 
本站4hou.com,所使用的字体和图片文字等素材部分来源于原作者或互联网共享平台。如使用任何字体和图片文字有侵犯其版权所有方的,嘶吼将配合联系原作者核实,并做出删除处理。
©2022 北京嘶吼文化传媒有限公司 京ICP备16063439号-1 本站由 提供云计算服务