第二周作业 暴力破解——1.基于表单的暴力破解 2.验证码绕过(on client) 3.验证码绕过(on server)

2023-10-30

(一)先将在课程重演中出现的问题放在最前面

(1)在设置完代理后出现了BurpSuite不能拦截localhost,127.0.0.1的情况
在这里插入图片描述
最后发现火狐浏览器中有个地方引起的
在这里插入图片描述把其中内容删除掉就能拦截成功了
(2)导入字典后无法攻击

在路径上不能有中文,需要把字典放在英文的目录下。(下图为错误示范)在这里插入图片描述

(二)基于表单的暴力破解演示

打开pikachu平台,在暴力破解栏目下点击基于表单的暴力破解,随意输入密码后,回到BurpSuite中找到POST请求。

在这里插入图片描述然后右键发送到到Intruder中(或使用快捷键ctrl+I)在这里插入图片描述

点击Positions可以看见原始的数据包,再点击Clear清除所有变量,再将用户名和密码设置为变量

在这里插入图片描述点击payloads,在设置中分别用Runtime file导入破解账户和密码需要用的字典(这里选用的是Cluster bomb这个方法进行攻击所以需要设置两个payload)

在这里插入图片描述
在这里插入图片描述
同时在option中的Grep-Match下添加登陆失败时发回的提示字符串“username or password is not exists",便于查找我们之后进行攻击破解出的正确账户和密码
在这里插入图片描述
点击start attack开始攻击(这里选用Cluster bomb这个攻击方法),从结果中我们注意到有一项是没有✔的这一项就是没有出现服务器发回的“username or password is not exists~"这个响应,也就是登陆成功所对应的账户和密码。在这里插入图片描述回到pikachu平台进行尝试是否成功

在这里插入图片描述
登陆成功。

(三)不安全的验证码on client绕过演示

打开pikachu平台,在暴力破解栏目下点击验证码绕过(on client)
进行 随意输入账户和密码不输入验证码、随意输入账户和密码输入错误的验证码、随意输入账户和密码输入正确的验证码 三个步骤

在这里插入图片描述
返回到BurpSuite中,找到POST请求,右键发送到Repeater模块下(或快捷键ctrl+R)
在这里插入图片描述在Repeater模块下,随意输入验证码,通过反馈来确认后台是否有对验证码进行验证
在这里插入图片描述

在vcode中填入的是错误的验证码,但观察到的反馈是username or password is not exists~,说明后台没有对输入的验证码进行校验

之后的步骤和之前的方法相同(基于表单的暴力破解),这里放出一张成功的图

这里不需要再在Grep-Match下添加登陆失败时发回的提示字符串,清空Grep-Match中的选项,最后是通过length来选出破解出的账户名和密码
在这里插入图片描述

通过length找出不一样的项

回到pikachu平台检验得到的账户和密码
(PS:在这里说明一下为什么验证码和之前的不一样了,因为我手贱不小心按了刷新。。。。)
在这里插入图片描述
成功。

(四)不安全的验证码on server绕过演示

打开pikachu平台,在暴力破解栏目下点击验证码绕过(on server)
进行 随意输入账户和密码不输入验证码、随意输入账户和密码输入错误的验证码、随意输入账户和密码输入正确的验证码 三个步骤(通过这个方法让Burp Suite拦截到POST请求)
在这里插入图片描述
返回到Burp Suite拦截到POST请求,同之前的方法发送到Repeater模块下。选择随意填写一个验证码或不填,来判断后台是否对验证码进行校验。在这里插入图片描述
通过发回的响应“验证码不能为空哦!”判断出,后台对验证码进行了校验,我们不能使用之前的方进行破解,但是如果验证码不具备时效性,及同一个正确的验证码可以反复使用的话,我们可以通过不改变验证码的变量进行暴力破解。
在这里插入图片描述
为了再判断验验证码的时效性(后台是否会在一段时间内对验证码刷新并重新进行校验),我们填写正确的验证码再随意填写用户名和密码。并多次重复这个步骤。
在这里插入图片描述
通过服务器多次发回的响应“username or password is not exists~"判断,这个验证码不具备时效性,后台不会在一段时间内刷新验证重新进行校验,同一个验证码同样具有有效性。那么就可以使用之前的方法来进行暴力破解。将POST请求发送到Intruder模块下。点击Clear清除变量,再将账户和密码设置为变量,同时将验证码填为正确的验证码。

在这里插入图片描述
以上步骤完成后,我们设置好payload后(注意:这里也不需要在Grep-Match下添加响应失败发回的字符串,最后仍是通过length来找出破解成功的账户和密码),就可以开始攻击了。

↓这是一张破解成功后的图。

在这里插入图片描述回到pikachu平台把破解后的用户名、密码和验证码填上,点击登陆在这里插入图片描述

在这里插入图片描述成功。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第二周作业 暴力破解——1.基于表单的暴力破解 2.验证码绕过(on client) 3.验证码绕过(on server) 的相关文章

  • 我们的那些故事(写给1987—1990年出生的同学,希望您能够看看)

    花开无声 岁月无痕 突然回首 人生的旅途已经走了四分之一 我们这一辈 也就是96 97年开始上小学 02年上初中 05年上高中 07 08 09年上大学的 12年或者13年毕业的 我们知道的太多 看到了太多 听到了太多 新的 旧的 保守的
  • 作业一

    计算器思路 单位数计算器 package com marden demo3 单位数表达式 public class Calculator 判断是否为操作符 public static boolean isOper char value re
  • 《计算机组成原理实验》 单周期CPU

    计算机组成原理实验 单周期CPU 前言 这是中山大学2018年计算机组成原理实验中单周期CPU的实验报告 仿真与写板的内容暂略 所有源代码 包括写板 已经上传至我的github当中 欢迎大家访问 github个人主页 https stara
  • 【JavaWeb】练习三

    一 简答题 1 gt 简述servlet的生命周期 第一次访问某个servlet的时候 tomcat容器会创建servlet实例 紧接着会调用init方法进行初始化 然后执行service方法 在父类中的service方法中判断请求是get
  • 计算机系统大作业

    摘 要 本文对hello c在Linux下的生命周期进行了分析 通过一些Linux平台的工具 如gcc objdump edb gdb readelf对程序代码的预处理 编译 汇编 链接 反汇编的过程进行了分析 对比 通过hello在she
  • C语言(C++)作业

    一 指针和内存泄露 1 malloc函数 malloc的全称是memory allocation 中文叫动态内存分配 用于申请一块连续的指定大小的内存块区域以void 类型返回分配的内存区域地址 当无法知道内存具体位置的时候 想要绑定真正的
  • opengl实现bezier、b曲线和曲面,16个控制点的4*4bezier块;最后可以看到茶壶teapot的实现

    1 你的工程可能还不能跑起来 一般的错误按照网页修改就可以了 可是还是会有个bug Error6error C2039 exit is not a member of global namespace 解决方法 a这是编译器的问题 有时候看
  • 实现strcpy功能

    实现strcpy的功能 运行结果
  • 代码审计作业-area39/pikachu

    1 问答题 1 使用 docker 构建 pikachu镜像 1 搜索pikachu docker search pikachu 2 拉取镜像 docker pull area39 pikachu 3 启动pikachu镜像 docker
  • IT项目管理-06

    文章目录 IT项目管理 06 教材练习题6 教材练习题7 收集网上资料 总结看板在软件项目中的使用 参考 IT项目管理 06 教材练习题6 a b 路径1 A gt D gt G gt J gt K 长度 2 4 6 1 2 15 路径2
  • HTB-Tier2- Unified

    HTB Tier2 Unified Tags Web Vulnerability Assessment Databases Injection Custom Applications Outdated Software MongoDB Ja
  • 课堂小作业之3位水仙花数计算

    3位水仙花数计算 描述 3位水仙花数 是指一个三位整数 其各位数字的3次方和等于该数本身 例如 ABC是一个 3位水仙花数 则 A的3次方 B的3次方 C的3次方 ABC
  • 操作系统:进程调度模拟,C语言实现

    作业要求 题目要求 模拟实现进程调度的经典算法 包括FCFS SJF SPF HRRN和RR 时间片大小分别为1和4 输出调度过程 并计算不同调度算法的周转时间 平均周转时间 带权周转时间 平均带权周转时间 等待时间 平均等待时间等信息 实
  • Lloyd-Max条件、DPCM系统最佳预测系数推导以及最小二乘:梯度下降、牛顿法、高斯牛顿法总结

    文章目录 1 Lloyd Max条件推导 2 DPCM系统最佳预测系数推导 3 最小二乘 梯度下降 牛顿法 高斯牛顿法总结 3 1 梯度下降 3 2 牛顿法 3 3 高斯牛顿法 1 Lloyd Max条件推导 2 DPCM系统最佳预测系数推
  • c语言发牌小程序

    include
  • python 中关于推导式生成器的一些总结

    推导式 可以理解为是数据生成方式或者是处理方式 类型 列表 元组 字符串 字典 集合 外部包装的括号决定了返回值类型的 定义 列表推导式 表达式 for循环 if语句 1 对列表中的每项元素进行立方运算 变换功能 a 1 2 3 4 5 6
  • HTML(HBuilder)作业题10- 用户登录(jquery)

    问 简单的用户登录怎么弄 答 1 利用jquery 2 利用if 注释 用鼠标离开区域开始判断 可以自行尝试修改成click单击按钮 HBuilder
  • 服务计算:简单的web程序

    CloudGo 框架选择 看了go的一些框架如beego和iris觉得挺好的 本来想用 但是虚拟机出了点问题装不成 windows上装成了没ab指令 所以使用官方的net http库做简单的实验 看完beego和iris的特性我还是比较想用
  • 6月17日实验课之“H.264文件解析”

    文章目录 1 实验要求 2 实验结果 2 1 SPS 2 1 1 profile idc 2 1 2 level idc 2 1 3 seq parameter set id 2 1 4 log2 max frame num minus4
  • 【JavaWeb】 练习二

    1 gt 实现登录 如果用户名密码错误 转入到登录页面 提示信息 用户名密码错误 2 gt 如果用户不登录 直接访问展示页面 也需要转入到登录页面 提示信息 请先登录在访问 3 gt 实现退出功能 转到登录页面 4 gt 统计查看展示页面的

