安洵杯-ezjs
本来躺在实验室摆烂的,但是突然学妹来问,就想着做一做,细看以为很简单,结果牵涉到我没学过的知识点,问了下安逸师傅,写个总结。
给了个登录框
、
随便输入admin,admin然后返回了点东西
我以为按照注释思路走,把secret的值求出来,然后一步一步按照注释改cookie就可以了。其实不然,这里主要是涉及到哈希扩展攻击。
不过这里先开始讲解题
复制注释,我们可以搜到这道题的出题灵感
https://www.shuzhiduo.com/A/x9J2QOEWz6/
很明显题目只是进行了删减了,只留下最重要的哈希扩展这一部分
回到题目
给了我们secret的长度,secret+flag的md5值,以及data的值(也就是flag),满足这三点信息要求,那么就是明显的hash长度扩展攻击。我们就能构造出secret+data+其他值的md5,就能绕过这道题的验证。
具体原理移步这里:https://www.cnblogs.com/p00mj/p/6288337.html
如果要进行构造,那我们可以下载hashpump进行
用法如下:
然后传burp获得flag路径
访问就是flag
哈希扩展攻击原理和hashpump的安装可以参考这篇文章