突破防御:利用段错误绕过 Intel CET

Lobsters Hottest 工具

摘要

该仓库提供了面向段错误编程(SFOP)的工件,这是一种利用信号处理器绕过 Intel CET 的新型利用技术。它包含针对 Nginx 和 Ladybird 的 PoC 利用和演示。

<p><a href="https://lobste.rs/s/sh2bax/crashing_through_defenses_exploiting">评论</a></p>
查看原文
查看缓存全文

缓存时间: 2026/08/10 00:52

面向段错误的编程(SFOP)

Source: https://github.com/signal-sfop/sfop

这是 Segmentation Fault-Oriented Programming(SFOP)漏洞利用技术的工件仓库。

工件集合

我们在此简要描述本仓库中的工件。总共有八个不同的工件,包含六个 PoC 漏洞利用和两个针对真实世界程序(Nginx 和 Ladybird)的漏洞利用:

  • PoCs:

    • bSFOP_ek:使用链注册信号并通过 Early Kill 发起攻击的完整 bSFOP 漏洞利用。
    • bSFOP_fixed:更易于调试的 bSFOP,手动注册信号并手动设置故障 gadget 以发起攻击。
    • bSFOP_multistage:与 bSFOP_fixed 相同,但整个 payload 并非在开始时一次性传输,而是分多次读取。
    • chain:使用链注册 sigaction 的独立示例。
    • fSFOP_ek:使用链注册信号并通过 Early Kill 发起攻击的完整 fSFOP 漏洞利用。
    • fSFOP_fixed:更易于调试的 fSFOP,手动注册信号并手动设置故障 gadget 以发起攻击。
  • vulnerable-nginx:包含 CVE-2013-2028 漏洞的 Nginx 修改版本。展示了使用自定义信号注册链并借助 Early Kill 的 fSFOP。

  • vulnerable-ladybird:包含 CVE-2021-4327 漏洞的 SerenityOS 修改版本。展示了使用自定义信号注册链并借助 Early Kill 的 fSFOP。

每个文件都附带各自的 README。

要求

每个 PoC 都已容器化。Docker 是唯一的软件要求。

运行这些 PoC 需要 启用 CET 强制执行。

为此:

  • 使用裸机(bare-metal)机器,即不要使用虚拟化环境(Virtualbox、WSL…),因为 CET 在这些环境中尚未启用。
  • 使用第 11 代(Tiger Lake)或更新的 Intel 处理器。AMD 处理器可能可以工作,但未经测试。
  • 为安全起见,请使用 Linux 内核 6.6 或更高版本。

我们的实验已在多台机器上测试,包括:

  • Ubuntu 24.04,内核 6.14,glibc 2.39,Intel i3-14100 x86_64。

相似文章

FreeBSoD:利用语言模型发现和利用内核漏洞(上)

Lobsters Hottest

本文介绍了 Praetorian 的研究人员如何使用 Claude Opus(通过 Claude Code)发现并利用 FreeBSD 内核中的漏洞,包括一个允许逃离 FreeBSD 监狱的栈溢出漏洞(CVE-2026-3038)。第一部分重点介绍寻找漏洞的方法。

核心转储流行病学:修复一个18年的旧bug

OpenAI Blog

OpenAI工程师详细描述了Rockset的C++数据基础设施中看似不可能的崩溃的诊断过程,揭示了一个Azure上的静默硬件损坏bug以及GNU libunwind中存在18年的竞态条件,最终通过崩溃数据的流行病学分析得以解决。

@jedisct1: epoll UAF

X AI KOLs Timeline

对 Linux 内核 epoll 子系统中的一个释放后使用(UAF)漏洞的详细分析,该漏洞通过切换到 RCU 修复,以及作者在现代设备上尝试利用该漏洞失败的经过。