Pikachu---暴力破解

暴力破解

连续性尝试+字典+自动化

有效字典:

  1. 常用的账号密码(弱口令),如常用用户名/密码TOP 500等。

  2. 互联网上被脱裤后账号密码(社工库),如CSDN当年泄露的约600w用户信息。

  3. 使用指定的字符使用工具按照指定的规则进行排列组合算法生成的密码。

网站怎样才算存在暴力破解漏洞:

网站没有对登录接口实施防暴力破解的措施或实施了不合理的措施。

具体措施:

  1. 是否要求用户设置了复杂的密码。(对密码位数进行限制)

  2. 是否每次认证都使用安全的验证码。(有些验证码可以被绕过)

  3. 是否对尝试登录的行为进行判断和限制。(封停账户等)

  4. 是否存在必要的情况下采用了双因素认证。(基于三变量产生的一次性密码)

。。。等等

暴力破解漏洞测试流程:

  1. 确认登录接口的脆弱性(尝试登录-抓包-观察验证元素和response信息)

  2. 对字典进行优化

  3. 工具自动化操作(线程、超时时间、重试次数)

字典优化技巧:

  1. 根据注册提示信息进行优化,对目标站点进行注册,搞清楚账号密码的一些限制,如目标站点要求密码是6位以上字母组合,则可以去掉不符合要求的密码。

  2. 若爆破的是管理后台,往往这种系统的管理员是admin/administrator/root的几率比较高,可以使用这三个账号+随便一个密码,尝试登录,观看返回结果,确定用户名。

burpsuite部分内容介绍:

基于表单的暴力破解:

火狐浏览器使用burpsuite代理并将拦截关闭,随便输入用户名和密码,点击登录提示用户名或密码不存在。

在burpsuite中查看抓到的包发现用户名和密码没有任何验证因素,存在暴力破解漏洞,将包右击发送至Intruder模块。

清除所有默认标记,将我们想要爆破的用户名和密码添加标记,攻击类型选择Cluster bomb

Payload type选择Runtime file,分别载入两个字典。

将页面提示信息添加到Grep-Match中。

点击开始爆破,发现结果有一条没有标记,尝试输入登录成功。

上述是将返回信息做标记判断正确结果,也可以根据返回的数据包长度判断正确结果。

验证码绕过(on client):

我们一般用验证码来做什么?

  1. 登录暴力破解。
  2. 防止机器恶意注册。

验证码的认证流程:

什么都不输入或只输入用户名和密码点击登录,页面弹出“请输入验证码!”的提示框,而不是用户名和密码不存在。

右击页面查看页面源代码,发现验证码的生成和验证都是用JavaScript在前端页面写的,可以利用暴力破解进行绕过。

火狐浏览器使用burpsuite代理并将拦截关闭,随便输入用户名和密码并输入正确的验证码,页面提示用户名或密码不存在。

在Proxy---HTTP history中找到客户端发送的数据包,右击发送到Repeater模块,将数据包中的验证码清除或者随意修改,点击Go,页面都返回用户名或密码不存在,可以确认后台没有对验证码进行验证。

之后的操作与基于表单的暴力破解步骤完全一致,不做赘述。

不安全的验证码-on client常见问题:

  1. 使用前端js实现验证码(纸老虎)。
  2. 将验证码在cookie中泄露,容易被获取(通过脚本程序刷新页面,提前获得cookie中的验证码)。
  3. 将验证码在前端代码中泄露,容易被获取。

验证码绕过(on server):

不安全的验证码-on server常见问题:

  1. 验证码在后台不过期,导致可以长期被使用。
  2. 验证码校验不严格,逻辑出现问题(验证码不起作用)。
  3. 验证码设计的太过简单和有规律,容易被猜解(123456)。

什么都不输入,页面提示用户名不能为空,只输入用户名和密码,页面提示验证码不能为空,火狐浏览器使用burpsuite代理并将拦截关闭,随便输入用户名和密码并输入正确的验证码,页面提示用户名或密码不存在。

在Proxy---HTTP history中找到客户端发送的数据包,右击发送到Repeater模块,将数据包中的验证码清除或者随意修改,点击Go,页面都返回验证码输入错误,可以确定后台对验证码进行了验证。

点击刷新页面,将数据包中的验证码替换为新的验证码,点击Go,页面返回用户名或密码不存在,可以确定验证码存在不过期的问题。

之后的操作与基于表单的暴力破解步骤完全一致,不做赘述。

token放爆破?

防暴力破解的措施总结:

  1. 设计安全的验证码(安全的流程+复杂而又可用的图行)。
  2. 对认证错误的提交进行计数并给出限制,比如连续5次密码错误,锁定2小时。
  3. 必要的情况下,使用双因素认证。

打开火狐浏览器工具---Web开发者---Firebug,查看表单源码,发现表单中隐藏了token,类似隐藏的验证码,每次刷新页面都会随机生成新的token,查看后台源码可知token使用一次后就被清除。

 

但token在每次刷新页面都会以明文的方式被提前输出到页面的表单中,可以被获取,因为可以被暴力破解绕过。

posted @ 2020-03-20 10:18  强霸卓奇霸  阅读(318)  评论(0)    收藏  举报
https://blog-static.cnblogs.com/files/xiaokang01/js.js 这是添加的文件的链接 color="240,230,140" 粒子的颜色设置 opacity="1" 粒子的透明度 count="75" 粒子的个数