1. 程式人生 > >CTF中常見的php函式繞過(保持更新)

CTF中常見的php函式繞過(保持更新)

is_numeric()用於判斷是否是數字,通常配合數值判斷

is_numeric(@$a["param1"])?exit:NULL;
if(@$a["param1"]){
    ($a["param1"]>2017)?$v1=1:NULL;
}
//param1不能是數字,但又要比2017大,利用陣列
$pos = array_search("nudt",$a["param2"]);
$pos ==false?die("nope"):NULL;
foreach($a["param2"] as $key=>$val){
        $val==="nudt"?die("nope"):NULL;
    }

//param2中需要匹配到nudt然而是弱型別,0==任何字串,用0可以過掉弱型別檢查字串
eregi存在\x00截斷的問題
sha1([])和md5([])處理陣列不會報錯,直接返回false