1. 程式人生 > >【writeup】is_numeric函數矛盾運用

【writeup】is_numeric函數矛盾運用

php 判斷 eric num 是不是 怎麽 遇到 c函數 back

最近在BugkuCTF平臺刷題,遇到‘矛盾’http://120.24.86.145:8002/get/index1.php,感覺蠻有意思的,記錄下思路

目標代碼如下:

$num=$_GET[‘num‘];
if(!is_numeric($num))
{
echo $num;
if($num==1)
echo ‘flag{**********}‘;
}

想要得到flag變量num必須是1,但是上一層判斷語句使用is_numeric判斷變量num不能是數字,這是不是很矛盾

下面看下解題思路:

主要是關註獲得flag的那個條件判斷語句,怎麽才能讓這個變量不是1,而讓條件成立呢

由於變量num是直接接入條件的,故可以構建多條件,來成立判斷

eg:if(1=1|1=1) 條件成立

payload:1=1|1,且能通過上層is_numeric函數的判斷

【writeup】is_numeric函數矛盾運用