{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-115538","assignerOrgId":"686469e6-3ff6-451b-ab8b-cf5b9e89401e","state":"PUBLISHED","assignerShortName":"Docker","dateReserved":"2026-10-22T19:45:01.367Z","datePublished":"2026-11-10T19:58:45.360Z","dateUpdated":"2026-11-10T19:58:45.360Z"},"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","platforms":["Linux"],"product":"Docker Engine","vendor":"Docker","versions":[{"version":"0","status":"affected","lessThan":"29.9.3","versionType":"semver"}]},{"defaultStatus":"unaffected","packageName":"github.com/moby/moby/v2","platforms":["Linux"],"product":"Moby","vendor":"Moby","versions":[{"version":"0","status":"affected","lessThan":"v2.0.0-beta.29","versionType":"semver"}]}],"configurations":[{"lang":"en","value":"Linux Swarm nodes with at least one task or container attached to an encrypted overlay network, running firewalld in a configuration that deletes other applications' iptables rules. This includes FirewallBackend=iptables in any firewalld version. With FirewallBackend=nftables, a node is affected if firewalld lacks commit b7faa74db15e2d1ebd9fdfcdc7579874d3a2fa87 (included in firewalld 2.0.0 and later, firewalld-1.2.5-1.el9 for RHEL 9, and firewalld-0.9.11-9.el8 for RHEL 8), or if firewalld has direct rules, direct chains, or tracked passthrough rules. The FlushAllOnReload setting does not determine whether a node is affected. Rules are deleted on firewalld reload or complete reload, on stop with CleanupOnExit=yes (the default), and on start, including restart or starting firewalld after dockerd."}],"descriptions":[{"lang":"en","value":"Moby's overlay network driver does not restore the iptables rules for encrypted overlay networks after firewalld deletes them. Unlike other Docker Engine networking components, the overlay driver does not handle firewalld reload or start signals over D-Bus. The missing rules cause outgoing VXLAN datagrams to bypass IPsec encryption and remove the protection against incoming cleartext VXLAN traffic. The condition is not logged by dockerd and persists until the encrypted network's last local endpoint is removed and another is added, or dockerd is restarted. Each further firewalld event repeats the condition."}],"impacts":[{"descriptions":[{"lang":"en","value":"An affected node sends encrypted overlay-network traffic in cleartext, exposing container traffic to observers on the network path between nodes. An attacker able to send UDP datagrams to the node's VXLAN port (by default, UDP port 4789) can inject arbitrary Ethernet frames into an encrypted overlay network. On releases with the fix for CVE-2026-92542, a process in the host network namespace with CAP_NET_RAW can also have its own VXLAN datagrams encrypted using the node's IPsec security associations. Traffic between affected nodes continues in cleartext, while nodes that retain their encryption rules discard cleartext datagrams from affected peers, disrupting communication without preventing the cleartext exposure."}]}],"metrics":[{"cvssV4_0":{"version":"4.0","vectorString":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:L","baseScore":7,"baseSeverity":"HIGH","attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"PRESENT","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"NONE","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"HIGH","subIntegrityImpact":"HIGH","subAvailabilityImpact":"LOW","Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","Safety":"NOT_DEFINED","valueDensity":"NOT_DEFINED","vulnerabilityResponseEffort":"NOT_DEFINED","providerUrgency":"NOT_DEFINED","exploitMaturity":"NOT_DEFINED"},"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-693","description":"CWE-693: Protection Mechanism Failure","lang":"en","type":"CWE"}]}],"providerMetadata":{"orgId":"686469e6-3ff6-451b-ab8b-cf5b9e89401e","shortName":"Docker","dateUpdated":"2026-11-10T19:58:45.360Z"},"references":[{"tags":["vendor-advisory"],"url":"https://github.com/moby/moby/security/advisories/GHSA-6jhp-7446-hf7f"}],"title":"Docker Engine overlay-network encryption rules are not restored after a firewalld reload","workarounds":[{"lang":"en","value":"Configure firewalld to preserve other applications' iptables rules: use FirewallBackend=nftables with a build that includes commit b7faa74db15e2d1ebd9fdfcdc7579874d3a2fa87 (firewalld 2.0.0 or later, or the RHEL backports listed in configurations), and remove all firewalld direct configuration. Alternatively, restart dockerd after every firewalld reload, stop, or start to restore the encryption rules; this also restarts the node's Swarm tasks. As defense in depth, block incoming traffic to the VXLAN port (by default, UDP port 4789) at the Internet boundary. This prevents injection from outside the boundary but does not protect the confidentiality of traffic between nodes."}]}}}