码迷,mamicode.com
首页 > 其他好文 > 详细

HackGame

时间:2019-05-26 21:15:06      阅读:288      评论:0      收藏:0      [点我收藏+]

标签:base   利用   开头   mil   ==   哈希   style   数据   hack   

第一关

 

通过尝试可知修改 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

标签:base   利用   开头   mil   ==   哈希   style   数据   hack   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!