首页 > 其他 > 详细

HackGame

时间:2019-05-26 21:10:09      阅读:238      评论:0      收藏:0      [点我收藏+]

第一关

 

通过尝试可知修改 id = 后的值能够改变hello的内容,下面的语句给了提示You are not the admin.不妨猜想如果使之出现admin即可过关。

Admin时,失败

 

不断尝试

 

 

过了第一关

 

 

第二关

 

由于出现了cookie不妨想到查看其cookie

 

由于查看cookie后发现guest变成了base64加密后的

 

 

 

 

cookie 改为admin经过base64加密后的

 

可以推断出将cookie改为admin改为base64加密后的即可进入

Base64加密admin

 

 

 

 

第二关完成

 

第三关

 

观察可知只需要求出10932435112经过sha1加密与输入的字符串经过MD5加密后相等的那个字符串即可,但是这样并不可行,所以我们继续尝试先将10932435112经过sha1加密

 

发现其为0e前缀

PHP在处理哈希字符串时,会利用”!=””==”来对哈希值进行比较,它把每一个以”0E”开头的哈希值都解释为0,所以如果两个不同的密码经过哈希以后,其哈希值都是以”0E”开头的,那么PHP将会认为他们相同,都是0

 

攻击者可以利用这一漏洞,通过输入一个经过哈希后以”0E”开头的字符串,即会被PHP解释为0,如果数据库中存在这种哈希值以”0E”开头的密码的话,他就可以以这个用户的身份登录进去,尽管并没有真正的密码。

 

即:如果md的值是以0e开头的,那么就与其他的0e开头的Md5值是相等的

 

网上搜出加密开头为0e

进入!

 

成功破解!

HackGame

原文:https://www.cnblogs.com/lightac/p/10927505.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!