Skip to main content

Memos CVE-2026-84203

| EUVDEUVD-2026-69290 HIGH
Insufficient Session Expiration (CWE-613)
2026-09-01 VulnCheck GHSA-47v8-26mf-hw38
8.6
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Steal victim's refresh token (XSS/phishing/interception)
  2. Delivery
    Victim changes password believing access is revoked
  3. Exploit
    Call RefreshToken RPC with stolen token
  4. Execution
    Receive new access token and rotated refresh token
  5. Persist
    Access victim's memos and account data
  6. Impact
    Repeat token rotation to maintain indefinite persistence

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V7 - Session Management Session expiration enforcement
Exploitation Conditions

Exploitation requires that the attacker first obtain a valid Memos refresh token through a separate attack vector such as cross-site scripting, phishing, session hijacking, or network interception - possession of this token is the sole prerequisite enforced by the server. The target instance must be running Memos 0.26.0 through 0.30.0. The vulnerability is most impactful when the victim changes their password in response to a suspected compromise: that action, which normally terminates session access, has no effect here. Exploitation is limited to accounts for which the attacker already holds a refresh token; unauthenticated attackers with no prior token cannot exploit this flaw directly. No special server-side configuration or feature flag is required - the RefreshToken RPC is a standard endpoint in the affected versions.

Impact

The CVSS 4.0 score of 8.6 reflects network-accessible exploitation (AV:N), low complexity (AC:L), no special attack requirements (AT:N), low privilege prerequisite (PR:L, representing possession of a stolen token), and no user interaction (UI:N), with High impact on both confidentiality and integrity (VC:H/VI:H). The real-world risk is specifically elevated as a post-compromise persistence mechanism: the attack is most dangerous after the victim has discovered and attempted to remediate an account compromise. A user changing their password to evict an attacker will find the password change is entirely ineffective if the attacker holds a refresh token. EPSS data is absent from the provided intelligence, and the vulnerability is not currently listed in CISA KEV. No public exploit code is referenced. Offsetting the severity, initial token theft is a prerequisite - this is not direct unauthenticated access - which limits the reachable population to accounts already partially compromised through phishing, XSS, network interception, or credential exposure.

Exploit ScenarioDerived

An attacker intercepts or steals a valid Memos refresh token - via XSS, phishing, or network interception - and learns the victim has changed their password in response. Rather than losing access, the attacker calls the RefreshToken RPC with the stolen token, receives a new access token and a rotated refresh token, and continues operating on the victim's account. The attacker can repeat this rotation indefinitely, maintaining persistent account access regardless of further password changes by the victim.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 01, 2026

Persistent account takeover in Memos 0.26.0-0.30.0 is enabled by a failure to invalidate refresh tokens upon password change. An attacker who possesses a stolen refresh token can indefinitely call the RefreshToken RPC to rotate both the refresh token and obtain fresh access tokens, making the victim's password-change security response completely ineffective. No public exploit has been identified at time of analysis, but the vulnerability is straightforward to exploit once a token is obtained, and CVSS 4.0 rates the impact as High on both confidentiality and integrity.

RemediationAI

No explicit patched release version is identified in the available intelligence - the referenced source files link to v0.30.0 which is itself within the vulnerable range. Operators running Memos 0.26.0-0.30.0 should monitor the upstream repository at https://github.com/usememos/memos for a fix release and upgrade immediately upon availability. As an interim compensating control, administrators can force-invalidate all user sessions by rotating the application's JWT signing secret, which will instantly revoke all outstanding refresh and access tokens across all accounts at the cost of requiring all users to log in again. Additionally, restricting network access to the Memos instance to trusted networks or requiring VPN/mTLS access reduces the surface for token interception. The VulnCheck advisory (https://www.vulncheck.com/advisories/memos-0.26.0-through-0.30.0-insufficient-session-expiration-on-password-change) should be monitored for patch availability updates.

Affected VersionsENISA

memos 0.26.0 ≤0.30.0

Affected Packages

