1. 程式人生 > >bugku-web-變量1

bugku-web-變量1

isset args __file__ .net 一個數 ima 個數 highlight 開頭

<?php

error_reporting(0); 關閉php錯誤提示
include "flag1.php";
highlight_file(__file__);
if(isset($_GET[‘args‘])){
$args = $_GET[‘args‘];
if(!preg_match("/^\w+$/",$args)){ //$args匹配正則表達式,\w表示【A-Za-z0-9]以及下劃線,^表示開頭,$表示多次匹配;但前面有一個!,表示$args沒有匹配上才輸出“args error"
die("args error!");
}

eval("var_dump($$args);"); //$$表示可變變量

//可變變量:該變量的名稱由另外一個變量來確定

技術分享圖片


} ?>

先理解代碼

$GLOBALS — 是一個數組,包含了全局作用域中可用的全部變量。變量的名字就是數組的鍵

所以args=GLOBALS

bugku-web-變量1