关于暴力破解的一些学习笔记(pikachu)
这几天的笔记都懒得发博客都写在本地了,随缘搬上来
什么是暴力破解
就是在攻击者不知道目标账号密码情况下的,对目标系统的常识性登陆
一般会采用一些工具+特定的字典 来实现高效的连续的尝试性登陆
一个有效的字典,可以大大提高暴力破解的效率
à常用的账号密码(弱口令),比如常用用户名/密码top 500等
à社工库
à使用指定的工具来生成字典
如果一个网站没有对登陆接口实施防暴力破解的措施,或者实施了不合理的措施。则该称该网站存在暴力破解漏洞。
1. 是否要求用户设置了复杂的密码
2. 是否每次认证都使用安全的验证码
3. 是否对尝试登陆的行为进行判断和限制
4. 是否在必要的情况下采用了双因素认证
5. …等等
暴力破解漏洞测试流程
- 确认登陆接口的脆弱性,尝试登陆---抓包---观察验证元素和返回的信息,判断是否存在被暴力破解的可能,例如测试是否有连续登陆几次就要过一段时间登陆的风控规则。或者查看报错是返回”账号或密码错误”还是返回”密码错误”来判断自己的用户名是否猜对了。
- 对字典的优化,根据实际情况对字典进行优化,可以先自己注册一个账号,看看网站对账号密码的需求,再筛选出合适的密码做成字典,提高爆破的效率
- 工具的自动化操作,配置自动化工具,比如线程,超时时间,重试次数等,进行自动化的操作
针对pikachu靶场的基于表单的暴力破解

随便传一个值进行抓包
发到爆破模块
选择Cluster bomb的攻击方式
选择username和password两个参数
配置好payload
就可以开始爆破,

还有一个地方值得注意

这里可以判断你请求的页面是否返回了这个list里面的内容
这样我们可以把登陆时账号或密码的错误提示放到这里面
这样在我们大量重发的时候就可以根据有没有返回到这个错误来判断账号密码是否爆破成功
例如

当我们密码输出错误的时候会弹出这样的错误信息
我们就可以把这个错误信息放到Grep-Match里面

我们再次进行爆破试试看

这里就会多出一列来判断是否返回了你设置的信息,这算一个小技巧吧
当然也可以用length来进行判断
暴力破解的防范与绕过
验证码的认证流程:
- 打开登陆页面,向后台发送一个请求,当后台收到请求以后,会调用一个生成验证码的函数去生成一个验证码,回到前端变成一个图片返回给你,同时将函数生成的值存到session中。
- 用户输入账号密码验证码提交的时候,后台对提交的验证码与session中的进行比较
- 如果验证成功就会提示你成功,如果验证失败就提示失败,然后后台会将现在的验证码销毁,验证码一定是要一次一用的。
- 后台一般也会对验证码设置一个超时时间,如果超过规定的比如一分钟,没有从前端获取到验证码信息,那就需要重新获取一次验证码。
绕过服务端的验证码验证
首先先踩点

当全部都是错的时候
会返回验证码输入错误

当验证码输入正确的时候,那就会返回用户名或密码错误
抓包

在我们的登陆页面刷新一个新的验证码
把新的验证码替换到我们抓的包里

发现服务端返回的是用户名或者密码错误,这说明了,我们的验证码起作用了,那么就可以放到爆破模块中进行爆破

这样就爆破成功了

源码内应该在后面一行保证验证码一次一用的原则
绕过客户端的验证码验证

验证码直接在前端的js进行生成
那我们可以先通过前端的验证,再用bp后端发包,这样就可以绕过前端的js验证

抓到包以后放到重发器中,换了账号密码再发一次,

发现这里只在前端做了验证并没有再在后端再做一次验证,这样又可以爆破了,爆破的过程就不再演示了。。

token能防爆破吗
答案是不能的
在前端我们看到了token

我们只要写个脚本获取到每次刷新了页面的token,再进行重发,这样token就形同虚设
关于暴力破解的一些学习笔记(pikachu)的更多相关文章
- XSS跨站脚本攻击学习笔记(pikachu)
颓废了几天,该好好努力了. XSS概述 XSS漏洞是web漏洞中危害较大的漏洞,是一种发生在web前端的漏洞,所以危害的对象也主要是前端用户,XSS可以用来进行钓鱼攻击,前端js挖矿,获取用户cook ...
- pikachu学习-暴力破解模块
安装好XAMPP,burpsuite,配置好pikachu我们就可以进行pikachu平台的漏洞学习 我这篇博客主要写暴力破解模块讲解,它分为4个小模块,分别是“基于表单的暴力破解”,“验证码绕过(o ...
- 学习笔记:暴力破解WIFI小软件
小弟 自己的学习笔记,做练习的 ,缺陷还很多,做到无法解决速度问题就不想做下去了,如果要看的话 主要是思路问题,获取句柄,控制句柄而已,代码比较简单.大神勿喷啊 破解DEMO源码:http://dow ...
- pikachu——暴力破解
前述: 前面学习了sqli-labs 和 DVWA,也算是初步涉足了web漏洞,了解了一些web漏洞的知识.所以在pikachu上面,会更加仔细认真,把前面没有介绍到的知识点和我一边学习到的新知识再补 ...
- 搭建pikachu平台及暴力破解
一.先将Pikachu文件放在网站根目录下 二.修改pikachu网站的配置文件 inc/config.inc.php define('DBUSER', 'user'); define('DBPW' ...
- Pikachu漏洞练习平台实验——暴力破解(一)
概述 一个有效的字典可以大大提高暴力破解的效率 比如常用的用户名/密码TOP500 脱裤后的账号密码(社工库) 根据特定的对象(比如手机.生日和银行卡号等)按照指定的规则来生成密码 暴力破解流程 确认 ...
- Pikachu练习平台(暴力破解)
Pikachu练习平台(暴力破解) 因为下面要用到burp suite,这里先简单介绍一下intruder模块的东西 Target选项: 设置攻击目标,可以通过proxy发送 Pasit ...
- DVWA-暴力破解学习笔记
DVWA-暴力破解 1.暴力破解 2.burp安装证书 3.万能密码 一.暴力破解 burp四种暴力破解类型: sniper 一个字典,两个参数,先匹配第一项再匹配第二项 Battering ra ...
- 【Linux笔记】阿里云服务器被暴力破解
一.关于暴力破解 前几天新购进了一台阿里云服务器,使用过程中时常会收到“主机被暴力破解”的警告,警告信息如下: 云盾用户您好!您的主机:... 正在被暴力破解,系统已自动启动破解保护.详情请登录htt ...
随机推荐
- 数据源管理 | 基于JDBC模式,适配和管理动态数据源
本文源码:GitHub·点这里 || GitEE·点这里 一.关系型数据源 1.动态数据源 动态管理数据源的基本功能:数据源加载,容器维护,持久化管理. 2.关系型数据库 不同厂商的关系型数据库,提供 ...
- Python常用模块之模块的使用
一 模块介绍 1.什么是模块? #常见的场景:一个模块就是一个包含了一组功能的python文件,比如spam.py,模块名为spam,可以通过import spam使用. #在python中,模块 ...
- 用c#每日更换“必应背景图片”为“桌面壁纸”
必应每天都会更换背景图片,都非常漂亮,有的时候还十分惊艳,同时还会根据每个地区的特色不同应用不同的图片. 下面用c#抓取必应每天的背景图片,并实现桌面壁纸的每天自动切换 实现思路 1.通过获取&quo ...
- Rust入坑指南:万物初始
有没有同学记得我们一起挖了多少个坑?嗯-其实我自己也不记得了,今天我们再来挖一个特殊的坑,这个坑可以说是挖到根源了--元编程. 元编程是编程领域的一个重要概念,它允许程序将代码作为数据,在运行时对代码 ...
- 没用过.gitIgnore还敢自称高级开发?
Git是跟踪项目中所有文件的好工具, 但是,您会希望在项目的整个生命周期中不要跟踪某些文件及其变化. 系统文件(i.e. Mac系统的.Ds_Store) 应用程序配置文件(i.e. app.conf ...
- 错误:Attempt to resolve method: [XXX方法] on undefined variable or class name: [XXX类]的解决(IDEA打包jar问题)
问题: 使用JMeter调用jar包的时候,报错误信息Typed variable declaration : Attempt to resolve method:[XXX方法] on undefin ...
- PTA数据结构与算法题目集(中文) 7-32
PTA数据结构与算法题目集(中文) 7-32 7-32 哥尼斯堡的“七桥问题” (25 分) 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示. 可否走过这样的七 ...
- mpvue微信小程序怎么写轮播图,和官方微信代码的差别
目前用mpvue很多第三方的ui库是引入不了的,因为它不支持含有dom操作. 那我们要做轮播图的话一个是手写另外一个就是用小程序的swiper组件了: 官方代码: <swiper indicat ...
- 过滤器filter学习进度一
过滤器filter他的理解是: filter是对客户端访问资源的过滤,符合条件放行,不符合条件的不放行,并且可以对目标资源访问的前后进行逻辑处理. 快速入门: 1.编写一个过滤器的类实现filter接 ...
- 分治算法(C++版)
#include<iostream>using namespace std; void printArray(int array[],int length) { for (i ...