五种不寻常的身份验证绕过技术

导语:身份验证绕过漏洞是现代web应用程序中普遍存在的漏洞,也是隐藏最深很难被发现的漏洞。

身份验证绕过漏洞是现代web应用程序中普遍存在的漏洞,也是隐藏最深很难被发现的漏洞。

为此安全防护人员不断在开发新的认证方法,保障组织的网络安全。尽管单点登录(SSO)等工具通常是对旧的登录用户方式的改进,但这些技术仍然可能包含严重的漏洞。无论是业务逻辑错误还是其他软件漏洞,都需要专业人员来分析其中的复杂性。

我们将在本文中介绍五种真实的身份验证绕过技术。

技术1——刷新令牌终端配置错误

在这种情况下,一旦用户使用有效凭证登录到应用程序,它就会创建一个在应用程序其他地方使用的承载身份验证令牌。该认证令牌在一段时间后过期。就在过期之前,应用程序在终端/refresh/tokenlogin中向后端服务器发送了一个请求,该请求在标头和HTTP主体部分的用户名参数中包含有效的身份验证令牌。

进一步的测试表明,删除请求上的Authorization标头并更改HTTP主体上的用户名参数将为提供的用户名创建一个新的有效令牌。利用此漏洞,拥有匿名配置文件的攻击者可以通过提供用户名为任何用户生成身份验证令牌。
在这里插入图片描述

技术2 ——SSO配置不正确

大多数应用程序都使用SSO系统,因为与处理许多身份验证门户相比,SSO系统更容易安全管理。但是简单地使用SSO并不能自动保护系统,因为SSO的配置也应得到保护。

现在,一个应用程序使用Microsoft SSO系统进行身份验证。当访问internal.redacted.com URL时,web浏览器会重定向到单点登录系统:
在这里插入图片描述

乍一看,它似乎是安全的,但对后端请求的分析显示,应用程序在重定向响应上返回了异常大的内容长度(超过40000字节)
在这里插入图片描述

为什么应用程序要这样做呢?当然是配置错误。在将用户发送到SSO的重定向时,应用程序向每个请求泄露了其内部响应。因此,可以篡改响应,将302 Found头更改为200 OK,并删除整个Location标头,从而获得对整个应用程序的访问。
在这里插入图片描述

此外,可以通过在Burp Suite中添加Match & Replace规则来自动删除标题并自动更改值,从而实现这个过程的自动化。
在这里插入图片描述

技术3——基于CMS的访问漏洞

内容管理系统(CMS),如WordPress、Drupal和Hubspot也需要进行安全配置,以免它们在使用中中引入漏洞。

在发现的一个示例中,在一个内部应用程序中使用了一个流行的CMS平台Liferay。该应用程序只有一个不需要身份验证就可以访问的登录页面,所有其他页面都在应用程序UI中受到限制。

对于那些不熟悉Liferay的人来说,CMS为应用程序工作流使用了portlet,它的参数是数字中的p_p_id。对于该应用程序,可以通过将参数值更改为58来访问登录portlet。在正常的登录页面中,只有登录表单是可访问的。然而,通过直接访问portlet,可以达到Create Account功能,然后在不需要适当的授权情况下就可以进行自注册并访问内部应用程序。
在这里插入图片描述

请注意,虽然Liferay以前使用过这个工作流,但它的最新版本使用了portlet名称而不是数字ID。不过,也可以通过更改名称来访问其他portlet。

技术4 ——JWT令牌的使用

JWT令牌或JSON web令牌,在新的web应用程序中很流行。但是,虽然它们默认具有安全机制,但后端服务器配置也应该是安全的。

我的一项任务是在他们的内部应用程序中使用SSO身份验证。当直接访问时,应用程序将用户重定向到Microsoft SSO web页面。到目前为止,一切顺利。

然而,一些JS文件不需要身份验证就可以访问。测试显示,该应用程序使用了安全登录后通过Microsoft SSO系统发送的JWT令牌。在后端机制上,存在一个安全错误配置,即不检查是否为特定的应用程序生成了JWT令牌。相反,它接受任何具有有效签名的JWT令牌。因此,使用来自微软网站的JWT令牌示例如下:
在这里插入图片描述

在通用值内:
在这里插入图片描述

有可能访问内部终端,泄露公司数据。

在这里插入图片描述

技术5——将身份验证类型更改为Null

在此情况中,应用程序通过 base64 编码的 XML 请求向 HTTP 发布数据上发送所有请求。在登录机制上,它将用户名作为参数别名发送,将密码作为scode发送。scode 参数内的值已进行哈希处理。分析显示,它使用了所提供密码值的 md5 值。请求中还有另一个有趣的标志:scode 有一个属性,其类型值为 2。
在这里插入图片描述

