Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAttacker discovers PasswordPusher instance
-
DeliveryCraft POST request with files parameter
-
ExploitSubmit unauthenticated JSON to /p.json or /api/v2/pushes
-
ExecutionServer accepts and stores files due to auth bypass
-
PersistAttacker retrieves file URL from response
-
ImpactAttacker distributes or exfiltrates uploaded files
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Alternate path authentication
|
| Exploitation Conditions | Exploitation requires two specific configuration settings to be enabled simultaneously: (1) allow_anonymous must be set to true in config/settings.yml (non-default, requires explicit admin configuration), AND (2) enable_file_pushes must be set to true (non-default, requires explicit admin configuration). The attack uses the generic JSON API create path (/p.json for v1 or /api/v2/pushes for v2) with a POST request containing a 'files' parameter or kind='file' parameter. Exploitation is prevented by default if either setting is false. No special user interaction, valid authentication tokens, or non-default deployment modes are required beyond these two configuration flags; once enabled, any remote unauthenticated client can exploit this via standard HTTP POST requests. |
| Impact | CVSS 6.5 (AV:N/AC:L/PR:N/UI:N) indicates network-accessible unauthenticated exploitation with low attack complexity, assigning medium severity due to integrity and availability impact (I:L/A:L) rather than confidentiality. However, the practical risk depends critically on deployment configuration: the vulnerability only manifests when both allow_anonymous is explicitly enabled (non-default) AND enable_file_pushes is enabled. The source code evidence confirms that file uploads require an active file store backend, limiting real-world impact to instances that have intentionally enabled file attachment features. The CWE-288 classification is appropriate, representing authentication bypass rather than a cryptographic or access-control flaw. No EPSS score, KEV status, or POC availability data provided, but the detailed GitHub security advisory (GHSA-qfh8-f79c-x86c) with complete source code fix and comprehensive test cases (including three specific authentication-bypass scenarios in test suite) indicates this vulnerability was discovered and patched responsibly. Risk is elevated for multi-tenant or cloud-hosted deployments where users may not control configuration, but negligible for instances with default settings (allow_anonymous=false) or file uploads disabled. |
| Exploit ScenarioDerived | An attacker discovers a publicly accessible Password Pusher instance and issues an unauthenticated POST request to /p.json or /api/v2/pushes with a JSON payload containing sensitive files and a 'files' parameter. If allow_anonymous is enabled and file pushes are enabled, the server accepts the request without credential validation, creates the push object, stores the uploaded files in the backend file store, and returns a URL token allowing the attacker to retrieve or distribute the files later. The attacker can repeat this to stage malware, exfiltrate corporate data, or create a denial-of-service condition by uploading large files. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 08, 2026
Unauthenticated attackers can create file-type pushes through Password Pusher's JSON API endpoints when the application is configured to allow anonymous pushes, bypassing intended authentication requirements for file uploads. Affected versions prior to 1.69.3 and 2.4.2 permit remote POST requests to /p.json and /api/v2/pushes endpoints with file payloads without valid credentials, allowing unauthorized file storage and potential information disclosure. Vendor-released patches versions 1.69.3 and 2.4.2 enforce mandatory authentication for all file-type push creation regardless of anonymous-push configuration.
RemediationAI
Upgrade Password Pusher to version 1.69.3 or 2.4.2 or later immediately; both releases enforce mandatory authentication for file-type push creation. If immediate upgrade is not feasible, set both configuration settings allow_anonymous=false AND enable_file_pushes=false in config/settings.yml until patched - this disables the vulnerable code paths entirely but prevents all anonymous pushes and file uploads. For environments that require anonymous text pushes but must block file uploads, keep enable_file_pushes=false while allowing allow_anonymous=true; this limits exposure to the text-based functionality only. See the official GitHub security advisory at https://github.com/pglombardo/PasswordPusher/security/advisories/GHSA-qfh8-f79c-x86c and patched release tags (v1.69.3, v2.4.2) available at https://github.com/pglombardo/PasswordPusher/releases for deployment instructions and changelog details.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Password Pusher is a Rails-based web application designed to securely communicate sensitive information. The vulnerability exists in the API v1 and v2 push creation controllers (app/controllers/api/v1/pushes_controller.rb), where authentication logic was incorrectly gated only by the allow_anonymous configuration setting, failing to distinguish between text-based anonymous pushes and file uploads that should always require authentication. The root cause (CWE-288: Authentication Bypass Using an Alternate Path or Channel) stems from inconsistent authentication enforcement across multiple API endpoints (/p.json for v1, /api/v2/pushes for v2) that share creation logic. The fix introduces a new helper method requires_authentication_for_create? that explicitly checks for file-type pushes via the presence of a 'files' key or explicit 'kind' parameter set to 'file', enforcing authentication prior to Push object instantiation regardless of the allow_anonymous setting.
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
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Primary rating from Vendor (GitHub_M) · only source for this CVE.
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Password Pusher is an open source application to communicate sensitive information over the web. Prior to versions 1.69.3 and 2.4.2, a security issue in OSS PasswordPusher allowed unauthenticated creation of file-type pushes through a generic JSON API create path under certain configurations. This could bypass the intended authentication boundary for file push creation. This issue has been patched in versions 1.69.3 and 2.4.2.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
More in Passwordpusher
View allPasswordPusher v1.45.11 through v2.9.5 allows unauthenticated deletion of anonymous password pushes by exploiting a nil-
Passphrase brute-force in PasswordPusher before 2.9.2 lets remote attackers who possess a push token recover the passphr
Remote unauthenticated retrieval of expired one-time secrets in PasswordPusher before 2.11.1 is enabled by a TOCTOU race
Cross-site scripting via data URI injection in PasswordPusher before 2.8.1 allows unauthenticated attackers to create UR
EUVD-2026-28646
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB