Web常见漏洞之po解

暴力破解

    • 概述
    • 应用场景
    • 实验
      • 工具
      • 实训准备
      • 实训开始
        • 四种模式
      • 验证码绕过
        • 前端验证码
        • 验证码有存活周期

概述

暴力破解是Web漏洞里常见的一种渗透方式,攻击者会试图通过尝试各种可能的用户名和密码组合来猜测密码或密钥,直到猜对为止123。攻击者会经常使用自动化脚本组合出正确的用户名和密码。暴力破解的过程就是使用大量的认证信息在认证接口进行尝试登录,直到得到正确的结果。为了提高效率,暴力破解一般会使用带有字典的工具来进行自动化操作。有时候可能会带来意想不到的效果,今天我将用一个简单的实验来说明什么是暴力破解并介绍其应用场景和一些可能的验证码绕过。

应用场景

并不是所有的认证登录都可以进行暴力破解,一般存在于一下几个条件之外:
1、要求用户设置复杂的密码
2、每次认证都需要使用十分安全的验证码
3、尝试登录行为有判断和限制(连续错误五次,锁账号)
4、使用了双因素认证(除了密码以外的其他认证比如OTP)

如图存在暴力破解那么可分一下几个步骤:
1、确定登录接口的脆弱性
2、利用丰富的字典
3、使用自动化工具

实验

工具

1、pikachu靶场
2、火狐浏览器
3、Burp suite

实训准备

首先利用php_study开启服务器和数据库的环境,打开Burp suite,监听本地IP地址的8080端口,在浏览器上设置里将代理挂到Burp suite
在这里插入图片描述
进入Burp打开Proxy界面,开启流量拦截(Intercept is on),在pikachu页面随机点击看是否能够拦截到http流量,做好这些准备就可以开始了 (在这里地址栏里推荐IP地址写本机局域网地址,有可能本机地址Burp抓不到)在这里插入图片描述

在这里插入图片描述

实训开始

首先尝试一些简单的弱口令尝试登录比如:admin、password、123456等等,然后进行抓包查看是否有验证码或者其他参数
在这里插入图片描述
进行抓包我们可以看到请求体内就只有这三个参数,并不存在验证码验证,所以是存在爆破条件的,这时候就可以利用burp自带的利用字典爆破,首先我们右键将流量放入Intruder界面

在这里插入图片描述
然后进入界面后可以看到右边有几个按钮,我们可以将需要爆破的参数进行添加(username、password)
在这里插入图片描述
我们可以看到上面有一个Attack type的下拉框,这里面分别代表了四种模式Sniper、Battering ram、Pitchfork、Cluster bomb,下面我简单介绍一下这几个模式
在这里插入图片描述

四种模式

1、Sniper
这个模式内会从字典内仅替换第一个参数比如这里的username,password则不会管适用于知道账号或者密码其中一个的场景。
2、Battering ram
这个模式会将账号和密码同时替换为字典内一样的参数比如字典有一个参数为"1"则账号密码都会被替换为"1"。
3、Pitchfork
在这个模式里面就可以制定两个参数了,但是并不会将所有可能性都匹配完,比如有两个字典分别为账号和密码的,就相当于账号和密码都是两个字典每个元素一 一对应的匹配。
4、Cluster bomb
相信看到这里你也能猜出这个字典功能是啥了,没错就是你想的那样,这个模式包含了字典的所有可能性,首先是密码字典第一个元素不变然后账号字典元素每一个都进行匹配当账号字典匹配完了过后密码字典元素才会往下跳一个,这个账号密码字典都能匹配完了。

这里我们使用的就是第四种也是最常用的一种
在这里插入图片描述
在这里插入图片描述

1、进入payloads界面对参数模式进行修改和字典的添加
2、这里参数代表那个参数这里1就代表第一个参数(username)可以切换到另一个参数
3、这里参数代表使用字典模式还是手动输入模式,这里我们选择字典模式(Runtime file)
4、这里就是手动模式进行手动添加账号密码
5、这里选择字典

第一个参数字典
在这里插入图片描述
第二个参数字典
在这里插入图片描述
同时还有一个模块比较重要就是这里的Grep-Match模块,这里是对是否匹配到正确的账号密码而设置的地方,在这个方框内有很多默认参数,但是每个破解情况都有不同默认参数也不适用(这里参数是指respone返回响应内的关键字,匹配到为1否则为空)
在这里插入图片描述
在此次实验中我们可以看到登录失败后会出现is not exists关键字的返回那么这就能成为我们的线索,所以在Grep-Match内就可以包含进入这一句话
在这里插入图片描述
在这里插入图片描述
然后这些准备工作做完了过后就可以点击右上角(Start attack)开始破解
在这里插入图片描述
我们可以看到如箭头所指这就是我们设置的关键线索,这里每个错误的账号密码都会返回这个线索所以返回1,但是可以看到这里的admin是为空的,这就代表返回的请求没有密码错误的响应,验证成功,我们就可以利用这里的账号密码去登录
在这里插入图片描述

