felixrayyen-alt/Mirai-Botnet-Static-Analysis

GitHub: felixrayyen-alt/Mirai-Botnet-Static-Analysis

一份基于 Ghidra 和 Linux CLI 工具对 Mirai 僵尸网络 ELF 32 位恶意软件进行静态分析与逆向工程的学术报告。

Stars: 0 | Forks: 0

# Mirai 僵尸网络静态分析 对 Mirai 恶意软件 ELF 32-bit 二进制文件的静态分析与逆向工程。 image # 🦠 Mirai 僵尸网络 - 恶意软件静态分析 本仓库包含了一份详尽的关于臭名昭著的 **Mirai 恶意软件**(ELF 32-bit 二进制文件)的**静态分析**与**逆向工程**报告。本项目是作为日惹阿米克姆大学(Universitas Amikom Yogyakarta)逆向工程期中考试的一部分进行的。 ## 📌 执行摘要 Mirai 是一种自我传播的僵尸网络恶意软件,旨在感染基于 Linux 的物联网设备。它以存在漏洞的智能设备为目标,将其招募到僵尸网络中,从而发起大规模的分布式拒绝服务攻击。本分析的重点在于揭示其二进制结构、嵌入的字符串、网络依赖关系和内部战术功能,而无需直接执行恶意软件(静态分析)。 ## 🔍 技术规格(基本信息) 根据静态分析工具的分析,目标二进制文件具有以下规格: * **文件名:** `mirai.elf` * **文件大小:** 184 KB * **文件类型:** ELF 32-bit LSB 可执行文件,Intel 80386 (x86),版本 1 (SYSV) * **链接方式:** 静态链接 * **符号:** 未 strip(包含调试信息) * **MD5 哈希值:** `f5db0e21d290bf7b2d23959a530f2e3e` * **SHA-256 哈希值:** `d03dab10036fc5967786b13a2f5ef4d71f330eda1a575e0b6f62ae38c96361b1` ## 🛠️ 使用的工具 * **Ghidra (v11.x):** 用于二进制反编译、控制流图分析和已定义字符串提取。 * **Linux CLI 工具:** `file`、`readelf`、`md5sum`、`sha256sum` 和 `strings`。 ## 💡 主要发现与方法论 ### 1. Header 分析 分析确认了有效的 Linux 可执行文件头结构。Ghidra 成功识别了位于基地址处的 **Magic Bytes** 文本字符串 `ds "ELF"`,确认其为有效的 Unix/Linux 系统可执行格式。 ### 2. 字符串提取与功能 使用 Ghidra 的 *Defined Strings* 和 Linux CLI 工具,共发现了 486 处字符串位置。提取出的关键字符串包括: * 引用 `/proc/` 文件系统目录(`/proc/%d/maps`, `/proc/%d/exe`),用于进行密集的进程枚举。 * 嵌入的 Command and Control (C2) 服务器 IP 地址:**`176.65.139.79`**。 * 内部模块的指标,如 `[attack]_Starting...` 和 `[killer]_starting...`。 ### 3. 反编译逻辑与行为 通过 Ghidra 的反编译工具,逆向工程了两个主要的函数: * **Killer 函数(`killer_mirai_exists`):** 自动扫描 `/proc/` 目录,基于文件名启发式方法发现并强制终止(`kill -9`)竞争的恶意软件进程,以完全垄断设备资源。 * **Attack 函数(`udp_gen_worker`):** 利用 **Raw Sockets** 构造伪造的 UDP 数据包(IP Spoofing),通过多线程进行大规模传输,从而实施极具破坏性的分布式拒绝服务攻击。 ## 📂 仓库内容 * `MIRAI_ANALYSIS_REVERSE_ENGINEERING.pdf` - 完整的学术分析报告(印尼语)。 * `/screenshots/` - 来自 Ghidra 和终端操作的技术截图。 ## ⚠️ 免责声明 本分析严格仅用于教育、学术研究和网络安全意识普及目的。**本仓库内不共享任何恶意二进制文件或实时的漏洞利用代码。**
标签:DAST, ELF文件, Ghidra, 云安全监控, 云资产清单, 威胁情报, 开发者工具, 恶意软件分析, 逆向工程, 静态分析