暴力破解攻击概述:html
连续性尝试 + 字典 + 自动化前端
一个有效的字典,能够大大提升暴力破解的效率web
经常使用的帐号密码 弱口令,好比经常使用用户名/密码 TOP 500等 ;算法
互联网上被脱裤后帐号密码(社工库),好比CSND当年泄露的约600w用户信息;后端
使用指定的字符使用工具按照的规则进行排序组合算法生成的密码;安全
暴力破解漏洞测试流程:服务器
一、确认登陆接口的额脆弱性cookie
确认目标是否存在暴力破解的漏洞(确认被暴力破解的 可行性)函数
好比:尝试登陆——抓包 --- 观察验证元素和 response 信息,判断是否存在被暴力破解的可能。工具
二、对字典进行优化
根据实际的状况对字典进行优化,提升爆破过程的效率
三、配置自动化工具(好比 线程、超时时间、重试次数等),进行自动化操做。
字典优化技巧:
一、根据注册提示信息进行优化
对目标站点进行注册,搞清楚帐号的一些限制,好比目标站点要求密码必须6位以上,字母数字组合,则能够按照此优化字典,好比去掉不符合要求的密码;
二、若是爆破的是管理后台,每每这种系统的管理是admin/adminnistrator/root的概率比较高,可使用这三个帐号 + 随便一个密码,尝试登陆,观看返回的结果,肯定用户名。好比输入xxx/yyy 返回 用户或密码错误;输入admin/yyy 返回 密码错误,则基本能够肯定用户是admin;所以能够只对密码进行破解便可,提升效率;
基于表单的暴力破解攻击 (基于 brup suite)burp suite free edition-intruder
burp一个集成的 web 安全测试系统,有 free(免费) 和 pro(收费) 两个版本
proxy 和 intruder 两个模块
官网下载:https://portswigger.net/burp/download.html
暴力破解之不安全的验证码分析
咱们通常用验证码来作什么? 登陆暴力破解 防止机器恶意注册
验证码的认证流程:
客户端request登陆页面,后台生成验证码:1.后台使用算法生成图片,并将图片response给客户端;
2.同时对提交的验证码与SESSION里面的进行比较;
客户端从新刷新页面,再次生成新的验证码:
验证码算法中通常包含随机函数,因此每次刷新都会改变;
--- 不安全验证码 -on client- 绕过
查看验证码是不是在前端作的,在前端作验证码是不安全的;后端没有验证 验证码是确定能够被绕过的;
不安全的验证码:
全部验证码生成操做直接经过前端js来实现 这就是一个纸老虎;
将验证码在cookie中泄露,容易被获取;
将验证码在前端源代码中泄露,容易被获取;
不安全的验证码 --- on server 常见问题
验证码在后台不过时,致使能够长期被使用;
验证码校验不严格,逻辑出问题;
验证码设计的太过简单和有规律,容易被猜解;
查看验证码是否能够屡次被利用;服务端绕过;服务器端将验证码字符串以明文cookie方式给了前端,那验证码没有什么用;因此要用一次就销毁一次验证码
Token能够防暴力破解?其实不能够的,只要每次在暴力破解的时候每次获取一次 Token 这个值就能够了;因此这个值也不能够明文;
学习所用;而且本身作了一下简单的测试;
本身搭建的环境测试;以上用的 burp 作的测试;