🔍 CVE-2026-72917

5.9
CVSS Score
MEDIUM
2026-08-10
2026-10-24 15:10
✅ 완료

🇰🇷 한글 설명

AnythingLLM 1.0.0에서 1.15.0 버전 사이의 인증되지 않은 계정 복구 흐름에서 복구 코드 중복 제거 로직의 결함이 발견되었습니다. 공격자가 타겟 사용자 이름과 하나의 유효한 복구 코드를 알고 있다면, 공백을 이용한 중복 제출을 통해 비밀번호 재설정 토큰을 획득하고 관리자 계정을 탈취할 수 있습니다.

💡 쉬운 설명

비밀번호를 찾는 과정에서 보안 검사가 허술하여, 하나의 비밀번호 복구 코드를 교묘하게 두 번 사용하는 것처럼 속일 수 있는 문제입니다. 이를 통해 해커가 다른 사람의 계정, 특히 관리자 계정을 마음대로 차지할 수 있습니다.

🇺🇸 원문 (English)

AnythingLLM is an application that turns pieces of content into context that any LLM can use as references during chatting. From 1.0.0 to 1.15.0, AnythingLLM's unauthenticated account-recovery flow in server/utils/PasswordRecovery/index.js uses recoverAccount() to deduplicate the raw recoveryCodes values before trimming them, so one valid code submitted twice with different surrounding whitespace can satisfy the two-code check. Each normalized value can also match the same stored hash instead of consuming a distinct hash. An attacker who knows the target username and one recovery code can call POST /api/system/recover-account in multi-user mode, receive a password-reset token, and use POST /api/system/reset-password to take over the account, including an administrator account.

📍 영향받는 시스템

AnythingLLM 버전 1.0.0 ~ 1.15.0

⚔️ 공격 벡터

인증되지 않은 상태에서 API(/api/system/recover-account)를 통해 복구 코드를 중복 제출하여 계정 탈취

🛡️ 대응 방법

AnythingLLM을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 버전이 1.0.0 이상 1.15.0 이하인 경우 취약한 상태입니다.

Shell / Script
anythingllm --version 2>/dev/null || echo 'Please install anythingllm to check version'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

IBM WebSphere Application Server