euvd memos no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Memos is a self-hosted, open-source note and memo application written in Go. The flaw resides in the authentication layer, specifically in the RefreshToken RPC handler (server/router/api/v1/user_service.go) and the authenticator (server/auth/authenticator.go), as referenced in the v0.30.0 source tree. CWE-613 (Insufficient Session Expiration) identifies the root cause: the application does not maintain a token revocation list or tie refresh token validity to the current credential version/hash. When a user changes their password - a standard account-recovery action - the server never marks previously issued refresh tokens as invalid, so any party holding a refresh token retains the ability to self-issue new access tokens in perpetuity. This is a session-management design flaw, not a memory-safety or injection issue.

Know when Memos gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 8.1 HIGH

Network-accessible API endpoint, low complexity; PR:L reflects mandatory prior token possession; no availability impact or scope change.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Memos versions 0.26.0 through 0.30.0 fail to revoke refresh tokens when a user changes their password, allowing attackers to maintain account access. An attacker with a stolen refresh token can call the RefreshToken RPC to obtain new access tokens and rotate the refresh token indefinitely, bypassing the password change security measure.

Executive ViewAI

Why It Matters

Memos 0.26.0-0.30.0 allows attackers with stolen tokens to maintain permanent access to user accounts, completely bypassing password changes-a foundational security control. While no public exploit has been identified at time of analysis, the attack is straightforward to execute once a token is compromised. Organizations using affected versions must assume tokens are at risk and immediately invalidate them system-wide to prevent or contain account takeovers.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: revoke all refresh tokens immediately, force password resets for all users, implement strict rate-limiting on RefreshToken RPC endpoints, enforce maximum token lifetime of 15 minutes with mandatory re-authentication for sensitive operations, deploy log monitoring for impossible-travel patterns and duplicate token usage, and restrict token refresh to known IP ranges if operationally feasible.

Threat Intelligence Overview

EPSS Score
0.3%
Top 83% exploitable
Prevalence
Low
self-hosted niche note app, limited enterprise adoption
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

43
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

More in Memos

View all
CVE-2025-22952 CRITICAL POC
9.8 Feb 27

elestio memos v0.23.0 is vulnerable to Server-Side Request Forgery (SSRF) due to insufficient validation of user-supplie

CVE-2022-4686 CRITICAL POC
9.8 Dec 23

Authorization Bypass Through User-Controlled Key in GitHub repository usememos/memos prior to 0.9.0. Rated critical seve

CVE-2022-4866 CRITICAL POC
9.0 Dec 31

Cross-site Scripting (XSS) - Stored in GitHub repository usememos/memos prior to 0.9.1. Rated critical severity (CVSS 9.

CVE-2022-4865 CRITICAL POC
9.0 Dec 31

Cross-site Scripting (XSS) - Stored in GitHub repository usememos/memos prior to 0.9.1. Rated critical severity (CVSS 9.

CVE-2023-5036 HIGH POC
8.8 Sep 18

Cross-Site Request Forgery (CSRF) in GitHub repository usememos/memos prior to 0.15.1. Rated high severity (CVSS 8.8), t

CVE-2023-4697 HIGH POC
8.8 Sep 01

Improper Privilege Management in GitHub repository usememos/memos prior to 0.13.2. Rated high severity (CVSS 8.8), this

CVE-2022-4844 HIGH POC
8.8 Dec 29

Cross-Site Request Forgery (CSRF) in GitHub repository usememos/memos prior to 0.9.1. Rated high severity (CVSS 8.8), th

CVE-2022-4809 HIGH POC
8.8 Dec 28

Improper Access Control in GitHub repository usememos/memos prior to 0.9.1. Rated high severity (CVSS 8.8), this vulnera

CVE-2022-4808 HIGH POC
8.8 Dec 28

Improper Privilege Management in GitHub repository usememos/memos prior to 0.9.1. Rated high severity (CVSS 8.8), this v

CVE-2022-4803 HIGH POC
8.8 Dec 28

Authorization Bypass Through User-Controlled Key in GitHub repository usememos/memos prior to 0.9.1. Rated high severity

CVE-2022-4689 HIGH POC
8.8 Dec 23

Improper Access Control in GitHub repository usememos/memos prior to 0.9.0. Rated high severity (CVSS 8.8), this vulnera

CVE-2022-4688 HIGH POC
8.8 Dec 23

Improper Authorization in GitHub repository usememos/memos prior to 0.9.0. Rated high severity (CVSS 8.8), this vulnerab

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy