freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

基于开源二次开发的窃密软件 HookSpoofer
2023-03-23 17:45:54
所属地 北京

研究人员发现了一种新的窃密软件 HookSpoofer,在网络犯罪论坛上已经开卖。HookSpoofer 具备键盘记录与剪贴板窃取功能,将窃取的数据通过 Telegram 回传给攻击者。HookSpoofer 是使用 C# 开发的,并且受到开源窃密软件 StormKitty 的启发。

传播媒介

HookSpoofer 由名为 Spotify proxyless checker 2022.rar 的压缩文件来传播,其中包含 17 个文件,HookSpoofer 名为 Spotify checker.exe。

感染流程

image.png-270.6kB感染流程

技术分析

样本文件是由 .NET 混淆工具 Confuser 处理后的 .NET 程序。

image.png-120.6kB数组初始化

一大堆数据存储在变量数组中,后续解密并存储在数组 array2 中。

image.png-373.7kB解密循环

解密函数处理后为一个 GCHandle 对象,会创建 koi 模块并调用其函数。

image.png-232.3kB解密 .Net 模块的内存加载代码

解密后,另一个 .NET 编写的 PE 文件由 Confuserex v1.0.0 进行混淆处理。上图显示了 koi 模块如何在内部加载到内存中的主文件 stub.exe。

模块加载到内存后,会弹出一个虚假的错误消息,如下所示。为了转移受害者的注意力,给 koi 模块在后台执行争取时间。

image.png-80.7kB错误提示

image.png-524.6kB弹出错误提示的代码

通过对 koi 模块的分析,是由 Confuserex 加混淆处理过的。为了便于分析,去除了混淆再进行分析。

弹出错误提示后,样本会创建一个互斥量并检查该文件是否在 Startup 子文件夹中。随后,样本检查硬编码的、混淆的 Telegram API 和 Telegram ID。如果未发现就会自行删除,否则通过 GitHub 下载对应的 DLL 文件。

hxxps://raw.githubusercontent.com/LimerBoy/StormKitty/master/StormKitty/stub/packages/DotNetZip.1.13.8/lib/net40/DotNetZip.dll hxxps://raw.githubusercontent.com/LimerBoy/StormKitty/master/StormKitty/stub/packages/AnonFileApi.1.14.6/lib/net40/AnonFileApi.dll

image.png-292.2kB自删除代码

下图显示了经过混淆的 Telegram API 和 Telegram ID 字符串:

image.png-48kB混淆的 Telegram API 和 ID

去混淆并且 base64 解码后的十六进制字节形成一个数组,使用相同的密钥和盐进行 AES 256 解密:

Key: {104,116,116,112,115,58,47,47,103,105,116,104,117,98,46,99,111,109,47,76,105,109,101,114,66,111,121,47,83,116,111,114,109,75,105,116,116,121}Salt: { 255,64,191,111,23,3,113,119,231,121,252,112,79,32,114,156 }

解密后即为 hxxps://api[.]telegram.org/bot6122846074:AAF6rJZMCIphpMPrSWQdU2PZSf14u6p4zeA/

image.png-71.6kB去混淆的 Telegram API 和 ID

反分析技术

调试器检查

通过 CheckRemoteDebuggerPresent 检查调试器。

进程检查

检查特定进程是否存在,例如 process hacker、netstat、tcpview 和 regmon 等。

image.png-132.7kB进程检查

沙盒检查

检查与沙盒相关的 DLL 文件,例如 SbieDll。

image.png-110.9kB沙盒检查

虚拟化检查

通过 WMI 查询检查虚拟环境,如下所示。

image.png-371.3kB虚拟化检查

IP 检查

检查系统的 IP 地址是否与沙盒环境(如 VirusTotal、anyRun 等)相同,如下所示。检测到就会弹出对应的虚假错误消息:

image.png-153.2kB反分析检查

image.png-117.2kB虚假消息

窃取能力

窃取各种 ProtonVPN、OpenVPN、NordVPN 数据:

image.png-278.6kB窃取 VPN 数据

从 Filezilla 的 recentservers.xml 和 sitemanager.xml 窃取数据:

image.png-103.7kB窃取 Filezilla 数据

窃取系统上运行的进程信息,包括进程名、PID、路径:

image.png-114.7kB窃取进程信息

获取屏幕截图:

image.png-184.6kB窃取桌面截图

使用 netsh wlan show profile 命令获取保存的 Wi-Fi 和密码相关的信息以及扫描设备周围的网络(SSID、BSSID):

image.png-285.5kB窃取 WiFi 相关信息

窃取文件:

image.png-126.4kB窃取文件

窃取 Firefox、IE、Opera 和 Edge 浏览器历史记录、Cookie、登录凭据、信用卡等:

image.png-381.5kB窃取浏览器信息

窃取通信软件,如 Telegram、Discord、Pidgin、Outlook 和 Skype:

image.png-392.5kB窃取通信软件

窃取摄像头截图:

image.png-224.4kB窃取摄像头

窃取支付卡信息:

image.png-183kB窃取支付卡

窃取用户按键记录:

image.png-216.5kB窃取用户按键记录

窃取系统相关信息:

image.png-253.3kB窃取系统信息

窃取 %AppdData% 文件夹中所有文件的信息,命名模式为 <md5 of string concat current timedatestamp, username, comp name, culture name, CPU name, GPU name>

所有窃取的数据都会压缩保存在加密的 ZIP 文件中,密码为 <md5 of string concat current timedate, username, comp name, culture name, CPU name, GPU name>

压缩文件

ZIP 文件会被上传到 anonfile.com/,连接会发送到 Telegram Bot 上:

image.png-93.7kBanonfile 文件链接

image.png-111kB报告是否已发送至 Telegram 的信息

下图显示了正在发送的完整数据,标题为 HookSpoofer:

image.png-778.9kB完整数据

与 StormKitty 的关系

研究人员发现 HookSpoofer 实际上是基于 StormKitty二次开发而来,增加了部分功能。借鉴开源代码十分常见,早期在 Typhon、WorldWind Stealer 与 Prynt Stealer 中都发现了 StormKitty 代码的痕迹。

它们发送完整数据如下所示:

image.png-793.6kB相似之处

结论

窃密程序可能会通过各种渠道进行传播,包括电子邮件附件、虚假软件下载与社会工程学技术。

IOC

de90466d983da595e863339c34ee4b6b
7fce055a581c0b116a9679291bf89b7d
474e0cd6bc1f0fb71bbffa1ae7dd8e66

参考来源

Uptycs

# stealer # 窃密木马
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录