moectf2023 - changeable shellcode
文件分析
下载shellcode
, 保护全开
ghidra分析为64位程序
解题思路
有40个字节的空间,并且没有syscall,需要实现打开shell
而存放的地方,更是十分甚至是九分的奇怪,这个值在rax寄存器中有
gdb vmmap
查看发现该区域可读写执行
总体思路就是在这片区域分别连续写入0x5和0xf来绕开检测,
然后跳转到写了syscall|05|0f|
的地址,
并且除了syscall以外的指令要写到最简以免长度超限
tips
- 32位的int 0x80好像不能用,就算设置rax=0xb,也无法正常打开shell
- 不要用ascii转换器,22字节的shellcode可以转出76字节来
EXPLOIT
1 | from pwn import * |
Done.
- 标题: moectf2023 - changeable shellcode
- 作者: RocketDev
- 创建于 : 2023-09-24 12:00:00
- 更新于 : 2024-07-30 10:28:00
- 链接: https://rocketmadev.github.io/2023/09/24/changeable_shellcode/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论