hgame2024 week1 - ezfmt string
文件属性
属性 | 值 |
---|---|
Arch | x64 |
RELRO | Partial |
Canary | on |
NX | on |
PIE | off |
strip | no |
解题思路
考察格式化字符串却不给libc,说明要找共通之处,先patch一下2.31,发现依赖更高版本, 遂尝试2.35,两者不变的地方在于靠近rbp的位置有一个指向rbp的指针,并且binary中还有一个后门函数。 如果直接把后门函数写到retAddr上,那么会因为栈无法对齐而SIGSEGV,于是可以修改rbp,打栈迁移, 把栈迁移到输入的后门函数地址的下方,这样在main函数返回时就会执行之;不过输入前没有输出, 栈迁移到哪里是盲打的,只有1/16的概率能够命中
EXPLOIT
1 | from pwn import * |
- 标题: hgame2024 week1 - ezfmt string
- 作者: RocketDev
- 创建于 : 2024-02-05 19:50:00
- 更新于 : 2024-07-25 12:34:56
- 链接: https://rocketmadev.github.io/2024/02/05/W1_ezfmtString/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论