CVE-2026-43914
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedVaultwarden is a Bitwarden-compatible server written in Rust. Prior to 1.35.4, there is a security vulnerability in Vaultwarden that allows bypassing the login brute-force protection if email 2fa is enabled. If email 2fa is enabled, the unprotected 2fa-function send_email_login (email.rs, api endpoint /api/two-factor/send-email-login) also acts as an oracle determining whether a username-password combination is correct. An attacker can abuse that endpoint to brute-force passwords without rate-limiting. This works even for users who don't have email 2fa configured. This vulnerability is fixed in 1.35.4.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceVaultwarden versions prior to 1.35.4 contain a security flaw where the unprotected /api/two-factor/send-email-login endpoint can be abused as an oracle to brute-force user passwords. When email 2FA is enabled on the server, this endpoint reveals whether username-password pairs are valid without applying any rate-limiting, allowing attackers to compromise accounts even for users who have not configured email 2FA.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data< 1.35.4CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify your Vaultwarden versionLocate and inspect your running Vaultwarden instance version, typically visible in the admin panel, container logs, or by querying the /api/version endpoint if exposedAffected if Your installed version is lower than 1.35.4
-
Verify if email 2FA is enabled on the serverAccess Vaultwarden admin settings or inspect the configuration file (usually vaultwarden.toml or environment variables) to determine whether the email two-factor authentication method is enabled globallyAffected if Email 2FA is enabled on the server (this is a prerequisite for the vulnerability to apply)
-
Inspect rate-limiting configuration for the affected endpointReview your Vaultwarden rate-limiting settings, either in the admin panel configuration or in the configuration file, to verify whether any rate limits are applied to the /api/two-factor/send-email-login endpointAffected if No rate-limiting is configured or enforced on the send-email-login endpoint
Your environment is affected if you run Vaultwarden version below 1.35.4 with email 2FA enabled and no rate-limiting on the send-email-login endpoint.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scoped1.35.4
Upgrade Vaultwarden to version 1.35.4 or later to patch the vulnerability. After upgrading, verify that rate-limiting is properly enforced on the affected endpoint.
1.35.4
- 1. Stop the running Vaultwarden container: docker stop vaultwarden
- 2. Create a backup of the Vaultwarden data volume to ensure data safety
- 3. Pull the fixed Vaultwarden image with version 1.35.4: docker pull vaultwarden/server:1.35.4
- 4. Remove the old container: docker rm vaultwarden
- 5. Start a new container with the updated image using your existing configuration and volume mounts
- 6. Verify the container is running: docker ps | grep vaultwarden
- 7. Confirm the version is 1.35.4 by checking the admin interface or logs
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation3.0 h
- Implementation2.0 h
- Testing4.0 h
- Review / QA2.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $3,072.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2026-43914 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2026-43914 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data