problem

  1. Print Heap: (print the current state of the heap)
  2. Write to buffer: (write to your own personal block of data on the heap)
  3. Print safe_var: (I'll even let you look at my variable on the heap, I'm confident it can't be modified)
  4. Print Flag: (Try to print the flag, good luck)
  5. Exit

Heap State: +-------------+----------------+ [] Address -> Heap Data +-------------+----------------+ [] 0x5e873b5112b0 -> pico +-------------+----------------+ [*] 0x5e873b5112d0 -> bico +-------------+----------------+

What is a heap?

dynamic memory allocation. When a computer needs memory it requests it from the heap

What is a buffer?

A temporary storage area during data transfer

Since we have access to the heap we can write a large number and cause a heap overflow

image.png