关键词
信息窃取器、加密货币、浏览器扩展
自2022年初以来,已经有超过9.3万名用户受到影响。由于恶意软件主要通过种子和软件共享网站传播,ViperSoftX活动分布在世界各地。受影响最大的国家是印度(7000+)、美国(6000+)和意大利(5000+)。
图1:自2022年初以来的目标国家地图
ViperSoftX和VenomSoftX都专注于通过扫描本地文件或使用更复杂的技术从受害的计算机中窃取加密货币。在下表中,研究人员展示了攻击者对相关加密货币钱包总收益的估计值。
加密货币 |
损失加密货币量 |
等值美元数 |
Bitcoin |
5.947 BTC |
$116812.81 |
Ethereum |
5.312 ETH |
$7826.13 |
Dogecoin |
34355.528 DOGE |
$3474.47 |
Bitcoin Cach |
9.11997194 BCH |
$1021.39 |
Cosmos (ATOM) |
65.153 ATOM |
$846.44 |
Tezos |
191.445553 XTZ |
$241.32 |
Dash |
4.72446445 DASH |
$199 |
截至2022年11月8日,ViperSoftX和VenomSoftX盗取加密货币总计约为130421.56美元。这只是转移到攻击者加密货币钱包的金额,不包括其他活动的其他可能利润。
(1)ViperSoftX的攻击链可以总结为下图的流程:
图2:攻击链
-
从文件末尾读取4个字节,偏移量为0x24 -
使用SHA256计算偏移值 -
读取自-0x20开始的其余字节,并将其与哈希值进行比较
密钥 |
71C54C3BCFFCE591A70C0B5BA6448327BC975D89F3021053125F1CB9A7C0AF72 |
IV |
C0BA0B56EAC742AFD4CB680EE0EB4FB0 |
图3:模板原始数据
-
一个日志文件,其中包含一个隐藏的额外攻击载荷,加载ViperSoftX PowerShell -
任务调度程序的XML文件 -
SyncAppvPublishingServer.vbs(无害),用于为持久性创建计划任务 -
被破解的应用程序二进制文件(通常是无害的) -
清单文件
图4:第17034行有一行恶意代码的日志文件示例
图5:PowerShell脚本的第一个变体——简单的加载器
图6:第17034行有一行恶意代码的日志文件示例(第二种变体)
-
计算机名称 -
用户名 -
操作系统及其架构 -
安装的杀毒软件或其他安全软件以及防护措施是否处于活动状态
图7:Host头欺骗
-
%USERPROFILE%Desktop -
%USERPROFILE%OneDriveDesktop -
%PUBLIC%Desktop -
%ALLUSERSPROFILE%MicrosoftWindowsStart MenuPrograms -
%APPDATA%MicrosoftWindowsStart MenuPrograms -
%APPDATA%MicrosoftInternet ExplorerQuick LaunchUser PinnedTaskBar
图8:伪装成GoogleSheets的浏览器扩展
文件名 |
功能 |
128.png |
用于伪装扩展的GoogleSheets图标 |
content.bootstrap.js |
进行而已操作,通过MQTT发送结果 |
manifest.json |
扩展的manifest文件 |
rules.json |
针对Kucoin虚拟货币的URL过滤器 |
webpack_block.js |
针对Blockchain.com的请求篡改与凭证窃取 |
webpack_bnb.js |
针对Binance的请求篡改与凭证窃取 |
webpack_cb.js |
针对Coinbase的请求篡改与凭证窃取 |
webpack_common.js |
包含用于模式匹配、剪贴板监视和窃取的地址簿 |
webpack_content.js |
当没有检测到货币交易时,将受害者输入的地址替换为攻击者的地址 |
webpack_gt.js |
针对Gate.io的请求篡改与凭证窃取 |
webpack_kuc.js |
针对Kucoin的请求篡改与凭证窃取 |
图9:确定要加载哪些模块的过程(去混淆后)
ip: <client_ip>
data: <data>
图10:一段可能的地址簿(不完整,去混淆后)
Site: <URL>
Browser: <USER-AGENT>
Clipboard: <CLIPBOARD-WALLET-ADDRESS>
Time: <TIMESTAMP>
-
前两个按钮 Attacker address和User address, 填充了用于攻击者的钱包地址到 “Dynamic content to be pasted” 行; -
“Get value” 按钮触发getter,但未触发钩子,因为提供的地址与cryptowallet地址模式不匹配(太短); -
用户填入了一个完整的地址; -
“Get value” 按钮创建了一个包含输入地址的localStorage项; -
localStorage中的地址被替换为攻击者的地址。
图11:攻击流程演示
正如上文提到的,VenomSoftX专注于五个不同的加密交易所网站,即Blockchain.com,Binance,Coinbase,Gate.io和Kucoin。
在这些模块中,恶意软件试图通过篡改网站操作的API请求,例如撤回货币或发送安全代码。这是通过在API请求上创建钩子,解析其结构并用所需攻击者的内容代替响应体来完成的,这通常意味着接收者的地址也被攻击者的地址替代。如果已知余额,则将金额设置为可用帐户余额的值。然后,恶意软件在用户无法注意的情况下发出请求,将受害者的余额全部窃取。
注意用户几乎没有机会意识到这一点。例如,与常见的剪贴板篡改相比,这种“篡改”是在较底层的级别上执行的。由于区块链/分类账上的交易本质上是不可逆的,因此当用户随后检查付款的交易历史时,已经太迟了。
唯一不同于其他文件的文件是webpack_block.js。此模块侧重于www.blockchain[.]com,它试图劫持https://blockchain[.]info/wallet,通过修改密码字段的getter以窃取输入的密码。发送API请求后,从请求中提取钱包地址,与密码绑定,并通过MQTT将Base64编码后的JSON发送给收集器。
由于剩下的钩子在忽略API差异后在较高层面上并无差异,因此这里只以Binance模块为例。
Binance模块识别六个调用恶意交互的不同API调用。当用户登录到站点时,请求API https://www.binance[.]com/bapi/asset/v3/private/asset-service/asset/get-user-asset。VenomSoftX会调用该模块,解析并保存受害者帐户上的所有可用资产。当用户试图操纵存款,例如使用该API:https://www.binance[.]com/bapi/capital/v3/private/capital/withdraw/apply取款时,恶意软件会拦截该请求并篡改请求主体,如果找到兼容的攻击者地址,则修改地址以将资金重定向到攻击者的地址。请求的金额也设置为上一步骤获得的最大可用金额。篡改后,请求会像无事发生一样被进一步传递,从而有效地窃取了受害者钱包的全部资产。
在本文中,仔细分析了ViperSoftX一个长期活跃的信息窃取器,以及它的恶意浏览器插件VenomSoftX。本文描述了两个信息窃取器的感染利用链,以及原始攻击载荷如何在受感染的系统上隐藏和解密。
(1)GitHub仓库
https://github.com/avast/ioc/blob/master/ViperSoftX/
编辑|王浩钧
审校|何双泽、金矢
本文为CNTIC编译整理,不代表本公众号观点,转载请保留出处与链接。联系信息进入公众号后点击“关于我们”可见。
原文始发于微信公众号(国家网络威胁情报共享开放平台):ViperSoftX:隐藏在系统日志中并传播VenomSoftX的窃密程序
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论