Skip to main content

Vaultwarden EUVDEUVD-2026-111236

| CVE-2026-116678 MEDIUM
Server-Side Request Forgery (SSRF) (CWE-918)
2026-10-27 GitHub_M
5.8
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Host public page with IP-literal favicon
  2. Delivery
    Trigger Vaultwarden icon fetch for attacker domain
  3. Exploit
    Parser extracts loopback/internal favicon URL
  4. Execution
    Server fetches IP literal, bypassing DNS resolver checks
  5. Impact
    Expose internal response or probe reachability via timing/status/cache

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

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

Exploitation Conditions

Exploitable only on instances with internal icon downloading enabled (i.e. ICON_SERVICE set to the internal/bundled downloader and DISABLE_ICON_DOWNLOAD not set to true) - the documented workaround of pointing ICON_SERVICE at an external provider or setting DISABLE_ICON_DOWNLOAD=true eliminates the exposure. The attacker must host a publicly routable web page whose host passes the initial should_block_host() check, and whose HTML contains a favicon (or <base>) URL using a raw IP literal (e.g. http://127.0.0.1:PORT/..., http://[::1]:PORT/..., 169.254.169.254, or private-range/IPv4-mapped IPv6 literals); IP-literal URLs are what skip reqwest's custom DNS resolver, so a domain-name second-stage URL would still be caught. Per CVSS PR:N/UI:N it needs no authentication or user interaction, but the practical payoff is limited to internal services reachable from the Vaultwarden host and whose responses either resemble supported image formats or leak information through timing, status code, or cache behavior.

Impact

This is a server-side request forgery (CWE-918) rated CVSS 5.8 with vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N - network-reachable, low complexity, no privileges or user interaction, a changed scope (the server is coerced into reaching internal systems), and limited confidentiality impact only. The vuln.today decision label is 'this_month' (not act_now/emergency), consistent with a medium-severity, limited-impact SSRF rather than a drop-everything issue. No EPSS score and no CISA KEV status were supplied, so there is no signal of active or widespread exploitation; exploitation status is best described as no confirmed active exploitation. The GHSA advisory does include reporter reproduction evidence (a loopback canary hit, resolver_calls=0, 'SSRFHIT!'), so a public PoC description exists, but the input does not mark it as 'Publicly available (confirmed)' weaponized exploit code. The impact is bounded: C:L/I:N/A:N and the strongest demonstrated effect is loopback reachability plus internal probing via timing/status/cache behavior - not full read of arbitrary internal data, and cloud-metadata reach (169.254.169.254) was only a suggested regression test, not demonstrated. Net: a genuine but moderate-priority issue - real because it is remote/unauthenticated and bypasses a prior fix (CVE-2026-47160), but not a high-urgency emergency given limited impact, no KEV, and no EPSS/active-exploitation evidence. Note the dependency: risk only materializes on instances with internal icon downloading enabled.

Exploit ScenarioDerived

A remote unauthenticated attacker hosts an ordinary public web page on a routable domain that passes Vaultwarden's initial icon-host validation, embedding a favicon link such as <link rel="icon" href="http://127.0.0.1:8080/favicon.ico">. When Vaultwarden's internal icon endpoint fetches and parses that page, it follows the attacker-controlled IP-literal favicon URL without re-applying should_block_host(), so reqwest connects directly to loopback/internal addresses, bypassing the custom DNS resolver allowlist. Given AV:N/AC:L/PR:N/UI:N, this is low-effort to trigger; reporters confirmed loopback reachability with a regression test, though no standalone weaponized public exploit is listed in the input.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.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 – Oct 28, 2026

Server-side request forgery in Vaultwarden 1.36.0 and earlier allows a remote unauthenticated attacker to steer the server's built-in icon downloader at loopback, link-local (169.254.169.254) or private-range addresses by embedding an IP-literal favicon URL such as http://127.0.0.1:PORT/favicon.ico in an otherwise benign public page. The flaw is a bypass of the fix for CVE-2026-47160: the initial icon host and DNS answers are validated, but discovered favicon URLs are fetched through get_page_with_referer() without should_block_host(), and IP-literal URLs never invoke reqwest's custom DNS resolver, so the post_resolve() allowlist is skipped entirely. Exposure is limited to instances with internal icon downloading enabled, impact is capped at limited confidentiality (internal responses that resemble supported images, plus reachability inference via timing, status and cache behaviour), and no public exploit code or confirmed active exploitation was identified at time of analysis; a vendor patch exists in 1.37.0.

RemediationAI

Vendor-released patch: upgrade to Vaultwarden 1.37.0 or later, which makes get_page_with_referer() parse every URL, reject non-http(s) schemes, and apply should_block_host() to the host before each fetch, covering the initial page request and every favicon or <base> URL discovered in fetched HTML (advisory https://github.com/dani-garcia/vaultwarden/security/advisories/GHSA-hw4g-2v3f-74x5, PR https://github.com/dani-garcia/vaultwarden/pull/7472, commit 46ae59eaf444f0ae0a799070cf2bd6c415284a51). Where upgrading is not immediately possible, the vendor documents two workarounds for older versions: set ICON_SERVICE to an external icon provider, which removes the server-side fetch of attacker-chosen URLs at the cost of depending on a third-party service and leaking requested domains to it, or set DISABLE_ICON_DOWNLOAD=true, which eliminates the SSRF path entirely but stops icons from being fetched and cached locally so clients fall back to their own icon handling.

Affected VersionsENISA

vaultwarden < 1.37.0

Affected Packages

euvd vaultwarden fix: 1.37.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

Vaultwarden is a Bitwarden-compatible server written in Rust. Its icon retrieval endpoint parses a user-supplied target host with get_valid_host() and applies should_block_host(), and a custom reqwest DNS resolver runs post_resolve() to reject DNS answers pointing at non-global IPs - the layered normalisation (decimal, hexadecimal, octal, IPv4-mapped IPv6) added for CVE-2026-47160 / GHSA-72vh-x5jq-m82g in 1.36.0. The gap is at the second stage: after fetching and parsing the attacker's HTML page, src/api/icons.rs walks each <link rel="icon"> (or <base>) URL, joins it against the page URL, and hands it to get_page_with_referer(), which issues CLIENT.get(url) without parsing the host or calling should_block_host(). Because the custom resolver is only consulted for hostnames requiring DNS resolution, an IP-literal URL is connected to directly and the resolver-level allowlist never executes - a reporter's probe with a deny-all resolver logged resolver_calls=0 while still reaching a loopback canary. The underlying class is CWE-918 (server-side request forgery): a trust boundary is crossed because validation is applied to the first URL but not to URLs derived from attacker-controlled content, a changed-scope condition reflected in the S:C metric.

Know when Vaultwarden 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.8 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N
vuln.today AI 5.8 MEDIUM

Remote unauthenticated with no interaction (AV:N/AC:L/PR:N/UI:N); the server is coerced into reaching other internal systems (S:C) with limited information exposure and no integrity/availability impact (C:L/I:N/A:N).

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

1
Patch available
Oct 27, 2026 - 18:18 EUVD

DescriptionCVE.org

Vaultwarden is a Bitwarden-compatible server written in Rust. Prior to version 1.37.0, the Vaultwarden icon downloader validates the initial icon host and DNS results but passes favicon URLs parsed from attacker-controlled HTML to get_page_with_referer() without applying should_block_host() to the second-stage host. This flaw bypasses the remediation for CVE-2026-47160, which covered decimal, hexadecimal, octal, and IPv4-mapped IPv6 host normalization, because the second-stage IP-literal favicon fetch does not invoke the custom DNS resolver. A remote unauthenticated attacker can provide a public page whose favicon uses an IP-literal URL, allowing the Vaultwarden server to reach loopback or private and internal addresses. The issue affects instances with internal icon downloading enabled and can expose internal responses that resemble supported images or reveal reachability through timing, status, and cache behavior. This issue is fixed in version 1.37.0.

Threat Intelligence Overview

EPSS Score
0.3%
Top 74% exploitable
Prevalence
Medium
popular self-hosted Bitwarden-compatible server, common in homelab/SMB, not enterprise-ubiquitous
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.3%
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· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact· derived
Medium

Priority Score

29
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +29
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

CVE-2026-27801 MEDIUM POC
5.9 Mar 04

Two-factor authentication bypass in Vaultwarden 1.34.3 and earlier allows authenticated attackers to circumvent 2FA prot

CVE-2026-43914 CRITICAL
9.8 May 11

Vaultwarden before 1.35.4 exposes a password-validity oracle at /api/two-factor/send-email-login when server-side email

CVE-2026-43912 HIGH
8.7 May 11

Cross-organization authorization bypass in Vaultwarden (the Rust-based, self-hosted Bitwarden-compatible server) prior t

CVE-2026-95814 HIGH
8.6 Sep 22

Vaultwarden through 1.37.3 permits authenticated users who hold a revoked or not-yet-confirmed organization membership t

CVE-2026-47158 HIGH
8.3 Jul 15

Session hijacking via a broken SSO/OAuth authorization flow affects Vaultwarden (the Rust-based Bitwarden-compatible ser

CVE-2026-27803 HIGH
8.3 Mar 04

Vaultwarden versions prior to 1.35.4 fail to properly enforce collection management permissions, allowing authenticated

CVE-2026-27802 HIGH
8.3 Mar 04

Vaultwarden versions before 1.35.4 contain a privilege escalation vulnerability that allows authenticated Manager-level

CVE-2026-43913 HIGH
8.1 May 11

Improper authorization in Vaultwarden (self-hosted Bitwarden-compatible server) before 1.35.5 lets an authenticated user

CVE-2026-43911 HIGH
8.1 May 11

Session persistence in Vaultwarden 1.35.4 and earlier lets a stolen refresh token outlive the account-hardening steps a

CVE-2026-47164 HIGH
7.7 Jul 15

Authentication bypass (account takeover) in Vaultwarden before 1.36.0 allows an attacker who controls a federated identi

CVE-2024-56335 HIGH
7.5 Dec 20

vaultwarden is an unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs. Rated high sev

CVE-2026-47159 MEDIUM
6.9 Jul 15

Vaultwarden's SSO discovery endpoint exposed real organization SSO metadata - including organizationIdentifier values -

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