文章总结: 文章以抓包为起点,逐步剥离LummaStealer的多层混淆:先借DNS与I/O图定位C2心跳,再解密Steam死信解析器得真实域名;随后从CAB碎片重建AutoIt加载器,RC4+ChaCha20递进解密获最终PE,并给出完整IoC与MITRE映射,提供可复现的脚本与检测思路。 综合评分: 92 文章分类: 恶意软件,漏洞分析,威胁情报,应急响应,网络流量分析
网络流量分析:Lumma Stealer 与 Payload 重构
haidragon
安全狗的自我修养
2026年1月13日 16:39 湖南
官网:http://securitytech.cc/
这是一篇循序渐进的分析指南,目标是分析一款信息窃取型恶意软件。 该窃密程序使用了多层混淆。本文从网络抓包分析开始,一直到解密后的最终 Payload。
按 Enter 或点击可查看大图
01|简介
Lumma Stealer(又名 LummaC2)是目前最广泛使用的信息窃取型恶意软件(Infostealer)之一,以 MaaS(Malware-as-a-Service) 的形式提供。
与其他竞争对手相比,Lumma Stealer 的优势在于其高度复杂性、高可用性以及模块化架构。 不同于较老的窃密程序(如 Vidar、Raccoon)主要依赖大规模垃圾邮件和漏洞利用,Lumma Stealer 采用了多向量投递策略与动态规避技术。
它的目标是窃取敏感信息,包括但不限于:
- 加密货币钱包信息(如 Binance、Ethereum、Electrum)
- 启用了 双因素认证(2FA) 的浏览器扩展
- 浏览器数据(已保存的账号密码、会话 Cookie)
此外,Lumma Stealer 不仅限于浏览器,其架构还允许其攻击其他应用程序,包括:
- 邮件客户端
- FTP 客户端
- VPN 应用
- AnyDesk
- 密码管理器(如 KeePass)
其战术与技术持续演进,例如滥用 LOLBins(Living Off The Land Binaries),如 mshta.exe,来执行混淆命令并利用合法 Windows 工具,从而绕过传统安全检测。
所需工具与安全警告
主要分析工具
- TShark https://www.wireshark.org/docs/man-pages/tshark.html https://tshark.dev/
- Wireshark https://www.wireshark.org/
- Malwoverview https://github.com/alexandreborges/malwoverview
- Zui / Brim https://www.brimdata.io/download/
- autoit-ripper https://github.com/nazywam/AutoIt-Ripper
- PolarProxy TLS Proxy https://www.netresec.com/?page=PolarProxy
- dcode https://www.dcode.fr/en
虚拟环境
- Parrot OS Security
- FlareVM
- REMnux
⚠️ 严重安全警告 所有分析必须在隔离的虚拟环境中进行。 绝对不要在生产系统中运行恶意软件。 在分析前务必创建 VM 快照。
说明 ANY.RUN 报告与我虚拟环境中捕获的网络流量关键发现完全一致。
样本与 PCAP 文件
- Any.run: https://app.any.run/tasks/2add97ab-87ad-4235-96e9-950b475737ae
- MalwareBazaar: https://bazaar.abuse.ch/sample/9f26363ffe8538072b6088d99b05a76074735343ea8046f76af75fcab93c5626/
- Tria.ge: https://tria.ge/260105-wpzpdatmbl
本文适用于:
- SOC 分析师
- 事件响应人员
- DFIR 团队
- 对恶意代码与攻击技术感兴趣的安全研究人员
02|网络流量分析
由于 any.run 平台提供的 PCAP 文件已经来自被感染的工作站,因此无需执行完整的取证分流流程。但在真实环境中,分析 PCAP 文件时我仍建议从 Triage 开始。
说明 在虚拟环境中,我使用 PolarProxy 解密了 TLS 流量。但在最初分析中,我只分析了加密流量,以展示在无法解密通信时应采取的分析流程。
协议层级分析
在分析网络流量时,我首先查看的是 协议层级统计:
Wireshark:
菜单 > 统计 > Protocol Hierarchy
PCAP 文件路径保存在变量
PCAP_FILE
按 Enter 或点击查看大图
Tshark 命令:
tshark -nr $PCAP_FILE -2 -q -z io,phs
可以看到,加密流量占绝对主导。
如果没有 SSLKEYLOGFILE 或 MITM 解密代理,是无法看到通信内容的。
说明
SSLKEYLOGFILE是操作系统中的一个环境变量,用于在 TLS 握手期间导出会话密钥,从而实现被动解密。
DNS 流量分析
接下来我分析 DNS 响应,使用以下命令提取域名与 IP:
tshark -nr $PCAP_FILE \
-Y "(dns.flags.response == 1) && !(dns.a == 192.168.100.0/24)" \
-T fields \
-E separator=\t' \
-e dns.a \
-e dns.resp.name \
| tr ',' '\n' \
| awk 'NF==2' \
| sort -u
命令说明:
- 仅筛选 DNS 响应
- 排除内网 IP
- 提取 IP + 域名
- 去重
输出结果:
其中可疑域名如下:
174.138.43.121 whitepepper.su
188.93.238.9 spielbkr.cyou
在虚拟环境中,还观察到以下域名解析到同一 IP:
174.138.43.121 basilicros.su
174.138.43.121 broguenko.su
174.138.43.121 familyriwo.su
174.138.43.121 hammernew.su
174.138.43.121 heavylussy.su
174.138.43.121 homuncloud.su
174.138.43.121 izzardtow.su
174.138.43.121 spielbkr.cyou
174.138.43.121 whitepepper.su
23.198.186.30 steamcommunity.com
I/O Graph 行为分析
使用 Wireshark I/O Graphs 可将通信与时间关联,用于识别:
- C2 心跳
- 数据外泄峰值
- 周期性通信行为
分析结果显示:
spielbkr.cyou(CYOU IP)最先被访问- 随后访问
whitepepper.su(SU IP)
通信特征表明这是 心跳通信,并未传输数据。
Steam Community 作为 Dead Drop Resolver
当访问 steamcommunity.com 时,请求指向:
hxxp://steamcommunity.com/profiles/76561199880317058
该页面已被删除,通过 Wayback Machine 找到历史快照:
页面中仅包含字符串:
lnndcq.eza/ktbl
结论: Steam Community 页面被滥用为 Dead Drop Resolver(死信投递解析器)。
Dead Drop Resolver 并非真正的 C2,仅用于存放编码后的配置或 C2 信息。
使用 ROT-15 解码后得到:
accsrf[.]top/ziqa
03|恶意样本初始分析(Triage)
使用 Exiftool 发现元数据被伪造。
随后使用 Binwalk 发现样本内包含一个 Microsoft Cabinet(CAB) 文件,内含 9 个碎片文件:
- Mn.bin
- Impacts
- Belfast
- Entities
- Hyundai
- Sexo.bin
- System.bin
- Announce.bin
- Modern.bin
04|Batch 脚本反混淆
Mn.bin 是一个高度混淆的批处理脚本,通过变量替换方式隐藏真实命令。
脚本主要逻辑:
- 创建目录
692529 - 生成
Mounted.exe(PE MZ 头) - 拼接多个碎片文件
- 执行 AutoIt Loader
该技术用于绕过杀毒检测。
05|二进制文件重构
使用 Python 脚本重建:
Mounted.exe(AutoIt 解释器)k.a3x(编译后的 AutoIt 脚本)
校验发现:
Mounted.exe与 官方 AutoIt 3.3.17.1 Beta 完全一致
06|AutoIt Payload 提取
使用 autoit-ripper 解包 k.a3x,得到多层混淆脚本。
关键点:
- RC4 Key:
451686908 - 解密后使用 ChaCha20
- Payload 被注入到
explorer.exe
最终 Payload:lumma-stealer.exe
07|检测规则与 MITRE ATT&CK
执行(Execution)
- T1059.003 – Windows 批处理
- T1059.010 – AutoIt
规避(Defense Evasion)
- T1027 – 文件混淆
- T1140 – 解码
- T1055.001 – 进程注入
- T1497.001 – 沙箱规避
凭证访问
- T1555.003 – 浏览器凭证
- T1539 – 会话 Cookie 窃取
C2
- T1071.001 – HTTPS
- T1102.001 – Dead Drop Resolver
- T1573.001 – ChaCha20 加密通信
08|IoC(指标)
IP
- 174.138.43.121
- 188.93.238.9
域名 / URL / Hash / Key
(已按原文完整保留)
- 公众号:安全狗的自我修养
- vx:2207344074
- http://gitee.com/haidragon
- http://github.com/haidragon
- bilibili:haidragonx
#
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:安全狗的自我修养 haidragon《网络流量分析:Lumma Stealer 与 Payload 重构》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论