bugku web 变量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);");
}
?>

这个好像叫做php代码审计

error_reporting(0)关闭错误报告

include "flag1.php"执行flag1.php

判断是否通过get传入了参数,并且将参数赋值给$args

下一行是通过正则表达式判断$args是否全部由字母数字和下划线组成

如果是的话执行var_dump($$args);

var_dump就是打印,不过会递归打印

$$args这个还是值得一说的,一般的变量只有一个$,有两个$$的变量叫做可变变量

举个例子

$a=b

$b=hhh

echo $$a

这时候会输出hhh

代码就分析完了,flag1.php中提示flag在变量中,现在的问题就是如何打印出所有的变量

php中有一个神奇的变量叫做$GLOBALS,它是一个数组,里面存放着所有的变量

所以只要构造?args=GLOBALS即可得到flag

原文地址:https://www.cnblogs.com/fantasquex/p/10405773.html

时间: 2024-08-30 11:15:40

bugku web 变量1的相关文章

Bugku Web题

Web2 听说聪明的人都能找到答案 进入题目看到满天滑稽,然后一脸懵逼 按F12查看源码,在Body下面找到被注释的Flag,20分到手 ? 计算器 进入题目可以看到一个输入框,尝试输入图片的答案,但发现只能够输入一位.F12查看源码,找到input输入框. ????发现使用maxlength属性限制了我们输入的位数,我们手动将其改为3. 返回界面重新输入答案,拿到Flag ? Web基础$_GET 进入题目看到4行php代码 Get请求是直接在url后加?参数和值.根据代码我们在后面添加?wh

bugku web题INSERT INTO注入

0x01: 打开题目描述,已经将源码给了我们: <?php error_reporting(0); function getIp(){ $ip = ''; if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){ $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; }else{ $ip = $_SERVER['REMOTE_ADDR']; } $ip_arr = explode(',', $ip); return $ip_arr[0];

bugku web web5

JSPFUCK??????答案格式CTF{**} http://123.206.87.240:8002/web5/ 字母大写 jspfuck这不是骂人吗,怎么回事啊? ·点进去看见有一个可以输入的框,那就随便输入试一试哇 (在还是错别字 那看一看源代码叭,有一行非常奇怪的由+[]()!组成的代码,查了一下,这种东西似乎叫做jspfuck(呼应题目) JSFuck(或为了避讳脏话写作 JSF*ck )是一种深奥的 JavaScript编程风格.以这种风格写成的代码中仅使用 [.].(.).! 和 

bugku web 头等舱

什么也没有. 不行,他肯定把重要的东西隐藏了起来,首先查看源代码 真的什么也没有 burp抓包,看是不是在头部里,嘿嘿找到了 原文地址:https://www.cnblogs.com/fantasquex/p/10406405.html

bugku web

原文地址:https://www.cnblogs.com/sharpff/p/10700820.html

bugku web基础$_POST

这道题也是让what=flag就行了 直接试试通过max hackbar来进行post传入 得到flag 原文地址:https://www.cnblogs.com/wosun/p/11675142.html

bugku web基础$_GET

让我们通过url传入what的值,让其等于flag 直接构造url就得到flag了 原文地址:https://www.cnblogs.com/wosun/p/11675141.html

bugku web web基础$_GET

题目链接 打开题目,显示一段代码. $what=$_GET['what'];echo $what;if($what=='flag')echo 'flag{****}'; 使用hackbar,构造payload. 即可得到flag. 拓展:post和get的差别 原文地址:https://www.cnblogs.com/truthilia-12580/p/12274336.html

bugku web 计算器

题目链接 题目要求计算图片中的表达式的值,在输入框输入验证,输入的时候却发现只能输入一个数字. 在输入框上右键检查或者f12选择选择元素,发现输入框的maxlength被设置为1,将其删除,发现输入框的限制消失. 在输入框输入计算式的答案,即可得到flag. 原文地址:https://www.cnblogs.com/truthilia-12580/p/12274294.html