bugku备份是个好习惯

bugku--备份是个好习惯

打开链接之后发现是一串字母,而且还是重复的两段

题目既然是备份是个好习惯,那应该与文件文件有关,在链接后面加上index.php.bak,然后下载这个文件包,以记事本的方式打开,得到

 

代码的意思就是从?开始截断,取?与之后的部分,然后再将?去掉,再把key去掉。

***parse_str() 函数的作用是把查询字符串解析到变量中。例如输入?kkeyey=2  经过以上步骤到达parse_str之后是parse_str('key=2'),相当于$key=2

源代码的意思就是既要2个key的值不相等又要他们的md5值相等。虽然存在这样的碰撞域,但是思路肯定不是一直暴力破解的。

 

 

整段代码的意思是将get的两个参数中的key替换为空(这里可以用kekeyy绕过),然后对key1,key2的值进行md5加密,并进行比较,

如果md5加密的值一样而未加密的值不同,就输出flag.

(不知道为啥是MD5加密吗?看到上面的图有木有,

echo md5($key1);


echo md5($key2);

明显的喽

 

用MD5解密后出现空字符,md5()函数无法处理数组,如果传入的为数组,会返回NULL,所以两个数组经过加密后得到的都是NULL,也就是相等的。

 

 

在链接后面加上?kkeyey1[]=1&kekeyey2[]=a

出现flag了。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值