两道pwn题的解法(ret2libc)
2019-03-06 本文已影响0人
HazelNut_dc33
[if !supportLists]1. [endif]Lab0
与之前相比,不知道后门函数的地址
第一次payload,利用puts函数泄露libc的地址(plt+main+got,offset可以通过自动化工具得出)
第二次发送payload是为了起shell
可以与之前的exp进行对比
Exp如下:
运行并成功拿到shell
2. pwnme
先上exp
因为在IDA中发现了这个
read函数存在漏洞,构造payload,发送给write函数,泄漏出read函数的地址,在利用libc.symbols[‘read’]求出read的相对地址,故libc的地址=泄露的地址-相对地址
这是典型的ret2libc的例子。
第二次是发送payload的起shell。
攻击结果如下,成功拿到shell: