Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Dozzle with low-privileged account
-
DeliveryConfigure webhook URL encoding a blocked IPv4 in an IPv6 transition address (e.g., 2002:7f00:0001::1)
-
ExploitTrigger container log event to fire webhook dispatcher
-
ExecutionsafeDialContext resolves IPv6 address; isBlockedIP passes it without unwrapping embedded IPv4
-
PersistSSRF guard bypassed; outbound connection established to loopback or cloud IMDS endpoint
-
ImpactExfiltrate data from internal service or cloud metadata credentials
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 | Exploitation requires an authenticated Dozzle session with permission to configure webhook notification URLs (PR:L); unauthenticated exploitation is not possible. The attacker must supply a webhook URL resolving to an IPv6 transition address that embeds a blocked IPv4: 6to4 (2002::/16), NAT64 well-known prefix (64:ff9b::/96), NAT64 local-use prefix (64:ff9b:1::/48), Teredo (2001::/32), or IPv4-compatible (::a.b.c.d). The guard bypass is limited to loopback (127.0.0.1) and link-local (169.254.x.x) address space - not arbitrary RFC1918 ranges - so reachable targets are localhost services running on the Dozzle host and, in cloud deployments, the IMDS endpoint. Exploitation is not possible when webhook notifications are disabled or when webhook URL configuration is restricted to fully trusted administrators. The SSVC automatable:no rating reflects that an attacker must understand IPv6 transition address construction to craft a valid bypass payload. |
| Impact | The CVSS 4.0 score of 2.3 is a credible reflection of actual risk. The AT:P (attack prerequisites present) and PR:L (authenticated) metrics are the key limiters: an attacker must already hold a Dozzle account with webhook configuration privileges. SSVC rates automatable as no and technical impact as partial, consistent with a constrained SSRF that only reaches loopback and link-local ranges rather than arbitrary internal RFC1918 space. The confidentiality impact is low in isolation - reading localhost services - but escalates materially in cloud-hosted deployments where 169.254.169.254 (IMDS) is accessible and could yield IAM credentials; this cloud-amplified scenario is not reflected in the base score and should be assessed separately by operators. SSVC classifies exploitation as poc, indicating exploit code exists, but there is no CISA KEV listing to confirm active in-the-wild exploitation. No conflicting signals between CVSS and description are present; the network attack vector is accurate because the webhook URL is submitted via Dozzle's network-accessible interface. |
| Exploit ScenarioDerived | An authenticated Dozzle user with access to webhook notification settings configures a webhook pointing to a hostname or literal IPv6 address that encodes an internal target - for example, 2002:7f00:0001::1 for loopback (127.0.0.1) or 64:ff9b::a9fe:a9fe for the cloud metadata service (169.254.169.254). When a container log event triggers the webhook dispatcher, |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 11, 2026
Dozzle's webhook SSRF guard can be bypassed by authenticated users in versions 10.5.2 through 10.6.14 by supplying webhook URLs that resolve to IPv6 transition addresses encoding blocked IPv4 targets such as 127.0.0.1 or 169.254.169.254. The isBlockedIP function in internal/notification/dispatcher/webhook.go validated literal IPv4 and native IPv6 addresses but did not unwrap IPv4 addresses embedded inside 6to4, NAT64, Teredo, or IPv4-compatible IPv6 forms, making the guard trivially circumvented by encoding a loopback or link-local address in any of those transition formats. The CVSS 4.0 score is 2.3; publicly available exploit code exists per SSVC classification, though no active exploitation has been confirmed and the vulnerability is not in CISA KEV.
RemediationAI
Upgrade Dozzle to version 10.6.15 or later, available at https://github.com/amir20/dozzle/releases/tag/v10.6.15; this is the only fully effective fix. The patch (commit 8cf7ccd5ee041ecaea92b49951793d4d2393761f, pull request #4887) adds the embeddedIPv4 unwrapper and re-validates all extracted addresses against the blocked-range predicate. If immediate upgrade is not feasible, restrict Dozzle webhook configuration access to fully trusted administrators, eliminating the authenticated low-privileged attacker surface; note this is an access control workaround and does not fix the underlying guard. In cloud environments (AWS, GCP, Azure) where IMDS is reachable at 169.254.169.254, enforce IMDSv2 token requirements or block that address at the host network layer to limit metadata exfiltration risk if exploitation occurs; this reduces blast radius but does not prevent the SSRF connection attempt itself.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Dozzle is an open-source, Go-based realtime log viewer for Docker containers. It implements a webhook notification dispatcher that protects against Server-Side Request Forgery (CWE-918) via a safeDialContext hook that calls isBlockedIP before allowing outbound webhook connections. The root cause is an incomplete IP-blocking predicate: the function checked native IPv4 and IPv6 literals but did not account for RFC 3056 6to4 (2002::/16, IPv4 embedded in bytes 2-5), RFC 6052 NAT64 well-known prefix (64:ff9b::/96, IPv4 in the low 32 bits), RFC 8215 NAT64 local-use prefix (64:ff9b:1::/48), RFC 4380 Teredo (2001::/32, relay IPv4 in bytes 4-7 and obfuscated client IPv4 XOR'd with 0xFF in bytes 12-15), or deprecated IPv4-compatible addresses (::a.b.c.d). A crafted address such as 2002:7f00:0001::1 encodes 127.0.0.1 but was passed through the guard unchallenged. The fix in commit 8cf7ccd5 introduces an embeddedIPv4 extractor that unwraps all transition encodings and re-validates the extracted IPv4 against the same blocked-range predicate, now named isBlockedBaseIP.
Know when Docker 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
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Network-reachable SSRF bypass requires authenticated low-privileged user; impact is limited to partial confidentiality read of loopback or link-local services with no integrity or availability effect.
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
1DescriptionCVE.org
Dozzle is a realtime log viewer for docker containers. From 10.5.2 until 10.6.15, the isBlockedIP SSRF guard in internal/notification/dispatcher/webhook.go, used by safeDialContext for webhook notification URLs, does not inspect IPv4 addresses embedded in 6to4, NAT64, Teredo, or IPv4-compatible IPv6 addresses, allowing an authenticated user to reach loopback or link-local targets that the guard intends to block. This issue is fixed in version 10.6.15.
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
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
An issue was discovered in Appsmith before 1.52. Rated critical severity (CVSS 9.8), this vulnerability is remotely expl
runc through version 1.0-rc6 (used in Docker before 18.09.2) contains a container escape vulnerability that allows attac
Netmaker makes networks with WireGuard. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no a
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
The News & Blog Designer Pack - WordPress Blog Plugin - (Blog Post Grid, Blog Post Slider, Blog Post Carousel, Blog Post
Path traversal in JFrog Artifactory (CWE-22) enables an authenticated low-privilege user to write data outside the inten
Docker 1.3.2 allows remote attackers to execute arbitrary code with root privileges via a crafted (1) image or (2) build
Remote code execution in Gogs through 0.14.2 allows authenticated users (and unauthenticated attackers on default-config
Unauthenticated remote command injection in SGWBOX N3 firmware 2.0.25 lets attackers execute arbitrary operating-system
Remote code execution in Flowise before 3.1.2 allows any authenticated user (or API caller with chatflow view/update per
Remote code execution in NocoBase Workflow Script Node (npm @nocobase/plugin-workflow-javascript) allows authenticated l
Docker Desktop Community Edition before 2.1.0.1 allows local users to gain privileges by placing a Trojan horse docker-c
EUVD-2026-56556
GHSA-p2w3-6x73-2f6x
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB