网络安全

(深入)逻辑漏洞挖掘

2018-01-27  本文已影响80人  FKTX

in_array($var,$arr)这个函数的功能是看$var是否在$arr这个数组中,若存在,则返回true,否则返回false。

但是,这个函数会做自动类型转换。因此,若代码像这么写,就会出现逻辑错误。

可以看到,提交的参数并不等于数组中的内容,可是依旧会被当做等于去执行。

is_numeric(),这个函数若是接收到16进制的值时,就可能出现漏洞

php的“==”和“===”的区别

==更容易出现安全隐患,我个人没想到这样居然会相等。

这种逻辑漏洞也是程序员容易犯错的,两个参数,第一个参数过滤了,第二个参数也过滤了,但是又用str_replace()再替换一下两个参数,就导致了重合,反斜线就被转义了。

上一篇下一篇

猜你喜欢

热点阅读