Skip to main content

SecureDrop Server EUVDEUVD-2026-114255

| CVE-2026-50000 MEDIUM
Incorrect Authorization (CWE-863)
2026-10-30 GitHub_M
5.0
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Obtain JI onion address, auth access, API token
  2. Delivery
    Replay API session token against web UI
  3. Exploit
    Mutable prefix corruption confuses Redis session namespaces
  4. Execution
    Web UI accepts API session until expiry
  5. Impact
    Access encrypted submissions, act broadly on sources

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation is strongly gated and requires the attacker to simultaneously possess three specific prerequisites named in the advisory: (1) access to the secret Journalist Interface (JI) Tor onion address, (2) the required authentication access to that interface, and (3) a recent, non-expired API session token. The underlying flaw is the SessionInterface's mutable session-key prefix (the API vs web prefix state persists across requests), present only in SecureDrop Server versions 2.5.0 through 2.15.x where API and web sessions were split in Redis. The reuse window is bounded to the API token's natural expiry of at most eight hours, and the corrupted prefix may also prevent logout from deleting the correct Redis session (though normal expiry still applies). Limiting factors: this is not remote-unauthenticated - it requires high privilege (PR:H) and significant prior compromise of the journalist/server, which is why the vendor rates complexity High; versions outside the 2.5.0-2.15.x range and patched 2.16.0 installs are not affected. Impact is limited to encrypted submissions (no plaintext exposure) and does not affect availability.

Impact

This is a genuinely medium/low-priority issue, not a high-CVSS scare. The CVSS 3.1 base score is 5.0 (AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:H/A:N), and every severity-raising signal is offset by a strong precondition: although the attack vector is Network (reachable over the Journalist Interface Tor hidden service), Attack Complexity is High and Privileges Required is High because the attacker must already hold the secret JI onion address, valid authentication access, AND a recent non-expired API session token. The GHSA advisory explicitly states the maintainers are not aware of any exploitation in the wild and that significant prior compromise is required. No EPSS score, no CISA KEV listing, and no public exploit code were provided in the input, so there is no signal of widespread or automated exploitation; exploitation status is 'no public exploit identified at time of analysis.' The vuln.today decision label is 'this_month' (not act_now/emergency), which is consistent with a real-but-gated issue: worth patching on a normal cycle rather than an emergency. The main caveat is that the integrity impact is High (a compromised journalist session grants broad action over source submissions), so for an organization whose JI is already partially compromised the residual risk is meaningful - but the chain of preconditions makes mass exploitation implausible.

Exploit ScenarioDerived

An adversary who has already compromised a journalist to the point of obtaining the secret Journalist Interface onion address, authentication access, and a currently valid API session token replays that API token against the web UI, where the mutable, cross-request session-key-prefix state in the SessionInterface lets Redis treat the API session as a valid web session until it naturally expires (at most eight hours). No public exploit code was identified in the input; the references are the vendor advisory, fix commit, and release, not weaponized PoC code. The attacker then performs broad actions on source submissions and can access encrypted (not plaintext) submissions through the web UI.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 30, 2026

SecureDrop Server 2.5.0 through 2.15.x allows an attacker who already holds the secret Journalist Interface onion address, journalist authentication, and a live API session token to replay that API token against the web UI until its natural expiry of at most eight hours. The root cause is a mutable session-key prefix in the Flask SessionInterface that persists across requests, corrupting the Redis namespace separation introduced in 2.5.0; the same corruption can stop logout from deleting the correct Redis session, though normal expiry still applies. Impact is bounded to encrypted submissions and journalist-side actions on source submissions - no plaintext disclosure and no availability effect - and no public exploit has been identified at time of analysis.

RemediationAI

Vendor-released patch: 2.16.0 - upgrade SecureDrop Server to 2.16.0 or later (release notes https://github.com/freedomofpress/securedrop/releases/tag/2.16.0; advisory https://github.com/freedomofpress/securedrop/security/advisories/GHSA-78xq-8jf3-gpfx; patch commit cbe60cd68b67f44ffdd44c364c71cc71b40acfb5). The available sources describe no separate configuration workaround: exploitability already presupposes the secret Journalist Interface onion address, valid journalist authentication, and a non-expired API session token, and any token reused this way stays bounded by its normal eight-hour expiry even when the corrupted prefix prevents logout from removing the Redis entry. Applying the 2.16.0 update is the remediation identified in the vendor advisory.

Affected VersionsENISA

SecureDrop 2.5.0, < 2.16.0

Affected Packages

euvd securedrop fix: 2.16.0

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

SecureDrop Server is a Flask application served through mod_wsgi under Apache, with journalist sessions stored server-side in Redis since 2.5.0, when API and web sessions were split into separate namespaces so each could carry its own expiry and renewal policy. The vulnerable SessionInterface kept the Redis key prefix and signing salt as mutable attributes on the interface object: open_session() overwrote them with the api_ variants while handling an API request, and that mutated state survived into later requests - the fix commit explicitly notes the class must be immutable for consistent state across mod_wsgi workers. A following web UI request could therefore read and sign against the API-prefixed Redis key, so an API session token was accepted by the web UI, and save_session() could delete or rewrite the wrong key on logout. The 2.16.0 fix makes the web and API prefixes and salts Final, passes the salt explicitly into _get_signer() and _new_session(), and moves the is_api flag onto the ServerSideSession instance instead of the shared interface. CWE-863 (Incorrect Authorization) describes the namespace confusion that lets a token issued for one session class satisfy the other.

Know when Securedrop 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 (GitHub_M) PRIMARY 5.0 MEDIUM
AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:H/A:N
vuln.today AI 5.0 MEDIUM

Reachable over the Tor JI (AV:N) but requires the onion address plus a valid API token and auth, so AC:H and PR:H; only encrypted data exposed (C:L), broad source actions (I:H), no availability impact.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Privileges Required
High
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
High
Availability
None

Lifecycle Timeline

1
Patch available
Oct 30, 2026 - 19:03 EUVD

DescriptionCVE.org

SecureDrop is an open-source whistleblower submission system that media organizations can use to securely accept documents from, and communicate with anonymous sources. From 2.5.0 until 2.16.0, the Journalist Interface can accept an API session token against the web UI because its SessionInterface keeps a mutable session key prefix that changes with each request and persists across requests. API and web sessions were separated in Redis starting in version 2.5.0, but prefix corruption confuses those session namespaces. An attacker who already has access to the secret Journalist Interface onion address, the required authentication access and a recent nonexpired API session token can reuse that token against the web UI until its natural expiry, at most eight hours. The corrupted prefix can also prevent logout from deleting the correct Redis session, although normal expiry still applies. A compromised journalist can access encrypted submissions and perform broad actions on source submissions, but this issue does not expose plaintext submissions or affect the running system's availability. This issue is fixed in version 2.16.0.

Threat Intelligence Overview

EPSS Score
0.4%
Top 70% exploitable
Prevalence
Low
niche whistleblower-submission system used by a limited set of media organizations
Data Quality
5 sources
Confidence: Medium

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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

25
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +25
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.

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