@H_502_1@一、绕开口令长度限制
题目:
1.F12查看源码,发现有长度限制
2.方法1:使用hackbar或burpsuite将text=qingdaoshizipeixun post过去绕开长度检测。
3.得到flag
@H_502_1@二、不在IP限制范围内
题目:
@H_502_1@
1.分析题目,发现其要求访问ip限制是8.8.8.8,因此考虑转发ip
2.打开burpsuite,找到该包的http头,在里面add X-FORWARD-FOR,值为8.8.8.8,点击forward
或将该请求send to repeated ,在里面添加X-FORWARD-FOR:8.8.8.8,点击Go
3.成功获取flag
@H_502_1@三、MD5绕过
题目:
原理:当md5函数对数组进行计算时,会出错返回0
1.在url后面,添加?a[]=1&b[]=2。
2.获得flag
四、MD5碰撞
题目:
分析:首先可以看到变量md51的值是经过md5加密的字符串QNKCDZO,经过md5加密后得到0e830400451993494058024219903391。之后get到变量a,分析源代码可知,如果a的值不为QNKCDZO,并且md5的值也为0e830400451993494058024219903391,则会输出flag,但对于md5来说,这种情况是不存在的。再看源码,我们发现判断md51和md52是否相等的时候,使用了$md51 == %md52,这里使用的是 == (PHP中为松散比较)而不是 ===(PHP中为严格比较),也就是说md51和md52不需要完全相等。【PHP的松散比较可参考https://blog.csdn.net/baidu_41871794/article/details/83750615】
关于PHP的一点拓展:一个数字和一个字符串进行比较,PHP会把字符串转换成数字再进行比较。PHP转换的规则是:若字符串以数字开头,则取开头数字作为转换结果,若无则输出0。因此QNKCDZO经过md5加密后的值0e830400451993494058024219903391就会被转换成0,因此,只需要找到其他经过md5加密开头是0的值就可以了。
1.将a的值加到?a=xxxx中。
2.成功获取flag
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。