一项与巴西实体有关联的银行恶意软件活动利用名为 KREMLIN 的工具,在不显示用户同意请求的情况下,向 Google Chrome 和 Microsoft Edge 浏览器安装恶意扩展。根据 Elastic Security Labs 的信息,该活动自2025年年中开始活跃,至少实施了七次活动,使用了伪装成12家银行的诱饵。
当用户打开一个看似银行收据、发票、付款记录或商业文件的 JavaScript 文件时,感染便会开始。在通过针对分析环境的检查后,该文件会显示虚假的错误,同时下载 Node.js、创建计划任务以维持持久性,然后从 Ethereum 网络上的智能合约获取扩展载荷的位置。
恶意软件如何绕过浏览器保护?
KREMLIN 会等待浏览器关闭,或在检测到浏览器处于空闲状态时终止其运行,然后将扩展复制到 Chrome 和 Edge 的配置文件目录。随后,它启用开发者模式,并将扩展注册到 Chromium 浏览器的 Secure Preferences 文件中。
其中最突出的部分,是重新创建 Chromium 设置完整性验证机制。该恶意软件使用浏览器依赖的加密密钥来保护敏感数据,然后重新生成所需的 HMAC 值和加密哈希,使扩展在浏览器看来是有效的,尽管它并未获得用户同意。Elastic 将这种技术描述为已有文档记录、但在恶意软件中很少见的技术。
监视浏览会话的扩展
安装的扩展伪装成 AVSync,并执行广泛的数据收集操作,包括:
- 窃取 Cookie、本地存储数据和会话存储数据。
- 记录表单中输入的文本,包括密码。
- 截取屏幕截图和网页源代码。
- 列出打开的标签页和浏览历史记录。
- 拦截 HTTP 请求正文和请求头。
- 注入由攻击者控制的 HTML 内容并重定向点击。
- 通过 WebSocket 连接接收命令。
该工具并不局限于扩展本身;它还会收集浏览器数据库、Cookie、已安装的扩展,以及解密保护部分数据所需的 App-Bound 加密密钥。
基础设施和活动规模
KREMLIN 活动使用 Ethereum 智能合约作为查找载荷位置的机制,还将载荷隐藏在通过 Internet Archive 服务托管的 JPEG 图像中。在较新的活动中,REMCOS 被部署为远程访问工具,而此前的活动使用了 Pulsar RAT。研究人员推测,这种转变是因为 REMCOS 功能更加丰富。
Elastic 确定了发布和更新智能合约的 Ethereum 钱包,并表示该钱包处理了约20,800 USDT 的入账转账和19,000 USDT 的出账转账。此外,Elastic 确认了1,515台受感染系统,其中绝大多数位于巴西。
为什么这条消息很重要?
这项活动的重要性在于,它不仅依靠欺骗用户来安装扩展,还会篡改浏览器文件及其安全机制,使扩展看起来像是受信任的扩展。实际上,这意味着仅凭存在不熟悉的扩展,或缺少同意窗口,并不足以单独发现入侵。从编辑角度来看,这种方式将会话数据窃取的范围从直接窃取密码扩大到活动会话、页面内容和 Web 请求,因此 Elastic 发布的入侵指标对于调查和响应工作十分重要。
Elastic 通过注册攻击者用作分析环境检查信号的域名,成功中断了当前活动;恶意软件加载器随后会将符合感染条件的系统判定为可疑环境,并停止执行。来源并未证明这一措施完全清除了基础设施,但它通过这种机制阻止了当前活动。