MD5()函数绕过
示例代码: if (md5($_POST['md51']) == md5($_POST['md52']) && $_POST['md51'] != $_POST['md52']) 弱类型绕过 PHP在处理哈希字符串时,会把每一个0E开头的哈希值解释为0,所以若两个不同密码进行哈希后以0E开头,则会被认为值均为0,从而判等。 md5加密后开头为0E的值: QNKCDZO 240610708 s878926199a s155964671a s214587387a s214587387a 以示例代码为例,分别给md51和md52赋表中不同的值。经过md5加密后,值均为0,而原始值又不同,顺利绕过if判断。 数组绕过 md5()函数无法处理数组,会对传入的数组返回NULL,即数组经过md5加密后均得到NULL。 我们仅需传入如下数据即可,数组内容随意: md51[]=1&md52[]=2 文章许可:本文采用CC BY-NC-SA 4.0许可协议,转载请注明出处。