黑客意志

密码重置思路-小密圈的一道题

前言

考验技能:黑盒逻辑思考思维

提示:Web安全测试学习手册-业务逻辑测试 (文中出现过这个思路)

题目链接:已经下线(密码重置)

一般来说,很多人应该先走一遍流程:

走流程

1.验证码发送

返回包:

2.验证码验证

错误返回:

流程分析察言观色

如上是发送验证码请求对应的响应报文,从报文可以获取到如下的信息:

  • 后端验证验证码的方式是基于SESSION会话ID的
  • 验证码的形势是4位数纯数字

缺陷发现

四位数纯数字,爆破一下?可是问题来了~

错误三次之后就提示失效了验证码:

怎么办?这是一道考思维的题目,国内太多的逻辑漏洞的文章了,可是大多数人学习的是1:1的学习,不会变通。逻辑漏洞不仅仅存在于固有的业务逻辑上,还有代码逻辑~打开你的黑盒测试思维,任何点你都只能猜测,所以为什么不多猜猜?

文章中写过会有万能密码的存在:

测试下在这里并不存在,没有这样的缺陷,这时候你就需要考虑更多的东西,不要做个“表面性”测试的“白帽子”~

之前说了错误三次验证码会失效,但是否是真的失效了?假设没有失效只是“表面性”的输出失效呢?

思考后台代码逻辑,参考我提示中链接的文章:

在这里代入到密码重置这一环节是否有用呢?来测试下:

这里多了一线生机,因为提示了密码错误,而不是失效,那么是否能借助这个来绕过次数限制呢?

在这里你可以选择使用Python来帮助你,但我认为这完全没必要,因为BurpSuite解决了一切:

数据包发送到intruder模块,设置attack type为Pitchfork,设置好payload位置:

Pitchfork的工作模式是多组的,如上我设置了两个payload位置,使用这个模式需要两个payload的数量是一样的,发送的请求为A[1]对B[1]。

设置payload:

第一个为字符块(Character blocks)-这种类型的Payload是指使用一个给出的输入字符串,根据指定的设置产生指定大小的字符块,表现形式为生成指定长度的字符串。

第二个为数字(Numbers)-这种类型的Payload是指根据配置,生成一系列的数字作为Payload。

测试发现真实可用:

总结

黑盒测试的精华是什么?Fuzzing.

你现在掌握的思路归根到底都是Fuzzing的结晶。

在漏洞挖掘中打开你的思维,加油~

想加入的自己加: t.zsxq.com/mUVvRbY (不定期分享0day && 骚操作)

赞(0)
分享到: 更多 (0)

黑客技术,黑客教程,黑客软件,黑客入门,黑客工具,黑客平台,黑客下单,渗透测试,CTF,菠菜,源码,暗网,安卓,物联网安全,网络安全周,国家安全,企业安全,盗QQ号,正规黑客,接单黑客,SRC测试,黑客修改,黑客交流,黑客追款,APP渗透,黑客系统

联系我们联系我们