随机推荐

  • javaweb-36:smbms用户管理分页OK

    3 获取角色操作 为了我们职责统一 可以把角色的操作单独放在一个包中 和POJO类对应 初始化sql INSERT INTO smbms smbms role roleCode roleName createBy creationDate
  • vscode运行打包vue项目内存溢出的报错和解决办法

    vscode运行打包vue项目内存溢出的报错和解决办法 最近在再弄一个旧项目的时候发现这个项目异常的大 内容涉及很多 导致我在运行的时候发生了内存的溢出 虽然不影响代码跑起来 但是他时不时保存的时候就断了就很烦 没办法 就去找各种办法来解决
  • MySQL项目练习2——员工信息表项目

    目录 项目条件 设计表 数据插入 查询操作 项目条件 dept表 部门 dept部门表结构 字段 类型 描述 deptno mediumint 8 部门编号 PK dname varchar 20 部门名称 unique loc varch
  • java随机生成10个不重复的数字,随机生成10个不重复的0-100的数字(实例讲解)

    在面试时 面试官问了我一道js题 随机生成一个含有10个元素的数组 且元素为0 100的不重复的整数 当时的第一反应是for循环生成10个数字 但是可能会有重复的情况 进一步思考 需要对生成的数字进行验证才能放到数组里面 但是问题来了 如果
  • 从测试流程角度,对产品质量的一些总结思考

    前言 不知道大家有没有遇到下面两个场景 我是遇到了 还为此召开了RCA会议 复盘会议 从测试流程角度 对产品质量的一些总结思考 一 熟悉的场景 二 测试流程拆解分析 1 需求评审 2 技术设计评审 3 测试方案设计 4 线下测试 含灰度 5
  • matplotlib之绘制数据分析的常用图像(均值,方差,极值等)

    本文所用文件的百度云链接 链接 https pan baidu com s 15 qbrbtRs4frup24Y1i5og 提取码 pm2c 算数平均值 算数平均值表示对真值的无偏估计 S s1 s2 s3 sn m s1 s2 s3 sn
  • ThreadLocal初探

    一 ThreadLocal介绍 一 官方介绍 从Java官方文档中的描述 ThreadLocal类用来提供线程内部的局部变量 这种变量在多线程环境下访问 通过get和set方法访问 时 能够保证各个线程的变量相对独立于其他线程内的变量 Th
  • vue引用静态资源需要注意的事项

    项目结构如下 想在icon styl文件夹里面引用字体图标 使用相对路径 但是报错 浏览器报错如下 解决方案有两种 方案1 使用根目录路径 方案2 将要引用的静态资源fonts文件夹放在static文件夹下 icon styl文件下面的代码
  • css深入剖析transform的skew

    skew 一 skew 1 skew x y 2 斜切目标 3 实例运用 一 skew 1 skew x y 指定对象skew transformation 斜切扭曲 第一个参数对应X轴 第二个参数对应Y轴 如果第二个参数未提供 则默认值为
  • Linux(Ubuntu20)下安装Qt5.12.8 包含直接命令行安装(2)

    一 下载 Index of archive qt 5 12 5 12 8 linux下载 run即可 二 安装 1 下载完成后在终端打开下载的路径 2 赋予执行权限 并执行 sudo chmod x qt opensource linux
  • MVCNN:利用二维多视角的3D识别

    Highlights 用物体的三维数据从不同 视角 所得到的二维渲染图 作为原始的训练数据 用经典 成熟的二维图像卷积网络进行训练 训练出的模型 对三维物体的识别 分类效果之好 比那些用三维数据直接训练出的模型好很多 Critical Re
  • YAPi在线接口文档简单案例(结合Vue前端Demo)

    在前后端分离开发中 我们都是基于文档进行开发 那前端人员有时候无法马上拿到后端的数据 该怎么办 我们一般采用mock模拟伪造数据直接进行测试 本篇文章主要介绍YApi在线接口文档的简单使用 并结合Vue的小demo 让你快速了解到前后端分离
  • 用python的Turtle库画一个笑脸

    用python的Turtle库画一个笑脸 最近刚了解到python的turtle库 就简单的尝试一下 画一个笑脸 效果图 效果图看起来和原图的差别还是有点大 但是没关系 这只是一个尝试而已 附上代码 import turtle 导入库 tu
  • 并发编程之死锁问题介绍

    一 本文概览 死锁问题在并发编程中是一个非常致命的问题 问题一旦产生 只能通过重启机器 修改代码来修复问题 下面我们通过一小段文章内容介绍下死锁以及如何死锁的预防 二 什么是死锁 在介绍死锁之前 先来明确下什么是锁 锁其实就是一种同步机制
  • python实现千牛客服自动回复语_千牛自动回复话术

    千牛自动回复话术 对客户的疑问进行应答 1 亲 您真有眼光 这可是我们店主打产品哦 我能为您做些 什么 您还有什么需要 不必客气 没关系 这是我们应该做的 我明 白了 好的 是的 非常感谢 2 发什么快递啊 公司默认发的快递是 xx 如果快
  • Blender插件UV编辑器重塑插件UV Squares 1.14.For 2.8-2.91+教程

    Blender插件UV编辑器重塑插件UV Squares 1 14 For 2 8 2 91 教程 下载链接 https www 70cu com p 7495
  • 红米Redmi 12C root 和安装magisk

    1 解锁 百度搜小米解锁 到官网http www miui com unlock index html 解锁教程 看官网或其他帖子 需要等168小时 没事就等等 没必要花钱或其他方式跳过 除非真的急 2 到magisk官网 安装magisk
  • npm run serve运行vue项目遇到的问题总结。

    1 npm run serve时 常用的解决办法 Cannot read properties of null reading pickAlgorith 清除缓存 npm cache clear force 运行 npm install 你
  • AI综述专栏

    https www toutiao com a6685618909275488780 2019 04 30 17 35 53 关注微信公众号 人工智能前沿讲习 重磅干货 第一时间送达 AI综述专栏简介 在科学研究中 从方法论上来讲 都应先见
  • 第二周作业 暴力破解——1.基于表单的暴力破解 2.验证码绕过(on client) 3.验证码绕过(on server)

    一 先将在课程重演中出现的问题放在最前面 1 在设置完代理后出现了BurpSuite不能拦截localhost 127 0 0 1的情况 最后发现火狐浏览器中有个地方引起的 把其中内容删除掉就能拦截成功了 2 导入字典后无法攻击 在路径上不