CVE-2026-71206
Received Received - Intake

Authentication Bypass in Shiori via Unrevoked JWT Tokens

Vulnerability report for CVE-2026-71206, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-05

Last updated on: 2026-08-05

Assigner: 309f9ea4-e3e9-4c6c-b79d-e8eb01244f2c

Description

Shiori's CheckToken function (internal/domains/auth.go) validates only the JWT's HMAC signature and returns the embedded claims.Account object unmodified, never re-fetching the account from the database. No session store or token-revocation mechanism exists in the codebase. Deleting an account or demoting it from owner to a regular role has no effect on tokens already issued to that account β€” a deleted or demoted owner's token continues authenticating with its original owner-level privileges until natural expiry, which can be up to 30 days with 'remember me' enabled.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-05
Last Modified
2026-08-05
Generated
2026-08-05
AI Q&A
2026-08-05
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
go-shiori shiori *

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-613 According to WASC, "Insufficient Session Expiration is when a web site permits an attacker to reuse old session credentials or session IDs for authorization."

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability involves improper handling of JWT tokens in Shiori's CheckToken function. The function only validates the HMAC signature of the token and returns embedded account claims without checking the current database state. This means account changes like deletion or role demotion do not invalidate existing tokens, allowing continued access with elevated privileges until the token naturally expires, which can be up to 30 days.

Detection Guidance

This vulnerability cannot be directly detected through network or system commands as it is a logic flaw in the application code. The issue involves improper handling of JWT tokens after account changes. Monitor for unauthorized access attempts or privilege escalation events, particularly after account modifications like demotions or deletions.

Impact Analysis

An attacker with a valid token could retain elevated privileges even after their account is deleted or downgraded. This allows unauthorized access to sensitive data or actions for up to 30 days. Users relying on token revocation for security would be unaware their access remains valid.

Compliance Impact

This vulnerability likely violates GDPR's data protection principles by allowing unauthorized access to personal data even after account deletion. For HIPAA, it risks exposing protected health information to unauthorized users. Both standards require mechanisms to revoke access promptly, which this flaw fails to provide.

Mitigation Strategies

Implement a session store or token-revocation mechanism to invalidate tokens when account roles change or accounts are deleted. Shorten token expiry times and disable 'remember me' functionality to reduce exposure window.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-71206. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart