RedHarlowCore/NjRAT-Malware-Analysis
GitHub: RedHarlowCore/NjRAT-Malware-Analysis
该项目是一份 NjRAT v0.7d 恶意软件的逆向工程分析报告,详细记录了去混淆、反分析绕过与 IoC 提取的完整过程。
Stars: 0 | Forks: 0
# 📑 NjRAT v0.7d 恶意软件分析与去混淆报告
## 🎯 执行摘要
本报告详细介绍了对 **NjRAT (v0.7d)** 样本的逆向工程、去混淆和配置提取过程。该恶意软件经过了深度混淆以防止被分析,但借助静态分析工具,我们成功提取了所有关键的妥协指标。
* **恶意软件家族:** NjRAT
* **版本:** 0.7d
* **使用的工具:** Detect It Easy (DIE)、de4dot、dnSpy
## 🛠️ 阶段 1:静态分析与去混淆
在使用 **Detect It Easy** 检查原始 `PE32` 二进制文件时,识别出其编译器为 `VB.NET`,并且它显示了主动的反分析保护机制,旨在检测并终止诸如 `dnSpy` 和 `ILSpy` 之类的工具。

### 采取的操作:
为了绕过反分析保护机制,我们使用了 **de4dot**(具体使用了 `net35` 目录下专门为 `.NET Framework CLR 2.0.50727` 配置的版本)。
通过将恶意 payload 拖放到 `de4dot.exe` 上,成功生成了一个经过清理的 assembly(`-cleaned.exe`),剥离了反分析功能,使代码完全变得可读。
## 🛡️ 阶段 2:绕过动态防御 (Anti-Process)
在 **dnSpy** 中打开清理后的文件时,发现了一个名为 `CsAntiProcess.Handler` 的监控函数。该函数不断循环遍历活动的 Windows 进程,如果检测到分析环境组件,就会立即执行 `ProjectData.EndApp()`,这些组件包括:
* **网络嗅探器:** `wireshark`、`smsniff`、`apateDNS`
* **系统监控器:** `processhacker`、`procexp`
* **反编译器:** `dnSpy`、`ILSpy`、`Reflector`
### 绕过技术:
这种动态防御可以通过将 `dnSpy.exe` 的可执行文件名更改为随机字符串(例如:`calc32.exe`)来绕过,或者通过在 dnSpy 中执行代码补丁,将 `Handler` 函数完全清空。
## 🔍 阶段 3:配置与 IoC 提取
分析核心配置(`OK` 类)揭示了恶意软件用来建立持久性并连接回攻击者的硬编码参数:


### 提取的妥协指标:
| 参数 | 提取的值 | 技术目的与行为 |
| :--- | :--- | :--- |
| **`H` (主机)** | `startitit2-23969.portmap.host` | 命令与控制 (C2) 服务器域名,利用 Portmap.io 隧道来掩盖攻击者的真实 IP。 |
| **`P` (端口)** | `1604` | 攻击者监听的内部端口,用于捕获入站的反弹 shell 连接。 |
| **`EXE`** | `WindowsServices.exe` | 恶意软件在部署后用来伪装成系统任务的虚假名称。 |
| **`sf` (自启动)** | `Software\Microsoft\Windows\CurrentVersion\Run` | 用于在 Windows 启动时实现永久持久性的注册表键。 |
| **`VN` (受害者名称)**| `GeForce` (Base64: `R2Vmb3JjZQ==`) | 攻击者分配的活动/受害者标签,用于对受感染的机器进行分类。 |
## 🧼 缓解与修复
要根据提取的 IoC 彻底清理受感染的系统:
1. **终止进程:** 通过任务管理器终止 `WindowsServices.exe`。
2. **删除 Payload:** 从本地目录 (AppData/Temp) 中删除 `WindowsServices.exe`。
3. **清理注册表:** 删除 `CurrentVersion\Run` 下的相应注册表值,以防止恶意软件在重启时执行。
## 🎯 执行摘要
本报告详细介绍了对 **NjRAT (v0.7d)** 样本的逆向工程、去混淆和配置提取过程。该恶意软件经过了深度混淆以防止被分析,但借助静态分析工具,我们成功提取了所有关键的妥协指标。
### 📊 文件信息与哈希值
* **恶意软件家族:** NjRAT
* **版本:** 0.7d
* **使用的工具:** Detect It Easy (DIE)、de4dot、dnSpy
* **MD5:** [75e7bef3b1aeffde32a553296f1ed21d]
* **SHA-1:** [a43a2eaee060729d4d12a031a7f0bba6518a5315]
* **SHA-256:** [d46ecc50b57817d315a65e4b0e8c23ae2d0e785bd3ec06a722c0535028f737e6]
## 🎯 执行摘要
本报告详细介绍了对 **NjRAT (v0.7d)** 样本的逆向工程、去混淆和配置提取过程。该恶意软件经过了深度混淆以防止被分析,但借助静态分析工具,我们成功提取了所有关键的妥协指标。
* **恶意软件家族:** NjRAT
* **版本:** 0.7d
* **使用的工具:** Detect It Easy (DIE)、de4dot、dnSpy
## 🛠️ 阶段 1:静态分析与去混淆
在使用 **Detect It Easy** 检查原始 `PE32` 二进制文件时,识别出其编译器为 `VB.NET`,并且它显示了主动的反分析保护机制,旨在检测并终止诸如 `dnSpy` 和 `ILSpy` 之类的工具。

