百度杯2017 二月場 爆破二 三

2021-09-01 05:48:00 字數 921 閱讀 9144

<?php 

include "flag.php";

$a = @$_request['hello'];

eval( "var_dump($a);");

show_source(__file__);

還是**審計

乙個乙個來看:

'flag.php')
hello的value設定為讀取檔案的函式,讓eval執行這段函式。

fread-讀取指定檔案(可安全用於二進位制檔案)。string fread ( resource $handle , int $length ),read() 從檔案指標 handle 讀取最多 length 個位元組。檔案系統指標,是典型地由 fopen() 建立的 resource(資源)。

file_get_contents — 將整個檔案讀入乙個字串。失敗返回false.

feof與fread結合迴圈讀取檔案內容。feof — 測試檔案指標是否到了檔案結束的位置。

file — 把整個檔案讀入乙個陣列中,然後逐個輸出。

<?php 

error_reporting(0);

session_start();

require('./flag.php');

if(!isset($_session['nums']))

if($_session['time']+120=10)

show_source(__file__);

?>

$_session有三個變數,whoami的初始值是』ea』.

還是乙個乙個來看**:

百度杯」CTF比賽 2017 二月場 爆破 2

進入環境還是進行 審計 include flag.php a request hello eval var dump a show source file eval會將裡面的字串當作php 執行,第一反應就是利用 a在裡面執行 不過一開始我沒有成功,我以為這樣不行,後來才知道問題。我一開始是這樣的 ...

百度杯 二月場 Misc Web 爆破 3

error reporting 0 session start require flag.php if isset session nums if session time 120 value request value str rand range a z str rands str rand m...

i春秋「百度杯」二月第二場Web專題

檢視原始碼,得知限制了只允許數字字母下劃線 利用超全域性變數 很明顯的 注入 獲得flag session nums需要 10返回flag 初始化為0 其中substr md5 value 5,4 0是恆成立的 只要滿足whoami 等於就會 對nums加1 whoami初始化為ea 並且加一的同時...