我尝试将该值赋值为1,它将接受明文密码。成功了!因此,在明文值中使用暴力攻击中是可能的。没什么大不了的,但这标志着我走对了路。把它赋值给空值怎么样?或者其他值,如-1、0或9999999999?大多数都返回了除0之外的错误代码。我用属性0做了几次尝试,但没有成功,直到我将密码值作为空值发送出去。

在这里插入图片描述

我意识到只需提供用户名和密码即可访问任何帐户。事实证明,这是一个很大的错误。

总结

复杂的身份验证机制可能成为攻击者使用的最具隐蔽性的攻击手段,特别是在容易出现业务逻辑漏洞的应用程序上。因为自动扫描器大多无法进入这类漏洞,所以仍然需要手工来找到它们。鉴于现代软件环境的复杂性,没有任何一个安全研究人员能够发现所有可能的漏洞或攻击载体。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Nacos是一种开源的配置中心和服务发现平台,可以帮助开发者更方便地管理微服务架构。然而,最近在Nacos中发现了一个名为身份认证绕过的漏洞,这使得攻击者可以绕过身份验证,执行恶意操作。 为了帮助企业和个人快速检测到这个安全漏洞,并采取相应的补救措施,一些安全研究者开发了批量检测POC。这个POC利用公开的漏洞信息,测试Nacos的登录和注册功能,以确定Nacos是否存在身份认证绕过漏洞。 使用这个批量检测POC,用户可以将所有的IP地址列表保存到一个文本文件中,然后通过简单的命令行选项传递该文本文件的路径。这个POC将自动扫描并验证每个IP地址是否容易受到身份认证绕过漏洞的攻击。 总体来说,这个批量检测POC提供了一种简单、快速、有效的方式,帮助企业和个人识别并修复Nacos中的身份认证绕过漏洞,从而提高系统的安全性和可靠性。同时,这也反映了业界对于技术安全的持续关注和努力。 ### 回答2: nacos是一个云原生的动态服务发现和配置管理平台,但是在nacos中存在着身份认证绕过漏洞,攻击者可以通过此漏洞直接绕过身份验证,获取到nacos的管理权限。为了防止此漏洞被滥用,需要及时对其进行检测和修复。 Nacos身份认证绕过漏洞批量检测可以采用Poc技术进行,Poc即Proof of Concept,意为概念证明。通过编写Poc代码,可以在不影响正常运行的情况下,模拟攻击行为,发现漏洞并进行修复。 对于nacos身份认证绕过漏洞批量检测Poc,可以通过以下步骤实现: 1. 首先,确定目标,即需要检测的nacos服务地址。可以通过搜索引擎、网络扫描等方式获取目标。 2. 编写Poc代码,对目标进行检测。具体步骤如下: (1)通过无需认证的接口验证目标是否存在身份认证绕过漏洞。 (2)如果存在漏洞,则可以使用管理员权限执行恶意操作,如读取、修改、删除配置文件等。 3. 对漏洞进行修复。修补漏洞的方法是将nacos系统更新至最新版本,并且配置正确,以避免任何安全问题。 通过进行nacos身份认证绕过漏洞批量检测Poc,可以及时发现和修复nacos系统中的漏洞问题,从而提高系统的安全性和稳定性。同时,作为云原生的重要组件之一,nacos系统的安全问题也需要得到更高的重视和加强保护。 ### 回答3: Nacos是一种开源的分布式服务发现、配置和管理平台,最近出现了一个身份认证绕过漏洞。攻击者可以利用该漏洞绕过Nacos的身份验证,实现未经授权访问敏感信息或执行恶意操作。为了增强安全性,开发人员需要尽快修补漏洞。 为方便安全研究人员和开发人员识别漏洞,可以使用批量检测poc。poc是Proof of Concept的缩写,通常是指一段代码或脚本,用来验证漏洞是否存在的可复现方式。通过使用poc,可以确认漏洞的确存在,便于修复。 对于Nacos身份认证绕过漏洞,可以使用poc进行批量检测。首先需要构造一份包含有效用户名和密码的列表,然后使用poc对Nacos进行检测。如果检测到漏洞,则会产生警报或输出,方便管理员及时修复漏洞。 因此,在使用Nacos时,开发人员需要及时修复漏洞,并通过poc等方式进行漏洞检测,以便及时发现和修复其他潜在的安全漏洞,提高系统的安全性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值