打开以后是一行类似md5的东西,随便查了一下,没查到东西
打开dirsearch扫目录,发现bak备份文件
打开后下载了一个记事本
得到源码——
1 | <?php |
$_SERVER[‘REQUEST_URI’]:获取url行的内容
strstr($_SERVER[‘REQUEST_URI’], ‘?’):截取url中?后的内容(包括?)
substr($str,1):从第二个字母开始截取$str
$str = str_replace(‘key’,’’,$str);:把$str中的key去除,可以用kekeyy来绕过
parse_str() — 将字符串解析成多个变量
d5($key1) == md5($key2) && $key1 !== $key2:MD5加密后内容(首个字符)相同,原内容不同。可以用数组绕过(1)或md5碰撞(2)。
法(1):?kekey1y[]=1&kekey2y[]=2(原理:md5()函数无法处理数组,如果传入的为数组,会返回NULL,所以两个数组经过加密后得到的都是NULL,也就是相等的)
法(2):?kkeyey1=QNKCDZO&kkeyey2=s878926199a(原理:md5加密后开头都是0e)