某不知名博客 某不知名博客
首页
  • 《vulcat文档》
  • Web安全

    • 《BurpSuite及官方实验室》
    • 《OSWE学习历程》
  • 云原生安全

    • 《Docker命令大全》
    • 《CKS考试学习指南》
    • 《旧-Kubernetes教程》
漏洞库
  • 《渗透工具大全》
  • 《云安全》
事件库
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Carsaid

安全界的小学生
首页
  • 《vulcat文档》
  • Web安全

    • 《BurpSuite及官方实验室》
    • 《OSWE学习历程》
  • 云原生安全

    • 《Docker命令大全》
    • 《CKS考试学习指南》
    • 《旧-Kubernetes教程》
漏洞库
  • 《渗透工具大全》
  • 《云安全》
事件库
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前言

  • 服务器端主题(翻译)

    • 服务器端主题
    • SQL注入

    • 身份验证

      • 身份验证漏洞
        • 什么是身份验证?
        • 身份验证和授权 两者的区别是什么?
        • 身份验证漏洞是如何产生的?
        • 易受攻击的身份验证有什么影响?
        • 身份验证机制中的漏洞
        • 第三方身份验证机制中的漏洞
        • 在你的身份验证机制中防范攻击
      • 基于密码的漏洞
      • 多因素身份验证的漏洞
      • 其他身份验证机制的漏洞
      • 如何保护你的身份验证机制
      • 用户名列表
      • 密码列表
      • 实验室参考答案
    • 目录遍历

    • OS命令注入

    • 业务逻辑漏洞

    • 信息泄露

    • 访问控制

    • 文件上传漏洞

    • 条件竞争

    • 服务端请求伪造(SSRF)

    • XML外部实体(XXE)注入

    • NoSQL注入

    • API测试

  • 客户端主题(翻译)

  • 高级主题(翻译)

  • 扩展阅读(翻译)

  • 个人学习笔记

  • 实验室做题记录

  • BurpSuite及官方实验室
  • 服务器端主题(翻译)
  • 身份验证
clincat
2023-05-05
目录

身份验证漏洞

翻译

原文:https://portswigger.net/web-security/authentication

- name: 翻译
  desc: 原文:https://portswigger.net/web-security/authentication
  bgColor: '#F0DFB1'
  textColor: 'green'
1
2
3
4

# 1身份验证漏洞

至少在概念上,身份验证漏洞是最容易理解的问题之一。然而,由于身份验证和安全性之间的明显关系,它们可能是最关键的。

除了潜在地允许攻击者 直接访问敏感数据和功能外,它们还暴露了额外的攻击面 以供进一步利用。因此,学习如何识别 和 利用身份验证漏洞(包括如何绕过常见的保护措施)是一项基本技能。

在本节中,我们将介绍网站使用的一些最常见的身份验证机制,并讨论其中的潜在漏洞。我们将重点介绍不同身份验证机制中的固有漏洞,以及由于实施不当 而引入的一些典型漏洞。

最后,我们将提供一些基本指导,说明如何确保自己的身份验证机制更加可靠。

实验室

如果您已经熟悉 身份验证漏洞 背后的基本概念,并且只想在一些实际的、易受攻击的目标上练习和利用它们,那么您可以从下面的链接访问本主题中的所有实验室。

View all authentication labs >> (opens new window)

# 1.1什么是身份验证?

身份验证 是验证给定用户 或 客户端身份的过程。

换句话说,它包括确保他们真的是他们声称的那个人。至少在某种程度上,网站会暴露给 任何连接到互联网的人。因此,健壮的身份验证机制是有效 Web 安全的一个组成部分。

可以将不同类型的身份验证分为三种身份验证因素:

  • 你知道的东西,例如,密码或安全问题的答案。这些有时被称为 “知识因素” 。
  • 你拥有的东西,例如,手机或安全令牌等物理对象。这些有时被称为 “持有因素” 。
  • 你是谁或做了什么,例如,你的生物特征或行为模式。这些有时被称为 “属性因素” 。

