技巧分享:一道关于重置密码逻辑漏洞的CTF题

起因

在i春秋社区论坛看到一篇帖子:【逻辑漏洞】挑战你的思维方式 ,作者@sqler分享了他解决问题的思路,很清晰明了,值得点赞~
本次想分享一个更快捷的思路以供参考。

开始

目标站点:http://lab1.xseclab.com/password1_dc178aa12e73cfc184676a4100e07dac/index.php


突破点就在于忘记密码的逻辑处理了

抓包来分析admin与其他任意用户名(building)的区别

核心就在于构造sukey的值

对再次发包所得sukey=31c04d0f6c95e8f53442e1e674c98b74进行MD5解密,发现是本地时间戳

而返回包中的服务器时间是使用GMT,及与本地北京时间相隔8小时

如此就简单了,设置username=admin,取得返回包中的服务器时间+8小时,转换为unix时间戳,在进行MD5加密即可算出重置密码的核心参数sukey

只需要仔细的判断加以合理的分析,这道CTF题就做出来了。

此类型的逻辑漏洞在实际测试环境中也会出现,需要细细体会。

有人质疑这题做的有什么用?这里给出了合理的答案奇虎360任意用户密码修改漏洞

懂的人自然懂

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值