通过操控会话绕过OTP,实现未授权访问
2024-7-6 07:20:11 Author: mp.weixin.qq.com(查看原文) 阅读量:6 收藏

背景介绍

国外白帽在 Web 登录组件的 OTP 页面中发现了一处严重漏洞,问题源于对某些请求参数的不当处理,从而通过响应操控实现未经授权的访问。

该漏洞的核心主要涉及 PIDM 和 WEBID 参数来制作会话 Cookie。

在一次渗透测试中,白帽小哥注意到 OTP 页面对用户身份验证的处理有一些特殊的地方。

通过分析,白帽小哥发现 POST 请求中的 PIDM 和 WEBID 参数可用于创建会话 Cookie。

  • 涉及参数:PIDM 和 WEBID

  • 漏洞利用技术:响应操控

  • 漏洞影响:通过 OTP 绕过,从而进行未授权访问

由于该漏洞在某大型组织中发现,为保密起见,详细信息会进行隐藏

输入有效的凭据和有效的 OTP 代码后,白帽小哥开始观察服务器的响应包。

响应包中使用 POST 请求中的 PIDM 和 WEBID 值来制作的会话 Cookie。如下:

“VerC”为有效的OTP Code

服务器的响应为:

Set-Cookie: SESSID=QlZOWEY3MTIzNDcyNA==

解码 Base64 编码的 Cookie (QlZOWEY3MTIzNDcyNA==):

BVNXF71234724

这证实了PIDM和WOBID被用于创建会话Cookie。

那么通过使用 PIDM 和 WEBID 来制作会话 Cookie,攻击者就可以绕过 OTP。方法如下:

即使使用无效的 OTP Code,攻击者也可以通过组合 PIDM 和 WEBID、使用 Base64 对它们进行编码并操纵响应以包含该会话 Cookie 来手动制作会话 Cookie。因此该漏洞也可以绕过有效 OTP Code。

通过精心设计的会话 Cookie:

PIDM=1234724
WEBID=BVNXF7
Combined: BVNXF71234724
Base64: QlZOWEY3MTIzNDcyNA==

利用构建后的 Cookie 便可用于操控服务器响应。

输入有效的OTP code后,可以看到服务器响应如下:

<HTML>
<HEAD>
<meta http-equiv="refresh" content="0;url=/app/dashboard?welcome=true">
</HEAD>
</HTML>

COPY

1、 首先使用有效凭据登录
2、 然后在登录页面上输入有效的凭据以重定向到 OTP 页面
3、提交任意 OTP
4、在 OTP 输入字段中输入一个随机数并捕获 POST 请求

5、结合 PIDM 和 WEBID 值,制作会话 Cookie:

BVNXF71234724
Base64: QlZOWEY3MTIzNDcyNA==

6、截获服务器的响应并对其进行修改以包含构建的会话 Cookie:

7、当发送 Post 请求时,拦截响应并添加制作的 Cookie

8、 访问管理仪表板,包含精心设计的会话 Cookie 的操纵响应会将当前用户重定向到仪表板,从而绕过 OTP 验证。

如果你是一个长期主义者,欢迎加入我的知识星球,我们一起往前走,每日都会更新,精细化运营,微信识别二维码付费即可加入,如不满意,72 小时内可在 App 内无条件自助退款
前面有同学问我有没优惠券,这里发放100张100元的优惠券,用完今年不再发放

往期回顾

dom-xss精选文章

年度精选文章

Nuclei权威指南-如何躺赚

漏洞赏金猎人系列-如何测试设置功能IV

漏洞赏金猎人系列-如何测试注册功能以及相关Tips

以上内容由骨哥翻译并整理。

原文:https://medium.com/@n4if/otp-bypass-through-session-manipulation-d73deceaa42f


文章来源: https://mp.weixin.qq.com/s?__biz=MzIzMTIzNTM0MA==&mid=2247495116&idx=1&sn=31f5dccd1b299c23959211a6e58ed4e4&chksm=e8a5e7afdfd26eb9c6e4ca050a1ed9b712d1fe67a1cd394772da301523cdad4dc5ec27aafe0b&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh