換一下主題來打Pwn
overflows 只是一個 stack 的問題嗎?
run起來可以看到是個heap問題
Heap 通常是從較低地址往高地址增長
如果把這兩個記憶體的位置(address)相減
input_data 0xb0 - safe_var 0xd0 = 0x20 = 32 bytes
就可以知道相差32bytes
所以只要輸入超過32bytes時,就會覆蓋到safe_var的記憶體位置!!
函數check_win只要求把safe_var != "bico"
就可以拿到flag了!!