Monthly Archives: July 2020

You can use /proc/*/mem to bypass memory protections

Filmed some screencasts today explaining some interesting behavior with /proc/self/mem — you can use it to write to unwritable memory (including the text of libc!).

Read bits are not enforced for memory mappings

Filmed a screencast exploring some neat mmap behavior — read bits are not enforced for memory mappings. This is because the underlying x86 page table entries have a single bit to toggle between “Read” and “Read/Write”.