← 文章归档

pwnable.tw-babystack笔记

其实这道题真的不难,写这篇文章的目的完全是因为很久没有更新过博客了,感觉要写点什么才好。 首先我们可以通过爆破登陆信息来泄露那16个随机的数字。 登陆之后可以发现有一次strcpy的机会,通过调试可以发现之前登陆的后面一些位数正好可以copy过去,覆盖随机生成的16个字节。 …

其实这道题真的不难,写这篇文章的目的完全是因为很久没有更新过博客了,感觉要写点什么才好。

首先我们可以通过爆破登陆信息来泄露那16个随机的数字。

登陆之后可以发现有一次strcpy的机会,通过调试可以发现之前登陆的后面一些位数正好可以copy过去,覆盖随机生成的16个字节。

栈上可以看到有一个libc的地址信息,于是在login的时候算好填充的字节数,然后把信息拷贝到原来的随机数组里面,就可以继续通过登陆来爆破地址信息了。

爆破出来之后,可以算出one gadget的地址,至于怎么找这个东西,推荐一个脚本:https://github.com/david942j/one_gadget

运行之后会发现找到了许多,但其实能用的只有一个。

最后把构造好的字符串再拷贝一次即可。

emmmm,感觉字数好少啊,这么简单的题居然还水了一篇,我有罪(

COMMENTS

一起聊聊

0

正在搬小板凳…

留下一条评论

友善讨论,不需要注册。评论使用无感安全检查;管理员邮箱还需要 Token 验证。

Turnstile 无感防护验证码尚未配置,评论暂不可用