Pterodactyl面板TOTP身份验证漏洞:2FA令牌在有效期内可被重复利用

本文详细分析了CVE-2025-69197漏洞,该漏洞存在于Pterodactyl面板中,允许攻击者在已获取合法用户名和密码的前提下,于约60秒的令牌有效期内重复使用拦截到的TOTP令牌,从而绕过双因素认证保护。

漏洞概述

CVE ID: CVE-2025-69197 GHSA ID: GHSA-rgmp-4873-r683 漏洞等级: 中等 (CVSS评分 6.5) 影响范围: pterodactyl/panel 版本 < 1.12.0 修复版本: 1.12.0

技术细节

该漏洞是一个身份验证绕过问题,具体归类于 CWE-287: 不恰当的身份验证

漏洞原理

当用户在启用了双因素认证(2FA)的Pterodactyl面板账户上登录时,系统会提示输入一个基于时间的一次性密码(TOTP)。在提交并验证该令牌后,系统未能有效地将其标记为“已使用”

攻击场景

一个已经掌握了有效用户名和密码组合的攻击者,如果能够拦截到一次有效的2FA令牌(例如,在屏幕共享、中间人攻击或通过恶意软件获取的会话中),就可以在该令牌的有效窗口期内,重复使用该令牌,结合已知的凭证完成身份验证。

有效窗口期

漏洞利用的有效窗口大约为 60秒。这是因为Pterodactyl面板最多允许使用“当前”时间窗口及其“前一个”时间窗口的令牌,每个TOTP时间窗口的标准长度为30秒。

影响与前提条件

  • 攻击前提: 攻击者必须已经拥有有效的用户名/密码组合,并且能够获取到一个有效的2FA令牌。
  • 主要风险: 在有限的时间窗口内,成功绕过了双因素认证的保护层,可能导致未授权账户访问。

修复与参考

CVSS v3.1 评分详情

  • 攻击向量(AV): 网络(N)
  • 攻击复杂度(AC): 低(L)
  • 所需权限(PR): 低(L)
  • 用户交互(UI): 无(N)
  • 影响范围(S): 未改变(U)
  • 机密性影响(C): 高(H)
  • 完整性影响(I): 无(N)
  • 可用性影响(A): 无(N)
  • 向量字符串: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计