Fredrickighile/malware-traffic-analysis
GitHub: Fredrickighile/malware-traffic-analysis
这是一个基于Wireshark的网络取证分析项目,用于调查NetSupport Manager RAT感染的恶意流量,提取威胁情报并重建攻击链。
Stars: 1 | Forks: 0
# 恶意流量分析 — NetSupport Manager RAT调查
**分析师:** Fredrick Ighile | 网络安全分析师 | 加拿大
**GitHub:** [github.com/Fredrickighile](https://github.com/Fredrickighile) | **LinkedIn:** [linkedin.com/in/fredrick-ighile](https://linkedin.com/in/fredrick-ighile)
## 目录
1. [项目概述](#project-overview)
2. [使用的工具](#tools-used)
3. [场景描述](#the-scenario)
4. [步骤 1 — 初步流量检查](#step-1--initial-traffic-examination)
5. [步骤 2 — 识别可疑流量](#step-2--identifying-suspicious-traffic)
6. [步骤 3 — 受害者识别](#step-3--victim-identification)
7. [步骤 4 — DNS 信标分析](#step-4--dns-beaconing-analysis)
8. [步骤 5 — 恶意软件识别](#step-5--malware-identification)
9. [提取的 IOC](#iocs-extracted)
10. [攻击时间线](#attack-timeline)
11. [事件响应措施](#incident-response-actions)
12. [MITRE ATT&CK 映射](#mitre-attck-mapping)
13. [关键要点](#key-takeaways)
## 项目概述
一台 Windows 域控制器被远程访问木马入侵。我使用 Wireshark 分析了 26,922 个真实网络数据包,以识别受感染系统、追踪攻击者的 C2 基础设施、提取 IOC 并重建完整的攻击时间线。
**本项目展示了什么:**
- 网络取证与数据包分析
- 恶意软件 C2 通信识别
- 为威胁情报提取 IOC
- 专业的事件响应文档
**PCAP 来源:** [malware-traffic-analysis.net](https://malware-traffic-analysis.net) — 2024-11-26 练习
## 使用的工具
| 工具 | 用途 |
| ----------------- | ---------------------------- |
| Wireshark 4.4.7 | 数据包捕获分析 |
| 显示过滤器 | 流量隔离与搜寻 |
| 协议分析 | HTTP, DNS, SMB2, TCP/IP 解析 |
| MITRE ATT&CK | 技术映射 |
## 场景描述
一家医疗研究机构的网络流量被捕获用于分析。其中一个内部系统行为可疑——不断连接到一个未知的外部 IP,并查询异常的域名。
**我的任务是:** 查明什么被感染了、运行着什么恶意软件,以及攻击者拥有什么访问权限。
## 步骤 1 — 初步流量检查
在 Wireshark 中打开 PCAP 文件显示:
- **总数据包:** 26,922
- **捕获时长:** 53 分钟 (04:49:38 — 05:42:29 UTC)
- **可见协议:** DNS, HTTP, HTTPS, TCP, SMB2, NBNS
- **内部网络:** 10.11.26.0/24

**第一印象:** 大部分是正常的 Windows 流量——但向一个陌生外部 IP 发出的 HTTP POST 请求立即引起了注意。
## 步骤 2 — 识别可疑流量
**使用的 Wireshark 过滤器:**
```
http.request or dns
```
这将 26,922 个数据包减少到 417 个——仅专注于恶意软件最常藏身的 HTTP 请求和 DNS 查询。
**发现的危险信号:**
| 指标 | 为何可疑 |
| ------------------------------------- | -------------------------------------------- |
| 向 `194.180.191.64/fakeurl.htm` 发起 HTTP POST | 未知 IP,URL 看起来是伪造的 |
| User-Agent: `NetSupport Manager/1.3` | 合法工具被滥用于 RAT |
| 对 `wpad.nemotoads.health` 的 DNS 查询 | 拼写错误域名(typosquatting),重复查询 |
| 端口 443 上的 HTTP 流量 | 443 端口用于 HTTPS——这是未加密的 HTTP(规避尝试) |

## 步骤 3 — 受害者识别
**目标:** 确切找出哪台机器被感染。
**使用的过滤器:**
```
smb2 and ip.src == 10.11.26.183
```
SMB2(Windows 文件共享协议)的数据包中包含主机名。展开 Tree Connect Request 揭示了:
```
\\NEMOTODES-DC\Shared_Files
```
**从以太网 II 报头提取的 MAC 地址:**
```
d0:57:7b:ce:fc:8b (Intel Corporation)
```
**受害者摘要:**
| 属性 | 值 |
| -------- | --------------------------- |
| IP 地址 | 10.11.26.183 |
| 主机名 | NEMOTODES-DC |
| MAC 地址 | d0:57:7b:ce:fc:8b |
| 设备类型 | **Windows 域控制器** |
⚠️ **关键:** 这是一台域控制器——任何 Windows 环境中最敏感的系统。控制这台机器的人就能控制整个域。

## 步骤 4 — DNS 信标分析
**使用的过滤器:**
```
dns.qry.name and ip.src == 10.11.26.183
```
**合法 DNS(基准):**
- www.msftconnecttest.com
- dns.msftncsi.com
- ctldl.windowsupdate.com
**可疑 DNS(恶意):**
- `wpad.nemotoads.health` — 重复多次查询
- `NEMOTODES-DC.nemotoads.health`
- `wpad.mshome.net`
**DNS 信标意味着什么:** 恶意软件反复查询这些域名以与其 C2 基础设施保持连接。DNS 通常被防火墙放行——攻击者故意利用它来混入正常流量。
域名 `nemotoads` 是 `nemotodes`(该机构的研究主题)的拼写错误版本——故意尝试在日志中看起来合法。

## 步骤 5 — 恶意软件识别
**使用的过滤器:**
```
http.request and ip.src == 10.11.26.183
```
展开一个 POST 请求的 HTTP 头部揭示了:
```
POST http://194.180.191.64/fakeurl.htm HTTP/1.1
User-Agent: NetSupport Manager/1.3
Content-Type: application/x-www-form-urlencoded
Content-Length: 36
Host: 194.180.191.64
Connection: Keep-Alive
```
**识别出的恶意软件:NetSupport Manager RAT v1.3**
NetSupport Manager 是 IT 团队使用的合法远程桌面软件。攻击者将其武器化是因为:
- 它被许多安全工具加入白名单
- 提供完全的远程访问(屏幕、文件、键盘)
- 比自定义恶意软件更难检测
**另一个危险信号:** 端口 443 上的 HTTP 流量。443 端口保留用于 HTTPS(加密)。在其上运行纯 HTTP 是一种典型的规避技术——扫描 HTTPS 的安全工具会完全错过它。

## 提取的 IOC
这些是从本次调查中提取的产物——可以加载到 SIEM、防火墙或威胁情报平台中。
**网络 IOC:**
| 类型 | 值 | 用途 |
| -------- | --------------------------------- | ------------------------------ |
| IP 地址 | `194.180.191.64` | C2 服务器 — 在防火墙阻断 |
| 域名 | `wpad.nemotoads.health` | 恶意域名 — 在 DNS 阻断 |
| 域名 | `NEMOTODES-DC.nemotoads.health` | 恶意域名 — 在 DNS 阻断 |
| URL | `http://194.180.191.64/fakeurl.htm` | C2 端点 — 在网络代理阻断 |
| User-Agent | `NetSupport Manager/1.3` | RAT 标识符 — 创建 SIEM 告警 |
**主机 IOC:**
| 属性 | 值 |
| -------- | --------------- |
| 受感染 IP | 10.11.26.183 |
| 主机名 | NEMOTODES-DC |
| MAC 地址 | d0:57:7b:ce:fc:8b |
**行为 IOC:**
- 向 `/fakeurl.htm` 发起的 HTTP POST 请求
- 端口 443 上使用未加密 HTTP(协议不匹配)
- 以固定间隔发送 36 字节有效载荷(心跳信标)
- 持久保持 Keep-Alive 连接
## 攻击时间线
| 时间 (UTC) | 事件 |
| ------------------- | ------------------------------------------------------------- |
| 04:49:38 | 捕获开始 — NEMOTODES-DC 显示正常的 Windows 活动 |
| 05:21:37 | 与 194.180.191.64 建立第一个 TCP 连接 |
| 05:22:07 | 检测到向 C2 服务器发出的第一个 HTTP POST 请求 |
| 05:32:52 | C2 会话完全建立 — 开始定期信标通信 |
| 05:35:06 | 开始向 wpad.nemotoads.health 发起 DNS 信标查询 |
| 05:35:37 — 05:42:27 | 持续 C2 活动 — 攻击者拥有活跃的远程访问权限 |
| 05:42:27 | 捕获结束 — 感染仍然活跃 |
**关键观察:** 第一次 C2 通信直到捕获开始后 32 分钟才出现。恶意软件在记录此流量之前已经安装——这意味着最初的入侵发生在更早的时候,且未被此次捕获记录。
## 事件响应措施
当此警报在真实的 SOC 中触发时,将会采取以下措施:
**立即响应 (0-30 分钟):**
- 将 NEMOTODES-DC 从网络中隔离(**不要**关机——为取证保留内存)
- 在防火墙阻断 `194.180.191.64`
- 在 DNS 安全设备中阻断恶意域名
**短期响应 (1-4 小时):**
- 获取内存镜像进行取证分析
- 扫描所有域系统,查找 NetSupport Manager 安装
- 检查 Active Directory 是否有未授权的更改
- 检查防火墙日志,查看是否有其他内部系统联系了 C2
**恢复措施 (24 小时内):**
- 从干净备份重建域控制器
- **重置所有域密码** — 一台被入侵的 DC 意味着所有凭据都不可信
- 两次重置 krbtgt 密码(防止 Kerberos 票据滥用)
- 验证组策略完整性
## MITRE ATT&CK 映射
| 技术 | ID | 描述 |
| ----------------------------------------- | --------- | ------------------------------------- |
| 暴力破解:密码猜测 | T1110.001 | 疑似的初始访问方法 |
| 远程访问工具 | T1219 | 使用 NetSupport Manager 进行 C2 |
| 应用层协议:Web 协议 | T1071.001 | 使用 HTTP 进行 C2 通信 |
| DNS | T1071.004 | 使用 DNS 信标维持 C2 连接 |
| 有效账户 | T1078 | 域控制器凭据面临风险 |
| 协议隧道 | T1572 | 通过端口 443 运行 HTTP(规避) |
## 关键要点
- **协议不匹配是危险信号。** 端口 443 上的 HTTP 是典型的规避技术。务必检查流量是否与端口预期的协议匹配。
- **合法工具会被武器化。** NetSupport Manager、AnyDesk、TeamViewer — 攻击者使用真实软件,因为它能绕过安全控制。User-Agent 字符串是捕获这种情况的可靠方法。
- **DNS 从不说谎。** 即使 HTTP 流量被加密,DNS 查询也能揭示主机试图访问哪些域名。DNS 信标是最可靠的 C2 检测方法之一。
- **一台被入侵的域控制器意味着整个域被完全入侵。** 每一个凭据、每一台系统、每一项策略 — 全部都可能被访问。响应必须果断且彻底。
- **26,922 个数据包 — 417 个是关键。** 良好的过滤是分析从几小时缩短到几分钟的关键。知道首先针对哪些协议进行分析是 SOC 的核心技能。
_作为网络安全作品集项目的一部分构建。PCAP 来自 malware-traffic-analysis.net(练习环境)。_
标签:C2通信, DAST, DNS, IOC提取, IP 地址批量处理, NetSupport Manager RAT, SMB2, TCP/IP, Windows域控制器, Wireshark, 协议分析, 句柄查看, 威胁情报, 安全事件, 并发处理, 开发者工具, 恶意软件分析, 攻击时间线, 数字取证, 权限提升, 网络安全, 自动化脚本, 远程访问木马, 隐私保护