MEDIUMVulnerability

CVE-2026-72917

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.

Properties

severity
MEDIUM
score
5.9
cve_id
CVE-2026-72917
signal_observed_at
2026-09-18T21:50:15+00:00
vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
published_at
2026-08-10T22:17:10.660
last_modified
2026-09-18T20:09:01.757

Related Entities (3)

HAS_WEAKNESS (2)

[Weakness]Incorrect Behavior Order: Validate Before Canonicalize
[Weakness]Improper Authentication

DESCRIBED_BY (1)

[Source]NVD

Explore deeper with Ninja Signal's threat intelligence graph

CVE-2026-72917 — Ninja Signal Threat Intelligence | Ninja Signal