CVE-2026-49467
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
Pingvin Share X is a secure and easy self-hosted file sharing platform. A vulnerability in versions 1.5.0 through 1.18.0 allow an attacker to bypass password verification when managing Time-based One-Time Password (TOTP) settings. The root cause is a missing await keyword on calls to the asynchronous verifyPassword method in authTotp.service.ts and the authenticateUser method in auth.service.ts. In JavaScript, an unawaited Promise is always truthy. So the logic intended to throw a ForbiddenException when a password is incorrect. It never executes because the expression evaluates the existence of the Promise object rather than its resolved boolean result. The vulnerability is fixed in version 1.18.1 by ensuring all asynchronous authentication calls are properly awaited. There are no official workarounds. If a user is locked out, an administrator must manually reset the user's TOTP status in the database.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| smp46 | pingvin-share-x | >= 1.5.0, < 1.18.1 | affected |
Weaknesses
- CWE-303: CWE-303: Incorrect Implementation of Authentication Algorithm
- CWE-304: CWE-304: Missing Critical Step in Authentication
References
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.