bugku 变量1

变量1

题目信息

 

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);");
}
?>

知识基础

isset: 用于检测变量是否已设置并且非 NULL。
prep_match: 用于执行一个正则表达式匹配。

解题思路

flag In the variable ! 提示 flag 在变量中

根据!preg_match("/^w+$/",$args)得知,arg只能是任意字母,数字,下划线,汉字的字符组成

eval("var_dump($$args);"); 使$GLOBALS变量被输出即可

 

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

参考资源

PHP 变量

内容来自:https://segmentfault.com/a/1190000016750234?utm_source=tag-newest

原文地址:https://www.cnblogs.com/ainv-123/p/12094302.html