作者: Vedant Karande 与 Kiran Kumari
课程: 网络与系统安全(SIL7165)- 印度理工学院德里分校
KOOBE-Guard 是一个动态入侵防御系统(IPS),以 Linux 可加载内核模块(LKM)的形式开发,用于主动缓解灾难性的基于堆的漏洞,特别针对 CVE-2024-1086 双重释放漏洞[cite: 1]。
现代操作系统隐式信任内存子系统能够完美无瑕地分配和释放内存[cite: 1]。当诸如 Linux 内核的 nf_tables 等复杂子系统存在逻辑错误时,可能会导致内存管理失控,从而使非特权攻击者能够通过 Heap Feng Shui(堆风水)和重叠分配实现本地权限提升(LPE)[cite: 1]。KOOBE-Guard 通过从繁重的被动影子内存防御转向实时主动时序间隙跟踪来消除这一威胁[cite: 1]。
像 KASAN 这样的传统缓解工具依赖巨大的影子内存映射,引入 200%-300% 的 CPU 开销和灾难性的 RAM 膨胀,使其无法用于生产环境[cite: 1]。
KOOBE-Guard 通过以下方法拦截漏洞利用:
kfree 分配器路径[cite: 1]。该模块记录被释放内存地址的精确纳秒时间戳[cite: 1]。regs->di = 0)[cite: 1]。这会强制执行安全的 kfree(NULL) 操作,从而完全防止 SLUB 空闲链表损坏[cite: 1]。defense_module/:包含 KOOBE-Guard LKM 源代码和 Makefile。evaluation_scripts/:用于量化 QEMU 测试的 Bash 脚本(benchmark.sh、hit_rate.sh)。docs/:全面的项目报告和演示文稿幻灯片。proofs/:系统架构图、执行截图和基准测试图表。exploit_poc/:子模块,链接到用于触发漏洞状态的 CVE-2024-1086 武器化概念验证(Proof-of-Concept)。该框架在深度隔离、硬件加速的 QEMU 虚拟实验室中进行了严格评估,该实验室运行自定义编译的 Linux 6.6.0 内核[cite: 1]。
exploit_poc 目录中。访问原始仓库:Notselwyn/CVE-2024-1086。本项目采用 GPL-2.0 许可证授权。详情请参阅 LICENSE 文件。