前言

这是接着暴力破解的第四关,前三关已经写了,在这里;

token一般是由服务器生成(也有可能是JS生成)并发送到前端,然后在前端提交某些请求时带上传回服务器进行请求校验,来判断请求是否合法,这就有效提高了链接的安全性,Pikachu的第四关就是token防爆破

解题过程

  • 前面的步骤和前面差不多,先手动填写表单提交并抓包,然后发送到 Intruder模块
  • 设置变量。这里为了减少攻击次数,可以把账号修改为 admin,只将密码和 token设置成变量,攻击类型选择 Pitchfork,因为每次的密码和 token需要同时替换,而不能组合使用。

  • 设置宏定义。点击 option选项,下拉找到 Grep Extract栏,点击Add,在弹出的窗口中点击 Refetch response发一次包并获得返回数据,在下面输入栏处输入 token,找到返回的 token

  • 选中 token值并复制,同时在选中的情况下点击OK。然后将线程数设置为1,并在最下方 Redirections重定向栏,选择 Always

最后设置 Payload,这里第1个 Payload依然和前面一样选择对应的字典即可。第2个即 token变量则选择 Recursive grep递归搜索,最后将前面复制的 token值粘贴在下方文本框

![]

  • 最后开始攻击,并根据返回长度判断是否爆破成功即可

总结

  • 设计安全的验证码:安全的流程+复杂可用的图形
  • 对认证错误的提交进行计数并给出限制,如5次连续密码错误时锁定该IP一定时间
  • 必要情况下使用双因素认证
  • token防爆破:一般做法是将 tokentype="hidden"的形式输出在表单中,在提交认证时一起提交,并在后台对其进行校验。但由于 token值输出在了前端源码中,容易被获取,因此也就失去了防暴力破解的意义。
最后修改:2020 年 08 月 06 日 11 : 38 AM