### 采取的操作:
为了绕过反分析保护机制,我们使用了 **de4dot**(具体使用了 `net35` 目录下专门为 `.NET Framework CLR 2.0.50727` 配置的版本)。
通过将恶意 payload 拖放到 `de4dot.exe` 上,成功生成了一个经过清理的 assembly(`-cleaned.exe`),剥离了反分析功能,使代码完全变得可读。
## 🛡️ 阶段 2:绕过动态防御 (Anti-Process)
在 **dnSpy** 中打开清理后的文件时,发现了一个名为 `CsAntiProcess.Handler` 的监控函数。该函数不断循环遍历活动的 Windows 进程,如果检测到分析环境组件,就会立即执行 `ProjectData.EndApp()`,这些组件包括:
* **网络嗅探器:** `wireshark`、`smsniff`、`apateDNS`
* **系统监控器:** `processhacker`、`procexp`
* **反编译器:** `dnSpy`、`ILSpy`、`Reflector`
### 绕过技术:
这种动态防御可以通过将 `dnSpy.exe` 的可执行文件名更改为随机字符串(例如:`calc32.exe`)来绕过,或者通过在 dnSpy 中执行代码补丁,将 `Handler` 函数完全清空。
## 🔍 阶段 3:配置与 IoC 提取
分析核心配置(`OK` 类)揭示了恶意软件用来建立持久性并连接回攻击者的硬编码参数:


### 提取的妥协指标:
| 参数 | 提取的值 | 技术目的与行为 |
| :--- | :--- | :--- |
| **`H` (主机)** | `startitit2-23969.portmap.host` | 命令与控制 (C2) 服务器域名,利用 Portmap.io 隧道来掩盖攻击者的真实 IP。 |
| **`P` (端口)** | `1604` | 攻击者监听的内部端口,用于捕获入站的反弹 shell 连接。 |
| **`EXE`** | `WindowsServices.exe` | 恶意软件在部署后用来伪装成系统任务的虚假名称。 |
| **`sf` (自启动)** | `Software\Microsoft\Windows\CurrentVersion\Run` | 用于在 Windows 启动时实现永久持久性的注册表键。 |
| **`VN` (受害者名称)**| `GeForce` (Base64: `R2Vmb3JjZQ==`) | 攻击者分配的活动/受害者标签,用于对受感染的机器进行分类。 |
## 🧼 缓解与修复
要根据提取的 IoC 彻底清理受感染的系统:
1. **终止进程:** 通过任务管理器终止 `WindowsServices.exe`。
2. **删除 Payload:** 从本地目录 (AppData/Temp) 中删除 `WindowsServices.exe`。
3. **清理注册表:** 删除 `CurrentVersion\Run` 下的相应注册表值,以防止恶意软件在重启时执行。
## 🎯 执行摘要
本报告详细介绍了对 **NjRAT (v0.7d)** 样本的逆向工程、去混淆和配置提取过程。该恶意软件经过了深度混淆以防止被分析,但借助静态分析工具,我们成功提取了所有关键的妥协指标。
### 📊 文件信息与哈希值
* **恶意软件家族:** NjRAT
* **版本:** 0.7d
* **使用的工具:** Detect It Easy (DIE)、de4dot、dnSpy
* **MD5:** [75e7bef3b1aeffde32a553296f1ed21d]
* **SHA-1:** [a43a2eaee060729d4d12a031a7f0bba6518a5315]
* **SHA-256:** [d46ecc50b57817d315a65e4b0e8c23ae2d0e785bd3ec06a722c0535028f737e6]标签:DAST, .NET反混淆, 云资产清单, 安全研究报告, 恶意软件分析, 逆向工程