zoukankan      html  css  js  c++  java
  • bugku—Web—CTF--变量1

    这种题目纯属考察PHP的基础知识

    超级全局变量GLOBALS的用法

    flag In the variable ! <?php  

    网页代码显示:
    error_reporting(0);
    include "flag1.php";
    highlight_file(__file__);
    if(isset($_GET['args'])){
        $args = $_GET['args'];
        if(!preg_match("/^w+$/",$args)){
            die("args error!");
        }
        eval("var_dump($$args);");
    }
    ?>

    提示说flag在变量里面,经分析只要运行 eval("var_dump($$args);");,falg很有可能就会出来

    $$args====>我们可以猜想$args很有可能是一个数组,应该想到的就是超全局变量$GLOBALS

    他是用存储全局变量的,全局变量的值在这个超级全局变量里面是一个键值,先当于hashmap的键值对

    全局变量可以通过变量名在$GLOBALS找到相对应的值。

    eval()这个函数的作用是字符串里面的php代码按正常的php代码被执行

    通过构造一个GET参数,直接传GET一个全局变量即可

    http://123.206.87.240:8004/index1.php?args=GLOBALS

    拿到FLAG..

  • 相关阅读:
    数据库字段包含反斜杠的查询处理
    sql中的日期时间处理
    查询时间的测试
    group by 和 聚合函数的使用
    比较版本号
    sql IIF函数的应用
    win10系统杀毒功能
    php性能的问题
    linux 下ab压力测试
    datatables的学习总结
  • 原文地址:https://www.cnblogs.com/liuzeyu12a/p/10041795.html
Copyright © 2011-2022 走看看