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

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

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

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

工具目录

分类

查看所有分类
Loading categories
PPPoEject — Linux 内核本地权限提升 PoC,针对 CVE-2026-68121,通过串联 PPPoE、FUSE 和 IP6GRE 来破坏内核内存并获取 root 权限。 | Kitploit
工具/GitHubGitHub/manizada/pppoeject
权限提升内存取证漏洞分析漏洞利用论文与研究Payload 开发二进制利用
GitHubmanizada/pppoeject

PPPoEject

Linux 内核本地权限提升 PoC,针对 CVE-2026-68121,通过串联 PPPoE、FUSE 和 IP6GRE 来破坏内核内存并获取 root 权限。

查看仓库
13小时14分前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

PPPoEject (CVE-2026-68121)

Writeup

[!WARNING] 本 PoC 仅用于帮助防御者、维护者和经授权的安全团队验证其拥有或明确获授权测试的系统上的补丁、缓解措施、检测规则和暴露面。

您需自行确保对本材料的使用是合法、经授权、受控的,并在隔离的测试环境中进行。

[!WARNING] 本 PoC 具有破坏性。 它会故意破坏活动内核内存。 一次位置错误的覆写可能会破坏无关的内核内存,导致机器挂起/崩溃。

仅在一次性 VM/临时主机上运行。

该 PoC:

  1. 编译内嵌的辅助程序,并通过 x86-64 prefetch/RDTSCP 计时侧信道定位随机化的内核代码基址
  2. 构建一个 AF_PACKET TX-ring 载体,其中包含伪造的 struct file 对象,并将已填充的 fdtable 整理到目标分配中
  3. 在攻击者拥有的 FUSE 页面上阻塞 PPPoE 载荷拷贝,然后在 Fedora 上向一个空的 team 设备添加 IP6GRE,或在 Ubuntu 上通过 bonding 链添加
  4. 使 dev_hard_header() 重新分配 skb head,然后利用过期的 PPPoE 头指针将某个 fdtable 条目重定向到伪造的 file,并且
  5. 关闭被重定向的描述符,执行受控回调,安装 root 凭据,并打开 /bin/sh -p。

该 PoC 假定并针对 x86-64,以保持简单。理论上,该漏洞不应与架构相关,但你需要移植大量内容(从泄漏内核基址到链条的其余部分)。

要求

为完整起见,详尽列举如下:

  • 至少 4 个可用 CPU(这对于 PPPoE 发送方、fdtable 回收/载体、FUSE 阻塞方以及触发/释放编排工作线程执行时间关键型工作并减少调度器干扰很重要)
  • Fedora 44 搭配 6.19.10-300.fc44.x86_64,或 Ubuntu 24.04 搭配 6.8.0-124-generic 或 6.8.0-136-generic(你可以尝试移除这些检查,但其他发行版/内核版本可能需要针对每个目标进行定制/整理)
  • 一个普通的非 root 账户,具有 passwd 条目以及其拥有的主目录
  • 一个 Intel 或 AMD x86-64 CPU,支持 RDTSCP,KPTI/PTI 未激活,并且进程亲和性掩码中至少有四个逻辑 CPU
  • 非特权用户/网络命名空间创建,并在该命名空间内具有 CAP_NET_ADMIN 和 CAP_NET_RAW
  • 对 /dev/fuse 的读写访问权限,以及 Fedora 上的 FUSE、PPPoE、IP6GRE、AF_PACKET/TX-ring 和 team 支持,或 Ubuntu 上的 bonding 支持
  • 针对选定的低阶布局使用私有加急 membarrier
  • 针对选定的高阶布局使用 Dummy 和 802.1Q VLAN 设备
  • RLIMIT_NOFILE 硬限制足够大,以容纳所选载体几何结构,在运行时检查,可能需要最多 8,192 个描述符
  • 其他用户空间事项(范围内的已测试发行版大多应默认具备):Python 3.10+、带有 libc 和 Linux UAPI 开发头文件的 gcc、taskset、unshare、ip、true 和 /bin/sh,以及在 Ubuntu 上如果直接 unshare -Urn 被拒绝,还需要 aa-exec 和已加载的 trinity 配置文件

仅在 4GB RAM 和各种 4+ CPU 数量下测试过。其他 CPU/内存组合可能需要更多整理,和/或可能将写入重定向到无关内存。

以具有 passwd 条目的非特权用户身份运行它。Ubuntu 转换可能需要一段时间(例如 300+ 次尝试)。

用法

root@kitploit:~
python3 pppoeject_root_repro.py
下载工具