矛盾WEB 未解决

分数: 10 金币: 1
题目作者: harry
一  血: chounana
一血奖励: 1金币
解  决: 25992
提  示:
描  述:
矛盾
评论
2687821343 22天前

读解php即可,!is_numeric意思为检测变量是否为数字或数字字符串(如整数、浮点数、科学计数法或十六进制表示),返回布尔值,!is_numeric通过逻辑非运算符 ! 对上述结果取反:若变量非数字或非数字字符串,返回 true;否则返回 false。需num=1可得flag,输入num=1'或1后插入任意字符即可。

回复 1

wangruiqing800 25天前

学会了弱比较和强比较

回复 1

bensmiss 26天前

!is_numeric($num)的意思是不是数字或数字字符才能往下,==是弱比较,会自动转换类型(===是强比较),所以当num==1(转换后为1),可以得到flag。所以,get请求让num=1xxxx,1开头就行,后面不要数字。

回复 0

RedCr0w 1月前

php弱类型比较,get传入num=1a即可,1a过第一个判断,第二个判断会强制转换1a为1进行比较。

回复 0

HK1ng 1月前

传入弱类型,看到有一个is_numeric判断,直接传一个1abc,进行绕过,然后下面是弱类型比较,1abc==1.

回复 0

zhwen 1月前

PHP 的弱类型比较

回复 0

goodsnack 2月前

弱比较类型题目

回复 0

贝利亚 3月前

在端口号后面写/?num=1,此时没有响应,在后面加任意字符后再按回车就有了

回复 4

网友小鞠 4月前

?num=1abc,is_numeric() 函数的判断存在漏洞。1abc判断为非字符,在判断 if ($num == 1) 中,PHP 会进行隐式类型转换,将字符串 1abc 转换为数字 1(会截取字符串开头连续的数字部分)。从而输入flag

回复 6

kingx3 4月前

/?num=1后加任意字符

回复 2

WriteUp

image

1 金币

评分(14)

解题动态

hhhhl 攻破了该题 3小时前
souljian03 攻破了该题 5小时前
mianweitu 攻破了该题 9小时前
小黑子徐帅 攻破了该题 9小时前
lxf0412 攻破了该题 10小时前
feibinger 攻破了该题 10小时前
鸿帽 攻破了该题 13小时前
libingfei 攻破了该题 15小时前
laonie 攻破了该题 15小时前
枫花月 攻破了该题 15小时前
可口可乐 攻破了该题 16小时前
AD钙 攻破了该题 16小时前
2316252803 攻破了该题 16小时前
shunsong 攻破了该题 16小时前
wqj 攻破了该题 17小时前
13551227821 攻破了该题 20小时前
2072395724 攻破了该题 20小时前
xiaobi 攻破了该题 21小时前
OY 攻破了该题 21小时前
盐渍代码 攻破了该题 21小时前
问题反馈