身份验证机制 依赖于一系列技术,来验证其中的一个或多个因素。(单因素 / 多因素身份验证)

# 1.2身份验证和授权 两者的区别是什么?

  • 身份验证,验证用户是否确实是他们所声称的身份的过程,
  • 授权,验证用户是否允许执行某些操作。

在网站或 Web 应用程序的上下文中,身份验证尝试确定:使用用户名Carlos123访问网站的人,是否真的是创建该帐户的同一个人。

一旦Carlos123通过身份验证,他的权限将决定 他是否获得授权,例如,访问其他用户的个人信息 或 执行删除其他用户帐户等操作。

(先认证,后授权)

# 1.3身份验证漏洞是如何产生的?

一般来说,身份验证机制中的大多数漏洞,会以下面两种方式之一出现:

  • 身份验证机制很弱,因为它们不能充分防范暴力破解攻击。
  • 代码实现中的逻辑缺陷 或 糟糕的编码,允许攻击者完全绕过身份验证机制。这有时被称为 “失效的身份验证” 。

在 Web 开发的许多领域,逻辑缺陷 (opens new window)只会导致网站行为异常,这可能是,也可能不是安全问题。

但是,由于身份验证对安全性至关重要,因此,有缺陷的身份验证逻辑 会使网站面临安全问题的可能性显著增加。

# 1.4易受攻击的身份验证有什么影响?

身份验证漏洞的影响可能非常严重。

  • 一旦攻击者 绕过身份验证 或 暴力破解 进入另一个用户的帐户,他们就可以访问 受损帐户拥有的所有数据和功能。
  • 如果他们能够破坏高特权帐户(如系统管理员),则可以完全控制整个应用程序,并有可能获得对内部基础设施的访问权限。

即使破坏低权限帐户,仍可能授予攻击者 访问他们原本不应该拥有的数据的权限,例如 商业敏感的业务信息。

即使该帐户无权访问任何敏感数据,它仍可能允许攻击者访问其他页面,从而提供进一步的攻击面。通常,某些高严重性攻击,无法从可公开访问的页面进行,但可以从内部页面进行。

# 1.5身份验证机制中的漏洞

网站的身份验证系统,通常由几个不同的机制组成,这些机制都可能会出现漏洞。有些漏洞广泛适用于所有这些环境,而其他漏洞则更特定于所提供的功能。

我们将更仔细地研究以下领域的 一些最常见的漏洞:

  • 基于密码登录的漏洞 (opens new window)实验室
  • 多因素身份验证的漏洞 (opens new window)实验室
  • 其他身份验证机制的漏洞 (opens new window)实验室

请注意,一些实验室要求您 枚举用户名 和 暴力破解密码。为了帮助您完成此过程,我们提供了一个用户名 (opens new window)和密码 (opens new window)的候选列表,您应该使用这个列表来解决实验室问题。

# 1.6第三方身份验证机制中的漏洞

如果您喜欢破解身份验证机制,那么在完成我们主要的 身份验证实验室 之后,更高级的用户可能想尝试解决我们的 OAuth 身份验证实验室。

阅读更多

OAuth 身份验证 >> (opens new window)

# 1.7在你的身份验证机制中防范攻击

我们已经展示了 “网站由于身份验证的脆弱性而容易受到攻击” 的几种方式。

为了降低您自己的网站 遭受此类攻击的风险,您应该始终遵循以下几个一般原则。

阅读更多

如何保护你的身份验证机制 >> (opens new window)

编辑 (opens new window)
实验室参考答案
基于密码的漏洞

← 实验室参考答案 基于密码的漏洞→

最近更新
01
API测试笔记
04-30
02
msfvenom
03-29
03
Metasploit
03-29
更多文章>
Theme by Vdoing | Copyright © 2023-2024 Carsaid | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式