暴力破解及验证码安全学习笔记

1、暴力破解注意事项

1.破解前一定要有一个有效的字典(Top100 TOP2000 csdn QQ 163等密码);
2.判断用户是否设置了复杂的密码、网站是否存在验证码;
3.尝试登录的行为是否有限制;
4.网站是否双因素认证、Token值等等;

此外,对目标网站进行注册,搞清楚帐号密码的一些限制,比如目标站点要求密码必须是8位以上,字母数字组合,则可以按照此优化字典,比如去掉不符合要求的密码。
如果破解的是管理后台密码,可使用admin/administrator/root帐号机率较高,可以使用这三个帐号+随便一个密码字典进行暴力破解,是破解过程中一定要注意观察提示,如“用户名或密码错误”“密码错误”“用户名不存在”等相关提示。

2、暴力破解分类

2.1基于表单的暴力破解

没有设置验证码,直接抓包,步骤是先爆破用户名,再爆破密码;如果知道用户名的话,直接Burpsuit抓包,设置变量,挂字典爆破。
image

2.2基于验证码暴力破解

一个网站有验证码,怎么绕过?
从客户端、服务端、弱验证码三个角度去绕过

服务端

常见问题:验证码在后台不过期,导致长期使用(php默认session是24分钟过期);验证码校验不严格,逻辑出现问题;验证码设计的太过简单和有规律的被猜解
image

使用Burpsuite抓包后将数据发送到Intrude模块中,将passowrd字段设置为变量,再将密码包导入,点击Start attack开始爆破,等待爆破结束后对比返回数据长度,与其他不同的就是密码了

image

image

客户端

常见问题:不安全的前端js实现验证码;不安全的将验证码在cookie中泄露;不安全的将验证码在前端源代码中泄露

image

image

image

image

image

image

image

基于Token破解

由于token值输出在前端源代码中,容易被获取,因此也就失去了防暴力破解的意义,一般Token在防止CSRF上会有比较好的功效。
首先注意:破解方式为音叉Pitchfork,然后设置password,token的变量
image

在测试器——有效载荷,要设置2个有效载荷
第一个有效负载集设置为1;有效载荷类型设置为简单清单
image

第二个有效载荷集为2,有效载荷类型选择为递归搜索
image

测试器——选项:线程数设为1;Grep-Extract设置好开始token" value=" 结束为" /> 有郊载荷设为递归搜索
"token" value="
image
image

看到长不一样的可能就是密码
image

posted @ 2023-02-17 21:56  守护木叶  阅读(268)  评论(0编辑  收藏  举报