本文分享的一些PHP代码的缺陷对比函数和CTF的一些考点
知识点:
1.过滤函数缺陷绕过
2.CTF考点与代码审计
例如:在PHP 语言中==与===(区别在于==不会对比类型===类型也会对比)
缺陷:两个等号的缺陷就是不唯一
下图是一个简易的代码,flag的输出条件就是如果我们GET传参的值==$a 那么就输出flag
经过测试可以看到我们传递的参数是x=1admin可以看到代码中$a=1但是还是输出flag了,这就是==的缺陷。
Md5案例:==时MD5判断方法是0e开头相同的加密值他们就相等。当出现===时采用数组进行绕过(MD5加密不了数组),因为md5不能判断数组返回null值,两边都返回null就会相等。所以我们要是想要输出flag那么就传递数组就可以。
PHP常用函数:intval:用来获取函数的整数值,改用其他进制进行传参