网络流量分析:LummaStealer与Payload重构

admin 2026-01-15 00:00:57 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 文章以抓包为起点,逐步剥离LummaStealer的多层混淆:先借DNS与I/O图定位C2心跳,再解密Steam死信解析器得真实域名;随后从CAB碎片重建AutoIt加载器,RC4+ChaCha20递进解密获最终PE,并给出完整IoC与MITRE映射,提供可复现的脚本与检测思路。 综合评分: 92 文章分类: 恶意软件,漏洞分析,威胁情报,应急响应,网络流量分析


cover_image

网络流量分析: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 的优势在于其高度复杂性、高可用性以及模块化架构。 不同于较老的窃密程序(如 VidarRaccoon)主要依赖大规模垃圾邮件和漏洞利用,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 重构》

评论:0   参与:  0