百度杯 black_hole复现
2024-09-01 17:38:39
在这次复现中,经历了太多挫折。
刚刚开始的时候本地调试 get不到shell,就很疑问,而且不会爆破,想学下怎么爆破出那个0x05,
后来问了位师傅 ,他说用retdl_solve 试试,我就跑去学了,结果,还是不行,而且64位没有leak,也没stdout的,找了两天都没找到这种利用方法。。what_the_fuc;;;;;;
后来还是在群里问了一热心的师傅和sw师傅也解决了这道题。
这道题的利用思路就是利用了
这个 alarm 和syscall 最后一位想差0x5 师傅告诉我,因为alarm的实现就是
syscall(int_alarm, arg),所以可能近点吧。
剩下的思路就明确多了 ,虽然每次只能利用ebp往栈写东西,但是因为是没次进入了两层,又直接跳了出来所以写ebp也能写rop。就是利用了init_gadat 第一次用read在在alarm
后面的最后一位覆盖成0x5,然后往bss写东西,布置好东西就getshell,
下面我只贴出爆破的脚本。
exploit(i)
io.sendline("aaaaa")
try:
if io.recvline():
io.interactive()
except:
io.close()
最新文章
- mvc过滤器学习(1)
- 设置数据库为SINGLE_USER模式,减少锁定时间
- 简单几何(线段相交+最短路) POJ 1556 The Doors
- MongoDB的C#封装类
- liux之sed用法
- Linux中crond服务与crontab用法
- 【原】用PHP搭建基于swoole扩展的socket服务(附PHP扩展的安装步骤及Linux/shell在线手册)
- java class 文件解析
- 第13章 模版方法模式(Template Method)
- UML类图三
- bugku web 头等舱
- Django与ajax、分页器
- Mysql中的外键分析(什么是外键,为什么要用外键,添加外键,主外键关联删除)
- IIS 部署问题 404
- docker之Dockerfile指令介绍
- python学习 day3 (3月4日)---字符串
- JAVA框架 Mybaits
- 针对用户在个人中心绑定手机认证的一些js代码。
- BZOJ4653:[NOI2016]区间(线段树)
- SpringBoot如何添加拦截器