【writeup】is_numeric函数矛盾运用


最近在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函数的判断

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM