一、验证码绕过----server服务器

1、随意输入账号密码,并按图输入验证码,点击登录进行抓包

2、发送到repeater重发器,目的是为了验证“验证码无条件不刷新”

3、发到重发器这,先什么都不改,直接点击发送

4、未修改请求包,直接点击发送的响应结果如下:在响应报文找到“账号或密码不存在”

5、现在修改请求包验证码的值,再点击发送

6、随意修改一下请求包的验证码值,得到的响应如下:找到“验证码输入错误哦!”

注:两次发送请求得到的响应结果说明:“验证码无条件不刷新,无条件不刷新是指在某一时间段内,无论登录失败多少次,只要不刷新页面,就可以无限次的使用同一个验证码来对一个或多个用户帐号进行暴力猜解。”

7、得到“验证码无条件不刷新”的结论后,回到代理处,将抓到的包发送到intruder,进行账号密码爆破(接下来就是重复昨日发布的那篇暴力破解)

7、

8、

9、

10、点击开始攻击,弹出窗口,长度不一样对应的账号密码即为爆破出来的正确账号密码

11、就可以拿爆破出来的账号密码去登录了,在这我就不验证了。

二、验证码绕过----client客户端

1、

2、

3、

4、验证码修改之后,没有对应的错误提示

5、对验证码不进行验证,可以选择直接爆破

6、 

三、token爆破

1、

2、

3、

4、随意修改了原理请求包的token值,返回响应“token值错误”

5、token值错误,无法验证账号密码的正确性,需要我们每一次发送请求包都要拿到上一个返回包的token值放在token包里面

6、如何保证“ 每一次发送请求包都要拿到上一个返回包的token值”,回到dialing出,把数据包发送到测试器

7、注意选择的攻击模式、变量为密码和token

8、到测试器的选项处设置,线程设置为1(只有获取上一个请求返回的token值才能,做下一次请求,无法并发)

9、匹配响应包的token值

10、重定向设置为“总是”

11、设置第1个有效负载集

12、设置第2个有效负载集

​​​​​​

13、法一:直接点击开始攻击,进行爆破

14、法二:设置grep-match,匹配并显示登录成功的

点击开始攻击,弹出窗口,就有login success列,打勾的即为成功

四、知识点:

(一)验证码认证流程

1:客户端请求登录页面,后台生成验证码

后台使用算法生成图片,并将图片响应给客户端
同时将算法生成的值全局赋值存到SESSION中
2:校验验证码

客户端将认证信息和验证码一同提交
后台对提交的验证码与SESSION里面的进行比较
3:客户端重新刷新页面,再次生成新的验证码

验证码算法中一般包含随机函数,所以每次刷新都会改变

(二)服务端验证码常存在的问题:

1、验证码在后台过期时间太长,导致验证码可以长期被使用
2、验证码校验不严格,逻辑出现问题
3、验证码以明文的形式出现在HTTP响应包里面
4、验证码设计的太过简单,存在规律,可以被猜到

(三)客户端验证码的常见问题:

1、使用前端js实验验证码,压根不起验证作用
2、将验证码在cookie中泄露,容易被获取
3、将验证码在前端源代码中泄露,容易被获取

可以做以下测试:

1、不输入验证码会不会报错
2、输错验证码会不会报错
3、是不是正确输入验证码才会报:用户名或者密码错误

(四)Burp Suite Intruder的4种攻击类型

1、Sniper(狙击手模式)—— 1个有效负载集,一个一个来,即使有很多个变量,也一次只替换一个变量,其他变量不变

狙击手模式使用一组payload集合,它一次只使用一个payload位置,

2、Battering ram(攻城锤模式)—— 1个有效负载集,很多变量同时替换为字典的同一个值

攻城锤模式与狙击手模式类似的地方是,同样只使用一个payload集合,不同的地方在于每次攻击都是替换所有payload标记位置,而狙击手模式每次只能替换一个payload标记位置。

3、Pitchfork(草叉模式)——2个有效负载集,按位置顺序一一对应,以长度短的有效负载集为准

草叉模式允许使用多组payload组合,在每个标记位置上遍历所有payload组合,

4、Cluster bomb(集束炸弹模式)——2个有效负载集,排列组合

集束炸弹模式跟草叉模式不同的地方在于,集束炸弹模式会对payload组进行排列组合

(五)防范爆破方法

1、设计安全的验证码(安全的流程+复杂而又安全的图形)

2、对认证错误给出次数限制,超出次数就锁定账户一段时间

3、使用双因素认证

参考链接:

pikachu靶机学习记录_lainwith的博客-CSDN博客_皮卡丘靶机

pikachu靶场通过教程_锋刃科技的博客-CSDN博客_pikachu靶场通关

Burp Suite - Intruder暴力破解模块的4种攻击类型_建瓯最坏的博客-CSDN博客

pikachu练习---暴力破解-验证码相关推荐

  1. Pikachu靶场暴力破解通关

    目录 字典获取 BP四种攻击模式 一.Sniper(狙击手模式) 二.Battering ram(攻城锤模式) 三.Pitchfork(叉子模式) 四.Cluster bomb(炸弹模式) 靶场练习 ...

  2. Burpsuite 工具(pikachu测试暴力破解)

    文章目录 软件介绍 基本信息 安装步骤 pikachu测试暴力破解 软件介绍 Burp Suite 是用于攻击web 应用程序的集成平台,包含了许多工具.Burp Suite为这些工具设计了许多接口, ...

  3. pikachu靶场 暴力破解

    目录 基于表单的暴力破解 验证码绕过(on server) 验证码绕过(on client) token防爆破? 基于表单的暴力破解 这一关没有防护,直接开始攻击过程 开启抓包,输入用户名admin, ...

  4. Pikachu之暴力破解

    ps:火狐浏览器.phpstudy.pikachu.burpsuite 从来没有哪个时代的黑客像今天一样热衷于猜解密码--奥斯特洛夫斯基 首先让我们来看一下什么是暴力破解 接下来让我们开始今天正式的实 ...

  5. pikachu靶场暴力破解专题

     一.前言 pikachu是我作为初探渗透的平台,所以我会在每个专题前增加更多的基础知识,一是方便自己巩固基础,二是帮助一些也打算入门渗透的小白更好的理解. 二.暴力破解 pikachu靶场里给出的暴 ...

  6. Pikachu系列——暴力破解

    Pikachu靶场系列开篇!持续更新~ 虽然是不新不旧的靶场,但是Web漏洞类型较多还算不错的 实验一 -- 暴力破解 实验环境 我用的是phpstudy集成环境,一键搭环境 (如果端口没被占用还是比 ...

  7. Pikachu靶场暴力破解关卡3

    这是暴力破解关卡的第三关on client 正常做题思路 首先输入username,按提交看页面的显示 提示请输入验证码 接着输入password继续点击登录 又是请输入验证码 接着输入错误的验证码看 ...

  8. Pikachu靶场-暴力破解

    1.暴力破解 1.Burte Force(暴力破解)概述 Burte Force(暴力破解)概述 "暴力破解"是一攻击具手段,在web攻击中,一般会使用这种手段对应用系统的认证信息 ...

  9. 暴力破解+验证码爆破

    一.使用burpsuite对web进行账号密码暴力破解 1.登录界面 2.将数据包发送到repeater 3.在paloads中添加密码本 4.在intruder-postions中clear以及ad ...

最新文章

  1. VALSE 青年学者 | 心中的象牙塔:怎样才能拿到理想的教职offer?
  2. 在Django项目中使用富文本编辑器
  3. linux 配置思科路由器,将配置文件导入cisco2611路由器步骤
  4. CondenseNet总结
  5. 4999元起!iQOO 9 Pro今日首销:骁龙8旗舰处理器+独立显示芯片Pro
  6. html5选择试题及答案,全套html5面试题大全带答案
  7. sql二进制转十进制_了解SQL十进制数据类型
  8. slam魔改的支持数据库动态虚拟墙,禁行线costmap_prohibition_layer
  9. 让部署到服务器上的springboot项目持续运行(nohup)
  10. 智慧城市的宠儿 大数据为城市建设添彩
  11. c语言水表程序流程图,水表检定操作流程图.pdf
  12. 计算2个时间段的重叠天数
  13. 以太网供电(POE)的关键技术解析
  14. vue单元测试SyntaxError: Unexpected token ‘export‘
  15. mysql内存回收_mysql占用内存过多
  16. IDEA导包报错cannot resolve symbol xxxx问题
  17. 递归查询树形结构数据
  18. Simsci.Pro_II.8.2_USB加密锁,运行稳定全功能版本\
  19. U盘格式转化-exFAT转NTFS
  20. superpi linux.tar.gz,靠,Linux下算pi太快了!!!!!!!!!

热门文章

  1. 我的C语言学习历程:GUI篇
  2. JAVA读取FTP服务器文件内容
  3. 连云港千卓贸易有限公司
  4. yii 中render 和renderpartial的使用
  5. 用java写一个坦克大战游戏
  6. 二手华为mate20pro能卖多少钱
  7. Java 23种设计模式(1.设计模式概念和UML)
  8. Mysql插入生僻字报错
  9. 【ASP.NET】演绎GridView基本操作事件
  10. 怎样理解过去心不可得,现在心不可得,未来心不可得