Challenge
A heap menu challenge (allocate / free / use) with a hidden win() function.
Approach
- Allocate a chunk, free it (returns to tcache), then “use” the freed chunk — UAF.
- The freed chunk’s
fdpointer in tcache overlaps with a function pointer field in the struct. - Write the address of
win()over thefdslot via the UAF write primitive. - Trigger the function pointer call through the menu.
| |
Flag
boroCTF{hYp0M&nic_3xplO1taTio4}