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

CTFshow【命令执行】web29-web40 做题笔记

web29----过滤关键字

 正则匹配,过滤flag,可以使用通配符绕过

先查看目录

 使用通配符?查看flag

 点击查看源代码

web30---过滤函数和关键字

看到过滤了system执行系统命令和flag,php关键字

找一个与其功能差不多的执行函数passthru,先看目录

有一个flag.php,过滤了flag和php,使用通配符?

查看源代码即可

或者 倒着查

web31

 感觉和前面两道差不多

但是这里多了过滤了空格

所以%09空格绕过

 

web32

这过滤很多了,特别是;
php会⾃动给字符串和变量间添加空格
所以就不需要加空格

使用文件包含

web33

 文件包含,data协议,进行任意代码执行

web34

和上题一样

 

web35

过滤了等号和尖括号

不碍事,只要传的代码没有这些就行

 还是文件包含,data协议

web36

也就加多了过滤数字0-9

 

web37

文件包含

flag.php

web38

文件包含,但是过滤了php 和file ,所以用不了php://filter
用data

看源代码

web39

一条命令走天涯

web40

过滤的是中文的括号不是英文的、过滤了单双引号、过滤了数字;因为大致看看,能用的是
英文的括号和字母还有下划线。而命令执行大多数需要单双引号来传参数,所以就想到了无参
RCE
dirname(__FILE__) :获取当前 PHP 脚本所在的目录路径
scandir():用于扫描该目录,并返回一个包含所有文件和子目录的数组
array_reverse(...)将文件列表 倒序,这样最后一个文件变成第一个
next(...)获取倒序后的数组中的 第一个文件(即原本的最后一个文件)
highlight_file(...)使用 PHP 内置函数 高亮显示该文件的源码
看当前文件的绝对路径
找到flag.php
⾼亮显示flag


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

相关文章:

  • 未来工程项目管理新走向:云原生软件赋能绿色可持续建设
  • Kafka 面试备战指南
  • eureka与ribbon混合使用
  • Linux设置SSH免密码密钥登录
  • Netty和Project Reactor如何共同处理大数据流?
  • 无人机抗风测试技术要点概述!
  • failed to load steamui.dll”错误:Steam用户的高频崩溃问题解析
  • LLaMA-Factory使用实战
  • Elasticsearch 之 ElasticsearchRestTemplate 聚合查询
  • Java版Manus实现来了,Spring AI Alibaba发布开源OpenManus实现
  • Linux驱动开发--IIC子系统
  • 基于HTML5的3D魔方项目开发实践
  • leetcode 150. 逆波兰表达式求值
  • 22、web前端开发之html5(三)
  • HarmonyOS Next~鸿蒙系统开发类Kit深度解析与应用实践
  • 211、【图论】建造最大岛屿(Python)
  • 计算机网络——传输层(TCP)
  • 广东新政激发产业活力,凡拓数创以全场景AI3D方案领跑机器人赛道
  • Go File容器化部署方案:本地快速搭建与无公网IP远程传输文件指南
  • css的animation属性展示