USMA 2.0
USMA 是由 360 在 BlackHat 2022 Asia 中演示的 Linux 内核堆利用(提权)技术。此技术使用的对象 struct pgv 具有可变长且内容全部为 direct mapping 段指针的性质。通过 packet_mmap 函数可以将这些指针对应的 page 映射到用户态,因此越界写入此对象后,可以在用户态非法读写内核代码段。昨天在审我(做到一半的)实验结果的时候,偶然发现了这个新的可分配对象,它具有与 struct pgv 相似的性质,而在一些场景下,甚至能达到比 struct pgv 更好的效果;当然它也有一些缺陷...