登录注册表单渗透
大家在甲方授权的渗透测试中,经常会遇到各种表单:登录、注册、密码修改、密码找回等表单,本技术稿着重介绍关于各种表单的渗透经验,抛砖引玉,欢迎大家交流互动。
方便大家查看,制作如下思维导图,以下只详细介绍其中一些重要常用的漏洞。
一、登录处是否可绕过—>(抓包decode+爆破)【高危】
password在前端用url编码—>URL Decode
爆破成功
漏洞修复:
1、增强验证码机制,为防止验证码被破解,可以适当增加验证码生成的强度,例如中文图形验证码。
2、用户名或密码输入错误均提示“用户名或密码错误”,防止黑客获取到注册用户信息。
3、限制用户登录失败次数。
4、限制一定时间内IP登录失败次数。
5、使用双因子验证策略
二、账号/密码可枚举 [高危]
漏洞描述:由于页面对输入的账号、密码判断的回显不一样,攻击者可以通过回显差异进行用户名的枚举,拿到账户名来进行弱口令的爆破。
用户名存在
用户名不存在
漏洞修复:
1.增加验证机制,如验证码
2.添加token
3.统一身份验证失败时的响应,用户名或密码错误
三、账号/密码硬编码【高危】
漏洞描述:账号或密码都被硬编码在页面中,只需要输入正确用户名/密码/验证码即可
漏洞修复:
1.取消默认硬编码配置,删除敏感信息,禁止直接明文存储在前端登陆框。
四、手机验证码可爆破
前提:该页面没有图形验证码或图像验证码失效+后端对验证码输入错误次数没有做任何限制+验证码的时效性高于爆破时间.
爆破成功
漏洞修复:
1.点击获取手机验证码后产生即时更新强图形验证码
2.限制输入错误次数
3.缩短验证码的有效期
五、短信轰炸
修改号码回显为ok
现在可以写个小程序对目标进行循环发包,实现短信轰炸
Note:为了防止被ban,给大家说个技巧:可以停顿十秒再发下一个;有时虽然后端对其进行验证,但是还是有办法绕过 1>删除cookie值 2>手机号后加空格或/n
漏洞修复:
1.后端对同一手机号在某段时间只能发送一条短信,并且设置发送次数的上限
六、注册表单之批量注册
正确的信息注册 response:{“content”:”/User”,”type”:1,”data”:null}
对手机号进行批量遍历,发现批量成功,存在批量注册漏洞
七、注册表单之覆盖注册
漏洞详情:此漏洞是指以前已经用一个手机注册了会员,由于此漏洞的存在,导致可以利用该手机号重复注册,并且会覆盖之前注册的会员信息。