[HNCTF 2022 Week1]easy_upload
先尝试上传一个php文件,发现直接就成功了
用蚁剑测试连接成功
找到flag
[NISACTF 2022]bingdundun~
白名单上传
这里因为尝试了很多绕过方式都不成功,去搜索了一下wp,发现要用到Phar://伪协议
补充:
Phar://伪协议
用于将多个php文件、类、库、资源(如图像、样式表)等打包成一个单独的文件。这个归档文件可以像其他 PHP 文件一样被包含(include)或执行。
用法:把一句话木马压缩成zip格式,shell.php -> shell.zip,然后再上传到服务器(后续通过前端页面上传也没有问题,通常服务器不会限制上传 zip 文件),再访问:?filename=phar://…/shell.zip/shell.php
将一句话木马打成压缩包
直接上传得到路径
访问页面
尝试蚁剑连接,返回为空
查看源代码提示
查找发现可以在phar解压的zip压缩包后面加/
来访问里面的文件,因为会自动补.php
构造payload
蚁剑测试连接成功
找到flag
[MoeCTF 2022]what are y0u uploading?
查看源代码,白名单绕过
题目提示mime绕过,双写绕过
发现需要修改filename
得到flag
[UUCTF 2022 新生赛]ez_upload
php文件不可以上传
补充:
Apache解析漏洞
因为Apache默认一个文件可以有多个用.分割得后缀,当最右边的后缀无法识别(mime.types文件中的为合法后缀)则继续向左看,直到碰到合法后缀才进行解析(以最后一个合法后缀为准),可用来绕过黑名单过滤。
在重发器中发现上传成功
蚁剑测试连接成功
得到flag