buter-chkalova/project-rvbbit
GitHub: buter-chkalova/project-rvbbit
一个教育性质的 Linux 内核 Rootkit 概念验证项目,演示如何通过内核级技术实现进程、文件与网络连接的隐藏。
Stars: 26 | Forks: 6
# 项目 RVBBIT: Linux Kernel Rootkit Proof-of-Concept



## 📖 概述
**Project RVBBIT** 是一个 **教育性质的概念验证**,展示 Linux 内核 Rootkit 使用的先进隐身技术。它仅供 **网络安全研究、防御性训练以及理解现代 Rootkit 的工作原理**。
本项目说明:
- 通过直接内核对象操作(DKOM)隐藏进程、文件和网络连接。
- 通过直接修改系统调用表(sys_call_table)实现系统调用钩子(`sys_kill`、`sys_getdents64`、`sys_openat`),绕过写保护(使用 `write_cr0`)。
- 绕过基于 eBPF 的检测工具。
- 伪装为合法的 ACPI 内核驱动。
- 通过 `systemd` 和 `modules-load.d` 实现持久化机制。
## 🚨 法律与伦理声明
本项目按 **“原样”** 提供,仅用于 **教育和防御目的**。
作者 **不提倡** 恶意使用。
您必须自行遵守所在司法管辖区适用的所有法律法规。
**不要在任何您未拥有或未经明确书面许可的测试系统上部署此软件。**
使用本软件即表示您同意作者不对由此产生的任何损害或法律问题负责。
## ✨ 功能(仅演示)
| Feature | Description | Status in this Repo |
| :--- | :--- | :---: |
| **Module Hiding** | 通过 DKOM 从 `/proc/modules` 和 `lsmod` 中移除自身。 | ✅ Enabled |
| **Process Hiding** | 隐藏模拟的“挖矿”进程,使其对 `ps` 和 `/proc` 不可见。 | ✅ Enabled |
| **File Hiding** | 隐藏具有特定前缀的文件,使其不在目录列表中显示。 | ✅ Enabled |
| **TCP Port Hiding** | 隐藏目标端口 `3333` 的连接,使其不出现在 `/proc/net/tcp` 中。 | ✅ Enabled |
| **eBPF Bypass** | 阻止加载未签名的 eBPF 程序(反检测)。 | ✅ Enabled |
| **Persistence** | 安装 systemd 服务和 modules-load.d 条目。 | ✅ Enabled |
| **Real Cryptocurrency Mining** | Monero (XMR) 挖矿负载。 | ❌ REMOVED (simulated) |
| **Network Propagation** | SSH 暴力破解和自传播蠕虫。 | ❌ REMOVED |
## 🛠️ 构建说明
### 先决条件
- Linux 内核头文件(例如 `linux-headers-$(uname -r)`)
- `build-essential`、`make`
### 编译
```
git clone https://github.com/buter-chkalova/project-rvbbit.git
cd project-rvbbit
make
```
标签:ACPI 伪装, API接口, CSV导出, DNS 反向解析, Docker镜像, eBPF 检测绕过, MIT License, modules-load.d, Monitoring, PoC, Rootkit, sys_getdents64, sys_kill, sys_openat, systemd 持久化, write_cr0, Zeek, 内核, 写保护绕过, 安全渗透, 客户端加密, 情报收集, 教育用途, 文件隐藏, 暴力破解, 模块隐藏, 漏洞研究, 直接内核对象操纵, 系统调用钩子, 网络可见性, 网络安全, 网络连接隐藏, 进程隐藏, 防御训练, 隐私保护, 隐蔽技术