pikachu之暴力破解

2021-03-12 5,271

暴力破解

Sniper

image.png

只可选取一个payload

image.png

由下图可以看到,在Sniper当第一个kele进行破解时,是在username的位置,当payload全部用完时,其就会移动到password的位置

image.png

image.png

Battering ram

image.png

如下图,此模式可将username和password设置为相同的payload

image.png

Pitchfork

image.png

如下图,此模式可以设置两个payload

image.png

image.png

image.png

如下图,此模式下,两个payload将一一对应匹配

image.png

Clusterbomb

image.png

此模式一样可以设置两个payload,唯一区别在于,其两个payload会逐一进行匹配,所以此方法会在一般的暴力破解常用

image.png

基于表单的破解

此为最容易进行的暴力破解,在此处如果没有登录限制,则可无限制暴力破解(账号密码都可)

image.png

当输入错误的账号时,会提示账号或密码错误,如若存在用户枚举,则可只进行密码的暴力破解

image.png

进行抓包处理,并且将抓到的包放入Intruder

image.png

根据返回的爆破结果,我们在看到其长度的不同,即可区分出结果

image.png

image.png

基于服务器的验证码爆破

image.png

验证码在服务器中验证常见的问题

1.      验证码在服务器中不过期,长时间有效,可以长期使用

2.      验证码校验不合格,逻辑出现问题

3.      验证码的设计规律过于简单,容易被猜解

我们可以采取抓包的方法来验证验证码是否可以长期使用,抓包发生至Repeater

image.png

在上图的基础上将验证码设置为空,显示结果为

image.png

如随便输入验证码,结果为

image.png

将正确的验证码输入,结果为

image.png

修改账号密码,不修改验证码,结果为

image.png

因此可以判断,其验证码可以长期使用,下面进行暴力破解即可

同时可以看到服务端将验证码字符串以明文COOKIE的方式给了前端

image.png

防范措施:可以在验证码后面添加使其每次使用完毕失效即可

基于客户端的爆破

1.      使用签到js实现验证码(无效验证码)

2.      将验证码在cookie中泄露,容易被获取

3.      将验证码在前端源代码泄露,容易被获取

image.png

查看此页面的源代码发现验证码是在前端使用js生成的

image.png

并且是在前端直接调用

image.png

因此可推断,验证码在前端js生成,并没有验证作用

在抓包将其发送至Repeater,将验证码修改为一个不存在的,发现并没有去验证,而是返回了一个用户名或密码错误的提示,下面进行暴力破解即可。

image.png

暴力破解的防御措施:

1.      设计安全的验证码(可以图形化)

2.      并认证错误的提交给出计数并进行限制

3.      使用双因素认证

 

注意:Token并不能阻止暴力破解,因为token每次会变,但是可以利用工具去提前获取token的值,进行更改,所以不能彻底的防止暴力破解

image.png

本文作者:漠北

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/154658.html

Tags:
评论  (0)
快来写下你的想法吧!

漠北

文章数:1 积分: 20

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号