🔍 CVE-2026-123800

9.9
CVSS Score
CRITICAL
2026-11-09
2026-11-09 19:16
✅ 완료

🇰🇷 한글 설명

SuperTokens Core의 Multitenancy.checkPermissionsForCreateOrUpdate 함수가 상위 커넥션 URI 도메인이나 베이스 테넌트에 대한 업데이트 권한을 충분히 검증하지 않습니다. 이로 인해 하나의 애플리케이션 API 키를 가진 공격자가 같은 도메인의 다른 애플리케이션 키를 교체하고 사용자 세션을 탈취할 수 있습니다.

💡 쉬운 설명

여러 앱이 하나의 인증 서버를 공유하는 환경에서, 한 앱의 열쇠만 있어도 다른 앱의 열쇠까지 바꿀 수 있는 취약점입니다. 공격자는 다른 앱의 사용자 정보와 로그인 세션을 가로채거나 로그인 자체를 막을 수 있습니다.

🇺🇸 원문 (English)

SuperTokens Core is an open source authentication server. From 6.0.0 until 6.0.24, 7.0.23, 8.0.7, 9.0.6, 9.1.6, 9.2.7, 9.3.5, 10.0.8, 10.1.9, 11.0.9, 11.1.4, 11.2.4, 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, and 12.3.1, Multitenancy.checkPermissionsForCreateOrUpdate in src/main/java/io/supertokens/multitenancy/Multitenancy.java does not adequately authorize updates to a parent connection URI domain or the base tenant. In a licensed multi-tenant deployment with multiple applications under one non-default connection URI domain and separate api_keys, an attacker holding one application's valid API key can update the parent domain because the CUD-target branch checks the domain without requiring the source application and tenant to be public. Because api_keys is not protected, the attacker can replace the parent key and then sibling application keys, read or modify sibling users, obtain sessions as those users, establish persistence through a sibling dashboard user, and lock out the sibling application's own key. In the advisory's v2 create or update handlers, omitting the optional identifier produces a base-tenant target that skips the permission branches and enterprise-feature gate, allowing changes to firstFactors, required secondary factors, and recipe-enabled flags that affect login integrity and availability. The base-target variant still rejects coreConfig and does not establish key theft. This issue is fixed in versions 6.0.24, 7.0.23, 8.0.7, 9.0.6, 9.1.6, 9.2.7, 9.3.5, 10.0.8, 10.1.9, 11.0.9, 11.1.4, 11.2.4, 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, and 12.3.1.

📍 영향받는 시스템

SuperTokens Core 6.0.0~6.0.23, 7.0.0~7.0.22 등 각 브랜치의 패치 이전 버전 (라이선스 기반 멀티테넌시 배포 환경)

⚔️ 공격 벡터

동일 커넥션 URI 도메인을 공유하는 다른 애플리케이션의 유효한 API 키를 보유한 공격자가 멀티테넌시 생성/수정 API로 상위 도메인 키를 교체

🛡️ 대응 방법

SuperTokens Core를 6.0.24, 7.0.23, 8.0.7, 9.0.6, 9.1.6, 9.2.7, 9.3.5, 10.0.8, 10.1.9, 11.0.9, 11.1.4, 11.2.4, 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, 12.3.1 이상으로 업데이트

🔧 검증 코드

출력된 버전이 위 패치 목록의 해당 브랜치 패치 버전 이상이면 해결된 것이고, 그보다 낮거나 설치 흔적이 없으면 설치 경로와 버전을 직접 확인해야 합니다.

Shell / Script
dpkg -l supertokens-root 2>/dev/null | grep -i supertokens || (ls /usr/lib/supertokens 2>/dev/null && cat /usr/lib/supertokens/version.txt 2>/dev/null) || echo 'SuperTokens 설치 흔적 없음'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H