登录成功!

验证码绕过

验证码想要绕过一般概率比较小,基于现在AI人工智能发展迅速图案识别也能够做到,但是也有很复杂的验证码也是基于后端进行验证并且刷新时间短,验证码存活周期也短刷新即销毁
在这里插入图片描述

前端验证码

在这里插入图片描述
在这里的验证码我们可以通过网页源码可以看到仅仅是基于前端生成的验证码,仅仅只是纸老虎,只是针对于网络小白,我们只需要输入一次正确的验证码然后进行抓包
在这里插入图片描述
抓包后验证码因为是前端生成后端并不会对验证码进行验证所以随意修改都能够通过,接下来的步骤就和上面的一样进行爆破即可
在这里插入图片描述

验证码有存活周期

在这里插入图片描述

在这种可能下,验证码看似需要通过后端进行验证但是一个验证码的生存周期很长,在这段时间内在HTTP包内可以用同一个验证码进行爆破
在这里插入图片描述
在这里插入图片描述
这里我们可以看到就算账号密码不一样,但是验证码同样还是相同,所以一个验证码可以重复使用任然可以进行爆破

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/802728.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用base64通用文件上传

编写一个上传文件的组件 tuku,点击图片上传后使用FileReader异步读取文件的内容&#xff0c;读取完成后获得文件名和base64码&#xff0c;调用后端uploadApi,传入姓名和base64文件信息&#xff0c;后端存入nginx中&#xff0c;用于访问 tuku.ts组件代码&#xff1a; <templa…

win10删除鼠标右键选项

鼠标右键菜单时&#xff0c;发现里面的选项特别多&#xff0c;找一下属性&#xff0c;半天找不到。删除一些不常用的选项&#xff0c;让右键菜单变得干净整洁。 1、按下键盘上的“winR”组合按键&#xff0c;调出“运行”对话框&#xff0c;输入“regedit”命令&#xff0c;点击…

mybatisPlus和mybatis的版本冲突问题、若依换成MP、解决git无法推送、使用若依框架的swagger、以后再遇到团队项目应该怎么做。

20240716 一. mybatisPlus和mybatis的版本冲突问题1. 使用前的准备2. 我遇到了一个很严重的问题。3. 解决问题&#xff0c;好吧也没解决&#xff0c;发现问题&#xff01;&#xff01; 二、该死的git&#xff01;&#xff01;&#xff01;&#xff01;1. 解决无法在idea中使用g…

2.RabbitMQ相关概念

介绍 RabbitMQ是一个消息中间件&#xff0c;接受并转发消息。它接收、存储和转发消息数据。 四大核心概念&#xff1a; 1.生产者 产生数据发送消息的程序是生产者。 2.消费者 3.队列 每一个队列对应一个消费者。 如果两个消费者对应同一个队列&#xff0c;那么队列中的…

R绘制Venn图及其变换

我自己在用R做各种分析时有不少需要反复用到的基础功能&#xff0c;比如一些简单的统计呀&#xff0c;画一些简单的图等等&#xff0c;虽说具体实现的代码也不麻烦&#xff0c;但还是不太想每次用的时候去找之前的代码。 索性将常用的各种函数整成了一个包&#xff1a;pcutils…

深度刨析程序中的指针

前面我们已经学习过了指针的一下性质&#xff1a; 指针就是个变量&#xff0c;用来存放地址&#xff0c;地址唯一标识的一块内存空间指针的大小是固定的4/8个字节&#xff08;32位平台/64位平台&#xff09;指针是有类型&#xff0c;指针的类型决定了指针的加减整数的步长&…

Pr 2024下载安装,Adobe Premiere pro2024剪辑软件下载合集获取

Premiere Pro 2023中文版简称Pr&#xff0c;pr2023是一款视频编辑软件。 pr 2023不仅可以帮助用户对各种视频进行剪辑、旋转、分割、合并、字幕添加、背景音乐等基础的处理&#xff0c;还能帮助用户进行视频颜色校正、颜色分级、稳定镜头、调整层、更改片段的持续时间和速度、效…

进程通信(3): System V IPC

System IPC包括System V消息队列&#xff0c;System V信号量&#xff0c;System V共享内存区。 System V IPC使用一个key&#xff08;key_t&#xff09;作为他们名字&#xff0c;这个值由ftok函数通过路径名和一个id生成。 客户和服务器通过在路径名和id达成一致&#xff0c;双…

