有源码的提示,根据提示咱们能够获得一下信息
"QNKCDZO"MD5加密后获取一个量,而后经过GET方式获取一个变量a的值,变量a的值不能等于"QNKCDZO",可是md5后的a的值要等于"QNKCDZO"MD5。由此引入php弱类型值的比较
补充:PHP在处理哈希字符串时,会利用”!=”或”==”来对哈希值进行比较,它把每个以”0E”开头的哈希值都解释为0,
因此若是两个不一样的密码通过哈希之后,其哈希值都是以”0E”开头的,那么PHP将会认为他们相同,都是0。
因此咱们令a=s1836677006a,便可拿下flag。
补充:PHP处理0e开头md5哈希字符串
QNKCDZO
0e830400451993494058024219903391
s878926199a
0e545993274517709034328855841020
s155964671a
0e342768416822451524974117254469
s214587387a
0e848240448830537924465865611904
s214587387a
0e848240448830537924465865611904
s878926199a
0e545993274517709034328855841020
s1091221200a
0e940624217856561557816327384675