网安-逻辑漏洞-2&3登陆验证

网安——逻辑漏洞 - FreeBuf网络安全行业门户

目录

2.登录验证安全

图形验证码-验证码可爆破

图形验证码-验证码复用

图形验证码-验证码绕过

图形验证码-客户端验证

图形验证码-验证码前端验证漏洞

短信验证码-无效验证

短信验证码-短信轰炸

验证码回显

1.验证码存在返回的数据包中

2.验证码存在返回数据包但是进行加密

3.还可能存在返回的数据包的头部

验证码与手机未绑定认证关系

修改返回包绕过验证码

验证码转发

无效验证任意验证码登录

验证码为空登录

固定验证码登录漏洞原理

手机短信轰炸

Turbo Intruder

爆破使用

并发

验证码DOS攻击

URL跳转漏洞

FUZZ

目录

参数

JS

JS中泄露插件名字

JS泄漏接口和连接

JS中泄露敏感信息

JS逆向加密参数

3.登录前端验证漏洞

忘记密码-给邮箱/手机发验证码

忘记密码-前端验证绕过

忘记密码-设置新密码时改他人密码

忘记密码-某网站密码找回功能

忘记密码-链接的形式-链接token参数可逆

忘记密码-服务端验证逻辑缺陷

忘记密码-参数带用户名等多阶段验证

重置密码-重置后的默认密码


2.登录验证安全

图形验证码-验证码可爆破

验证码可爆破,即验证码过于简单,例如验证码中字符数量过少,比如只有四位组成,且只包含0-9的数字还没有干扰点,亦或者验证码可以被猜测到(这种情况很少见)可以使用PKAV来进行带验证码的爆破,先用burpsuite来抓包,再将抓取的数据包放在pkav里。

实验操作:

pkav:PKavHTTPFuzzer爆破带验证码的网站

图形验证码-验证码复用

验证码复用,即登录失败后验证码不刷新,仍然可以使用上一次登录时的验证码且有效,存在爆破风险漏洞,如织梦后台的验证码,测试方法如下,抓包后输入对的验证码后,反复发送查看回包。可以看到,没有出现验证码错误,出现的是用户名不存在,那么这里还出现一个点,用户名爆破,只要输入账号错误和密码错误回显不一样,就可以算成用户名可爆破漏洞。

 

图形验证码-验证码绕过

验证码绕过,即验证码可以通过逻辑漏洞被绕过,通常分为以下情况
1.验证码验证返回状态值
可BP修改状态值来绕过前端的验证,修改密码页面中存在验证码绕过漏洞:
2.点击获取验证码时,直接在返回包中返回验证码,通过抓包的来观察reponse包

图形验证码-客户端验证

通过查看源代码发现验证码是前端验证码,可以通过直接抓包的方式在bp里边爆破,参考pikachu bf_client.php

利用验证码输入正确的报文绕过前端校验,不会再提示验证码错误了,直接爆破

也可以直接删除前端代码块 

图形验证码-验证码前端验证漏洞

eg.某网站存在一个链接http://1XX.XX.XX.XX:9080/setup访问这个重置链接,点击修改管理员密码,可以重置密码,但是我们不知道旧密码是多少,只能输入新密码

短信验证码-无效验证

有验证码模块,但验证模块与业务功能没有关联性,此为无效验证,一般在新上线的系统中比较常见。最好在做测试的时候先试一下,有很小的概率可以成功。
eg.获取短信验证码后,随意输入验证码,直接输入两次密码,可成功更改用户密码,没有对短信验证码进行验证。

短信验证码-短信轰炸

短信轰炸是手机验证码漏洞中最常见的一种漏洞类型。在测试的过程中,对短信验证码接口进行重放,导致大量发送恶意短信
有两种情况,一种是完全没限制发短信的频率,另外一种是每60秒发一条短信。
1.没有限制时,任意下发短信时。直接放到Intruder中即可
2.有一定时间间隔,无限下发。
每隔60秒可下发一条短信,无限下发,短信轰炸。
在测试过程中,可通过编写Python脚本来计算短信下发时间间隔,实现短信轰炸。python脚本的编写可以参考上文。

目的:

1.从平台的角度来说,是消耗平台的资源,一般短信的价格是0.04~0.05元左右,数量大的也会造成平台的经济损失。发送间隔,要看是通过什么限制的。如果仅仅是cookie,那么可以获取新的cookie,突破时间间隔。如果是IP,可以用代理池换IP。

2.受害者受到了短信轰炸,也达到了攻击者的目的。

验证码回显

1.验证码存在返回的数据包中

2.验证码存在返回数据包但是进行加密

3.还可能存在返回的数据包的头部

验证码与手机未绑定认证关系

1.发送验证码

2.收到验证码之后使用其他的手机号登录或者认证

修改返回包绕过验证码

修改返回包的值进行绕过
1.0可以改成1,或者改成-1,或者无限大的一个数
2.false改成true
3.500,400等状态码可以改成200
4.fail改成success等

验证码转发

有些开发人员在接收手机号的时候采用的是数组接收,我们就可以同时发送验证码到两个手机,从而达到绕过

在双写绕过的时候,可以使用
188888888,19999999

type=1&phone=188888888,19999999
type=1&phone=188888888,19999999

phone=19386963121
phone=19999999

无效验证任意验证码登录

有验证码模块,但验证码模块与业务功能没有关联性,此为无效验证,一般在新上线的系统比较常见

验证码为空登录

验证码为空登录是在后台接受验证码的时候没有进行过滤,可以进行空值绕过

<div class="blockcode"><blockquote>null
-1
-1000
1.1
[]
ture success

或者删除一些cookie中的字段 等等多多尝试

固定验证码登录漏洞原理

固定验证码一般是开发人员在开发的时候把验证码写死了,只要能破解出来固定验证码就可以进行绕过

0000、6666,9999,1234,1111、8888、000000、123456等,一般多出现于设备、硬件设备
测试:1111 --- 9999  1234 23456 3456 6789
000000 999999   123456789 987654321

手机短信轰炸

在一些身份校验处,有的时候需要输入手机号,接受验证码,比如登录、忘记密码、注册、绑定、活动领取、反馈处等,如果没有对发送短信进行约束,可以达到5秒发送10条短信,甚至更多的短信,对业务造成影响,这个就是短信轰炸漏洞,短信轰炸漏洞分为两种

1.横向轰炸:对单个手机号码做了接收验证次数,但是可以对不同手机号发送短信无次数限制
2.纵向轰炸:对一个手机号码轰炸多次

1.利用空格绕过短信条数限制

通过在参数值的前面加上空格,或者后面加上,或者多个空格,进行绕过一天内发送次数的限制,mobile= 19978657654,前面加个空格,就可以再次发送成功。


2.修改cookie值绕过短信次数

有些发送短信的次数是根据cookie值进行判断,利用当前cookie值来验证发送次数的话,很容易被绕过

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值