SpringCloud教程 | 第十篇: 读取Nacos的配置(失败情况2)

参考&#xff1a;SpringCloud搭建Nacos配置中心_springcloud nacos maven-CSDN博客 解决了pom.xml的依赖冲突后&#xff0c;在启动服务时&#xff0c;报错了&#xff0c;并且自动停止了。 2024-07-17 11:13:03.597 ERROR [com.alibaba.nacos.client.remote.worker] com.alibab…

在 Windows 平台搭建 MQTT 服务

一、引言 出于稳定性、可靠性、成本等多方面的考虑&#xff0c;众多 MQTT 服务实现更倾向于选择拥有丰富开源生态系统的 Linux 环境&#xff0c;Windows 平台上可选的 MQTT 服务相对有限。NanoMQ 是用于物联网边缘的超轻量级 MQTT 消息服务器&#xff0c;有着强大的跨平台和可…

超详细信息收集篇

1 域名信息收集 1.1 域名是什么 域名&#xff08;英语&#xff1a;Domain Name&#xff09;&#xff0c;又称网域&#xff0c;是由一串用点分隔的名字组成的 Internet 上某一台 计算机 或计算机组的名称&#xff0c;用于在数据传输时对计算机的定位标识&#xff08;有时也指地…

监控系统怎样做?

监控类型自底向上分为资源监控、服务监控和业务监控。希望打造公司级的监控系统最好的时机是系统规划时&#xff0c;如果把监控设计往后放&#xff0c;将会面临一个巨大的难题&#xff1a;推行和现有不兼容的规范。 三种监控类型 资源监控 这个相对简单&#xff0c;随着k8s的兴…

【深度学习】BeautyGAN: 美妆,化妆,人脸美妆

https://www.sysu-hcp.net/userfiles/files/2021/03/01/3327b564380f20c9.pdf 【深度学习】BeautyGAN: Instance-level Facial Makeup Transfer with Deep Generative Adversarial Network BeautyGAN: Instance-level Facial Makeup Transfer with Deep Generative Adversaria…

嵌入式物联网在教育行业的应用——案例分析

作者主页: 知孤云出岫 嵌入式物联网在教育行业的应用——案例分析 目录 作者主页:嵌入式物联网在教育行业的应用——案例分析一、引言二、智能教室&#xff1a;环境监测系统1. 硬件需求2. 电路连接3. 代码实现 三、个性化学习&#xff1a;智能学习平台1. 数据处理与分析2. 代…

下载仓颉sdk安装时遇到“无法运行”问题

图1. 社区地址&#xff1a;GitCode - 全球开发者的开源社区,开源代码托管平台 在GitCode社区中下载Cangjie-0.53.4-windows_x64的sdk后&#xff0c;双击安装时遇到“此应用无法在你的电脑上运行的问题” 经过反复排查后&#xff0c;确定是sdk直接下载有问题&#xff1b;‘需要…

Android Studio 汉化

下载地址&#xff1a;https://plugins.jetbrains.com/plugin/13710-chinese-simplified-language-pack----/versions/stable 下载完zpi包之后&#xff0c;进入&#xff1a;设置 -> 插件 导入即可。 注&#xff1a; 汉化包需要与 Android Studio 版本对应。

Matlab|基于蒙特卡洛法的电动汽车充电负荷计算

目录 1 主要内容 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序方法复现《V2G 模式下含分布式能源的配电网优化运行研究》第二章电动汽车无序充电模型&#xff0c;按照文章《V2G 模式下基于复杂网络的电动汽车有序充电策略》分析思路研究了不同数量电动汽车接入情况…

Jetpack Compose学习记录(一)

目录 前言控件实时预览Modifierremember状态提升 前言 学了一段时间的Compose&#xff0c;不得不说声明式UI比原生的开发效率快很多&#xff0c;而且Compose也是Google现在主推的开发模式&#xff0c;可以动态化地更改ui&#xff0c;相比于databinding对数据和布局进行绑定。C…

FreeCAD源码分析:Serialization

序列化(Serialization)是在程序运行时将对象转换成字节流的过程&#xff0c;进而将二进制字节流罗盘到文件系统或者通过网络发送到远端。而反序列化(Deserialization)则恰恰相反&#xff0c;是由二进制字节流重新构建对象的过程。 Ref. from Boost Serialization Here, we use …

电子标书怎么盖章?

电子标书怎么盖章&#xff1f;下面是利用e-章宝&#xff08;##### 与在线盖章的平台不同&#xff0c;专业的盖章软件在盖章时无需要上传你的文档&#xff0c;甚至在无网络下都可以使用&#xff0c;且保密性非常强&#xff0c;如e-章宝。如果你的文件保密性强&#xff0c;用网上…