靶场练习-身份认证

靶场练习

身份认证

响应时间异常

利用因子:存在响应时间判断用户名的可能

密码账号认证存在响应时间差距,当密码长度100+时,用户名正确,校验密码时间将过长,适用于按顺序解析的账号密码

注:新版bp没有respose time了,可以用如下列,也可以用logger++插件

字段 含义
Response received 收到响应头的时间(即服务端开始响应)
Response completed 整个响应体(HTML/JSON等)加载完的时间

限制失败次数

利用因子:登录会刷新积累的失败次数

正确账号密码绕过爆破限制,就是时不时登录已知的正确账号刷新失败次数

注:X-Forwarded-For: 116.23.165.1 一般不用这个了,比较远古

限制账号登录

利用因子:用户体量极大

爆破随机账号,适用于用户体量大的

即任意账号,限制密码个数

常规账号登录

利用因子:存在多个认证因素时,不报错

例如:

1
2
3
4
{
"user":"carlos",
"pass":["abc","123456"]
}

—多因素认证—


–!第二因素脆弱

例如:图形验证码可用captcha-killer插件绕过,短信验证码4位数字可爆破

如果是人脸或者指纹、加密狗这类的,建议直接前端绕过跑api,或者寻找注册接口,也可以尝试伪造用户标识

–!第二因素不授权

即有缺陷的双因素验证逻辑

有些应用你登录了就会给token,其他第二因素认证就是一个前端,直接绕过就行

–!token本身存在越权

例如cookie本身可解密,且包含用户信息,例如解密后,user=test,直接改成user=admin


小技巧

bp中存在session,可用用宏跑规定的请求包,替换session以保证服务正常运行,turbo intuder可用自定义python爆破