当前位置: 首页 > news >正文

暴力破解漏洞

暴力破解漏洞

  • 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)方法一:

  1. 输入用户名密码抓包
    在这里插入图片描述

  2. 发送给重发器查看
    在这里插入图片描述
    在这里插入图片描述

  3. 发至测试器,设置进行爆破
    在这里插入图片描述

  • 点击 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 密码加密的情况

待写…

http://www.lryc.cn/news/257036.html

相关文章:

  • 前端成神之路-CSS基础选择器
  • Endnote在word中加入参考文献及自定义参考文献格式方式
  • LeetCode力扣每日一题(Java):28、找出字符串中第一个匹配项的下标
  • Java UDP 多人聊天室简易版
  • leetcode 100.相同的树
  • 2021年第十届数学建模国际赛小美赛A题气道阻力的评估解题全过程文档及程序
  • 内网环境安装K8S1.20.11版本集群
  • 【前端设计模式】之策略模式
  • JUC包(面试常问)
  • 文字处理工具Word mac软件特点
  • 把 Windows 11 装进移动硬盘:Windows 11 To Go
  • 11、pytest断言预期异常
  • Vue之数据绑定
  • druid在没有web的项目中如何查看监控
  • 游戏被攻击该怎么办?游戏盾该如何使用,游戏盾如何防护攻击
  • 【基于openGauss5.0.0简单使用DBMind】
  • [递归回溯]连接卡片最短路径
  • 初识人工智能,一文读懂强化学习的知识文集(5)
  • 视频封面提取:精准截图,如何从指定时长中提取某一帧图片
  • Shopify 开源 WebAssembly 工具链 Ruvy
  • zxjy008- 项目集成Swagger
  • 使用linux CentOS本地部署SQL Server数据库
  • 理解基于 Hadoop 生态的大数据技术架构
  • 【Go】Go语言基础内容
  • HP-UNIX 系统安全基线 安全加固操作
  • 第九天:信息打点-CDN绕过篇amp;漏洞回链amp;接口探针amp;全网扫描amp;反向邮件
  • 【利用二手车数据进行可视化分析】
  • 快速测试 3节点的redis sentinel集群宕机2个节点以后是否仍能正常使用
  • echarts词云图echarts-wordcloud使用方法
  • 二叉树的OJ练习(二)