本文提出SyzDirect,主要工作是识别入口syscall、参数优化、根据路径反馈来指导种子调度。对syzdirect进行漏洞复现和补丁测试,发现比其他内核fuzzer,漏洞复现提高320%,补丁测试提高25.6%。
io-uring子系统存在物理页任意长度越界读写,可以任意读写其后的sock对象,通过`sock->sk_data_ready`泄露内核基址,通过`sock.sk_error_queue.next`泄露sock对象的堆地址,通过伪造`sock.__sk_common.skc_prot->ioctl`函数指针劫持控制流。
本文提出AlphaEXP(基于KINT [48], Syzkaller [19], Soufflé [28]实现),首先构造知识图谱来表示内核对象、内核功能和用户输入的关系,然后根据给定漏洞探索可能的攻击路径,标记可利用的对象,最后评估攻击路径的可行性,并对可利用的对象进行分类。
作者提出RetSpill,**通过syscall将用户数据(ROP链)布置到内核栈上,然后结合控制流劫持(CFH)漏洞进行提权,能够绕过当前Linux内核上开启的所有防护机制(例如FG-KASLR)**。作者还提出了新的防护机制。
作者调研了43个Linux发行版和230个漏洞,在发行版内核上复现上游PoC,在root权限下成功复现19.1%,非root权限下只成功复现0.9%。**大部分高危漏洞在下游内核中无法复现**。本文开发了**SyzBridge,自动调整上游PoC以适应各种下游发行版内核,来真实反映内核漏洞的危害程度**,并集成了SyzScope工具(识别高危的利用原语)。
K-LEAK工具是一种基于图的数据流分析框架,针对Linux内核中的内存漏洞(UAF/OOB),辅助生成infoleak的利用,绕过内核KASLR防护。本文**将infoleak利用生成问题看作是数据流搜索问题**,通过对内存错误引入的非预期数据流,以及现有内存错误如何转化为新的内存错误进行建模,K-LEAK能够系统性的搜索出多步infoleak数据流路径。
netfilter子系统nf_tables组件中存在UAF漏洞,漏洞对象是skb。采用Dirty Pagedirectory利用方法,构造重叠的PMD页和PTE页,实现任意物理地址写。
利用堆漏洞(UAF/Double-Free/OOB)篡改末级页表中的PTE条目,实现任意物理地址读写。
【kernel exploit】CVE-2022-2602-UNIX_GC错误释放io_uring注册的file结构-UAF
【bsauce读论文】2023-S&P-内核Use-After-Cleanup漏洞挖掘与利用
Linux kernel CVE exploit analysis report and relative debug environment. You don't need to compile Linux kernel and configure your environment anymore.
Anything about kernel security. CTF kernel pwn, kernel exploit, kernel fuzz and kernel defense paper, kernel debugging technique, kernel CVE debug.
There are some papers about fuzzing. I record them by Xmind. Welcome to contact to me.
Something about CTF and vulnerability environment, mainly about kernel exploit.
The best vulnerable driver to learn how to exploit kernel vulnerability.