People often ask me "How did you learn how to hack?" The answer: by reading. This page is a collection of the blog posts and other articles that I have accumulated over the years of my journey. Enjoy!
io_uring is a Linux kernel interface for providing asynchronous I/O. The basics of io_uring can be found here.read_iter. If this is not provided, then another function is called to perform an iterative read/write of the file. The pointer req->rw.addr is incremented by the size of the read/write. IORING_OP_PROVIDE_BUFFERS option, the pointer can contain a kernel buffer instead of a userland buffer. arbitrary free primitive on nearby chunks. Using this, a use after free could be trivially taken advantage of.