写点什么

登陆框有多危险,可能你还不知道。。。

发布于: 5 小时前
登陆框有多危险,可能你还不知道。。。

目录

  • 001 暴力破解 1. 指定用户名爆破密码 2. 指定密码爆破用户名

  • 0x02 SQL 注入 1\. 万能密码 2.SQL 注入

  • 0x03 Self-XSS+CSRF

  • 0x04 任意用户注册 1\. 失效的身份认证 2\. 验证码可暴破

  • 0x05 任意密码重置

  • 0x06 短信轰炸 1\. 单个用户短信炸弹 2\. 轮询用户

  • 001 暴力破解 1. 指定用户名爆破密码 2. 指定密码爆破用户名

  • 0x02 SQL 注入 1\. 万能密码 2.SQL 注入

  • 0x03 Self-XSS+CSRF

  • 0x04 任意用户注册 1\. 失效的身份认证 2\. 验证码可暴破

  • 0x05 任意密码重置

  • 0x06 短信轰炸 1\. 单个用户短信炸弹 2\. 轮询用户

001 暴力破解

1. 指定用户名爆破密码

传统型爆破思路,用户名可以通过猜测或者信息收集获得。


猜测:admin、网站域名等


信息收集:新闻发布人、whoami 等

2. 指定密码爆破用户名

如果是后台登陆处,那么性价比会降低,因为后台登陆处,用户名可能会很少,甚至只有一个。


更加适用于普通用户登陆处。


指定弱口令爆破用户名,拿 TOP1 弱口令 123456 尝试,百试不爽。


分享一个遇到过的看似比较费劲的防御措施



编写脚本绕过防御策略



再分享一次遇到特别恶心的一次,用 BurpSuite 爆破时,响应包长度、状态码完全相同;


那时候还没有设置关键字匹配数据包的意识,甚是悲催,


我说:没有弱口令;同事:有啊,分明有很多。


在爆破的时候,添加匹配关键字:


可以添加登陆成功时,独有的关键字;


也可以添加登陆失败时,独有的关键字。



然后返回结果这里,便会发现多出了一列,匹配到关键字的带有对勾,没有匹配到的则空白


0x02 SQL 注入

1. 万能密码


2.SQL 注入

0x03 Self-XSS+CSRF

经测试发现用户登陆处存在 XSS,但只是 Self-XSS,自己插自己,不用灰心,再看看这个登录框是否存在 CSRF 即可。




构造 CSRF POC,将 XSS 的 payload 放到用户名这里。



测试后,发现成功弹窗


0x04 任意用户注册

如果登陆框附近存在用户注册功能时,可以尝试

1. 失效的身份认证

如校验值默认为空



2. 验证码可暴破

简单粗暴

0x05 任意密码重置

任意密码重置姿势太多,附上我做的脑图



赘述一种我比较喜欢的方式,在找回密码处不存在任意密码重置漏洞时,不用灰心,登陆进去,在个人中心处依旧会有很大几率存在任意密码重置漏洞。


如:


CSRF 重新绑定手机号、邮箱号,


重新绑定时,用户身份可控,如最后的请求包可以通过修改用户 id 来控制绑定的用户

0x06 短信轰炸

存在用户注册、用户找回密码等功能时,尝试是否存在短信炸弹

1. 单个用户短信炸弹

指定单个用户,然后重放发送短信的 HTTP 请求。


BurpSuite 中的一个 Tricks:不修改参数,直接重放数据包,对于短信炸弹的测试非常实用


2. 轮询用户

每次测试这个,都是使用学校里的手机卡,遍历后面的几位,这样就可以直接询问同学是否收到短信;


每次都很刺激。




我是渗透测试工作者,平时喜欢研究安全方面的内容,如果你也对这方面感兴趣,可以一起交流,也可以【点我查看】网络安全学习文档

001 暴力破解

1. 指定用户名爆破密码

传统型爆破思路,用户名可以通过猜测或者信息收集获得。


猜测:admin、网站域名等


信息收集:新闻发布人、whoami 等

2. 指定密码爆破用户名

如果是后台登陆处,那么性价比会降低,因为后台登陆处,用户名可能会很少,甚至只有一个。


更加适用于普通用户登陆处。


指定弱口令爆破用户名,拿 TOP1 弱口令 123456 尝试,百试不爽。


分享一个遇到过的看似比较费劲的防御措施



编写脚本绕过防御策略



再分享一次遇到特别恶心的一次,用 BurpSuite 爆破时,响应包长度、状态码完全相同;


那时候还没有设置关键字匹配数据包的意识,甚是悲催,


我说:没有弱口令;同事:有啊,分明有很多。


在爆破的时候,添加匹配关键字:


可以添加登陆成功时,独有的关键字;


也可以添加登陆失败时,独有的关键字。



然后返回结果这里,便会发现多出了一列,匹配到关键字的带有对勾,没有匹配到的则空白


0x02 SQL 注入

1. 万能密码


2.SQL 注入

0x03 Self-XSS+CSRF

经测试发现用户登陆处存在 XSS,但只是 Self-XSS,自己插自己,不用灰心,再看看这个登录框是否存在 CSRF 即可。




构造 CSRF POC,将 XSS 的 payload 放到用户名这里。



测试后,发现成功弹窗


0x04 任意用户注册

如果登陆框附近存在用户注册功能时,可以尝试

1. 失效的身份认证

如校验值默认为空



2. 验证码可暴破

简单粗暴

0x05 任意密码重置

任意密码重置姿势太多,附上我做的脑图



赘述一种我比较喜欢的方式,在找回密码处不存在任意密码重置漏洞时,不用灰心,登陆进去,在个人中心处依旧会有很大几率存在任意密码重置漏洞。


如:


CSRF 重新绑定手机号、邮箱号,


重新绑定时,用户身份可控,如最后的请求包可以通过修改用户 id 来控制绑定的用户

0x06 短信轰炸

存在用户注册、用户找回密码等功能时,尝试是否存在短信炸弹

1. 单个用户短信炸弹

指定单个用户,然后重放发送短信的 HTTP 请求。


BurpSuite 中的一个 Tricks:不修改参数,直接重放数据包,对于短信炸弹的测试非常实用


2. 轮询用户

每次测试这个,都是使用学校里的手机卡,遍历后面的几位,这样就可以直接询问同学是否收到短信;


每次都很刺激。




我是渗透测试工作者,平时喜欢研究安全方面的内容,如果你也对这方面感兴趣,可以一起交流,也可以【点我查看】网络安全学习文档




用户头像

我是一名网络安全渗透师 2021.06.18 加入

关注我,后续将会带来更多精选作品,需要资料+wx:mengmengji08

评论

发布
暂无评论
登陆框有多危险,可能你还不知道。。。