1.打开题目,发现是代码审计类的题,查看源码后发现两个绕过
2.第一条过滤是令id的MD5值等于gg的MD5值,且需要两边的解密前的值不相等
再因为MD5不能处理数组,所以当MD5的比较双方出现数组时,例如
MD5(a[]=1)===MD5(b[]=2),从理论上来讲,二者并不相等,可因为MD5不能处理数组
所以结果为null===null,结果为真,可为此题构造如下payload:
?id[]=1&gg[]=2
出现回显,绕过第一层
3.下一个是用POST传入password,且password需弱等于1234567
可构造payload:
passwd=1234567a
用hackbar进行传参即可出现flag