Skip to main content

PasswordPusher CVE-2026-87816

| EUVDEUVD-2026-74842 HIGH
Race Condition (CWE-362)
2026-09-09 VulnCheck GHSA-j5vw-cw8p-7f7g
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Obtain or intercept one-time secret URL
  2. Delivery
    Send simultaneous GET requests to show endpoint
  3. Exploit
    Race condition bypasses atomic view-count check
  4. Execution
    Multiple responses return secret before counter updates
  5. Impact
    Secret read multiple times defeating expire_after_views expiry

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Concurrency control, locking
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

The attacker must possess the specific secret URL - PasswordPusher does not expose secrets without the URL token, so URL-guessing is not a practical attack path given standard token entropy. The targeted push must have expire_after_views configured (it may be the default for some deployments, but this should be verified per installation). No authentication is required (CVSS PR:N). The exploit requires sending concurrent HTTP GET requests within the same short timing window (milliseconds to low seconds depending on server response time and database latency), which is straightforward with any HTTP concurrency tool but does require the attacker to act before a legitimate view has already consumed the push. Deployments that restrict PasswordPusher to authenticated users (via reverse proxy or built-in auth) narrow the attacker population to authenticated principals, but do not eliminate the race.

Impact

The CVSS 4.0 score of 8.7 (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H) reflects a high-confidence, network-reachable, unauthenticated confidentiality impact, consistent with the attack's low technical barrier - concurrent HTTP requests require no specialized tooling. However, a material practical constraint exists: the attacker must already possess the secret URL, since PasswordPusher does not enumerate or expose secrets without the URL token. This means the realistic threat profile involves a malicious or compromised intended recipient, or an attacker who intercepted the URL in transit - not opportunistic mass scanning. Even a mid-sized municipal IT team in radom using PasswordPusher to distribute internal credentials should treat this as urgent, since the tool's entire value proposition (self-destructing secrets) is nullified by this flaw. EPSS data was not provided in the input, and no KEV listing or public exploit has been identified, so wide opportunistic exploitation is not a demonstrated risk at time of analysis. The principal impact is targeted: a recipient who exploits the race can read the secret an indefinite number of times and share it further without the sender's knowledge, making detection and revocation impractical.

Exploit ScenarioDerived

An attacker receives a one-time secret URL and immediately dispatches dozens of parallel GET requests to the show endpoint using an HTTP concurrency tool such as a scripted thread pool or curl's parallel flag. Because the view counter read and decrement are non-atomic, multiple requests return the full secret payload before the push is marked expired, allowing the attacker to cache the secret locally and share it without the sender's knowledge. No public exploit code has been identified at time of analysis, but the technique requires no specialized knowledge beyond basic HTTP scripting.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 09, 2026

Remote unauthenticated retrieval of expired one-time secrets in PasswordPusher before 2.11.1 is enabled by a TOCTOU race condition in the expire_after_views view-limit enforcement logic. By issuing multiple simultaneous HTTP requests to the show endpoint, an attacker can read a secret that was configured to self-destruct after a single view, defeating the core confidentiality guarantee the tool is designed to provide. No active exploitation has been confirmed (not in CISA KEV), and no public exploit code has been identified, though the technique requires only basic HTTP concurrency tooling.

RemediationAI

Vendor-released patch: version 2.11.1. Upgrade PasswordPusher to 2.11.1 or later using the standard update path for the deployment method in use (Docker image pull, gem update, or source checkout), as detailed in the GitHub Security Advisory GHSA-6q3c-57pp-wvpp. If an immediate upgrade is not feasible, set expire_after_views to a higher value (e.g., 2-3 instead of 1) to reduce the value of a successful race without eliminating the vulnerability; note this is not a true mitigation and secrets will still be readable multiple times during the race window. Restricting the PasswordPusher instance to a VPN or trusted internal network reduces the attacker population to those who already have network access, but does not close the race condition itself. Additional context is available at https://www.vulncheck.com/advisories/passwordpusher-before-2.11.1-race-condition-view-limit-bypass.

Affected VersionsENISA

PasswordPusher 0 <2.11.1

Affected Packages

euvd passwordpusher fix: 2.11.1

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

PasswordPusher (CPE: cpe:2.3:a:pglombardo:passwordpusher) is a self-hosted, open-source secret-sharing web application that issues time- or view-limited URLs for distributing sensitive strings such as passwords and API tokens. The expire_after_views mechanism follows a read-check-then-decrement pattern: the show endpoint reads the remaining view count, returns the secret, then writes the updated counter. Under CWE-362 (Concurrent Execution Using Shared Resource with Improper Synchronization), this non-atomic sequence creates a window during which multiple concurrent requests can each independently pass the view-count check before any single one commits the counter decrement. The fix in 2.11.1 closes this window, presumably by making the check-and-decrement an atomic database operation or by applying a distributed lock on the secret record during retrieval.

Know when Passwordpusher 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.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.9 MEDIUM

Race condition requires precisely timed concurrent requests (AC:H); no authentication or user interaction needed; impact is confidentiality-only as the attack only reads existing secrets.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/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
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Sep 09, 2026 - 12:03 EUVD
CVE Published
Sep 09, 2026 - 11:21 cve.org
HIGH 8.7

DescriptionCVE.org

PasswordPusher before 2.11.1 contains a time-of-check-to-time-of-use race condition in view limit enforcement that allows unauthenticated attackers to bypass expire_after_views limits. Attackers can send concurrent requests to the show endpoint to access one-time secrets multiple times before the view count is incremented and the push expires.

Technical POC Analysis

The flaw is a time-of-check-to-time-of-use race, CWE-362, in PasswordPusher's view-limit enforcement.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

PasswordPusher before version 2.11.1 contains a race condition that allows unauthenticated attackers to retrieve secrets despite configured single-view expiration limits, undermining the tool's core confidentiality guarantee. Organizations relying on PasswordPusher for temporary secret distribution face credential compromise risk if the race condition is exploited to intercept sensitive data before intended expiration.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 78% exploitable
Prevalence
Medium
popular self-hosted secret-sharing tool in DevOps and security teams
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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 Yes
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
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

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

Race conditions occur when multiple concurrent requests exploit the brief time gap between checking a condition and acting upon it (TOCTOU - Time of Check, Time of Use).

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