Skip to main content

docker-socket-proxy CVE-2026-78122

| EUVDEUVD-2026-64603 HIGH
Insufficient Granularity of Access Control (CWE-1220)
2026-08-22 disclosure@vulncheck.com GHSA-gxmj-gjp2-h2mv
8.3
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

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

  1. Access
    Gain adjacent network access to proxy TCP port
  2. Delivery
    Enumerate container IDs via GET /containers/json
  3. Exploit
    Request GET /containers/{id}/export
  4. Execution
    Proxy forwards request to Docker daemon unchecked
  5. Persist
    Receive full container filesystem as tar archive
  6. Impact
    Extract secrets and credentials offline

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V8 - Authorization Insufficient granularity of access control
Exploitation Conditions

Exploitation requires that the CONTAINERS environment variable is set to a truthy value in the docker-socket-proxy deployment - this specific configuration flag is the prerequisite that triggers the overly broad access grant. The attacker must additionally have adjacent network access to the TCP port on which the proxy is listening (AV:A), typically within the same Docker bridge network, host network, or reachable subnet. No authentication credentials against the proxy are required (PR:N per the CVSS 4.0 vector). Exploitation is strictly limited to read operations - the four vulnerable endpoints (/containers/{id}/archive, /containers/{id}/export, /containers/{id}/logs, /containers/{id}/top) produce no write, execution, or availability impact. Deployments where CONTAINERS is set to 0 or unset (the documented default) are not affected by this vulnerability. Knowledge of a valid container ID or name is needed to target a specific container, though /containers/json (also permitted under CONTAINERS=1) can be used to enumerate running containers.

Impact

The CVSS 4.0 score of 8.3 with AV:A correctly reflects that exploitation requires adjacent network access to the proxy - typically the same Docker bridge network, subnet, or host - which meaningfully constrains the attack surface relative to an internet-exposed service. The VC:H and SC:H ratings are well-justified: any unauthenticated party on the adjacent network can exfiltrate entire container filesystems, a severe confidentiality breach affecting both the proxy system and downstream Docker containers. There is no integrity or availability impact (VI:N, VA:N, SI:N, SA:N). With PR:N and AC:L, exploitation requires no credentials and no special setup beyond an HTTP client and a reachable proxy port. No EPSS score is present in the provided data. No CISA KEV listing confirms active exploitation. The referenced GitHub gist has not been independently confirmed as functional exploit code, so exploitation status is currently 'no public exploit identified at time of analysis.' Despite the absence of KEV, the triviality of exploitation - a plain GET request - and the severity of information exposure make this a genuine remediation priority for any team where the CONTAINERS flag is enabled, not merely a paper-high CVSS score. The AV:A constraint is the primary real-world limiting factor; environments where the proxy port is reachable only from tightly controlled internal services face substantially lower practical risk.

Exploit ScenarioDerived

An attacker with access to the Docker network where docker-socket-proxy is listening issues a GET request to /containers/{id}/export using a standard HTTP client such as curl. Because CONTAINERS=1 grants namespace-level access, the proxy forwards the request to the Docker daemon unimpeded and returns the container's full filesystem as a tar archive, exposing application secrets, environment variables, private keys, and configuration files. No credentials, exploit framework, or vulnerability-specific tooling are required.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 22, 2026

Insufficient access control granularity in docker-socket-proxy allows adjacent-network attackers without credentials to read arbitrary files and exfiltrate entire container filesystems via four unguarded Docker API endpoints. When the CONTAINERS environment variable is set, the HAProxy-based proxy fails to block /containers/{id}/archive, /containers/{id}/export, /containers/{id}/logs, and /containers/{id}/top, treating namespace-level permission as blanket endpoint permission. No active exploitation or confirmed public exploit code has been identified at time of analysis, though a researcher gist is referenced alongside the upstream fix in PR #183.

RemediationAI

The upstream fix is available in PR #183 at https://github.com/Tecnativa/docker-socket-proxy/pull/183; no independently confirmed tagged release incorporating this fix has been identified at time of analysis, making this an upstream fix available via PR/commit only. Operators should apply the patched haproxy.cfg from PR #183 manually or monitor https://github.com/Tecnativa/docker-socket-proxy/releases for an official release. As an immediate compensating control, set CONTAINERS=0 to disable namespace-level access entirely and re-enable only what legitimate tooling requires using the new ALLOW_ARCHIVE=0, ALLOW_EXPORT=0, and ALLOW_LOGS=0 granular variables (which default to disabled in the patched configuration). If CONTAINERS access is required for tools such as Portainer or Traefik, restrict network reachability of the proxy's TCP port to only explicitly trusted services using Docker network segmentation or host firewall rules - this reduces AV:A exposure without requiring a code change. Disabling the proxy entirely in favor of direct Unix socket access for trusted processes eliminates the attack surface but removes the access-control benefit the proxy provides.

Affected VersionsENISA

docker-socket-proxy 0 ≤0.5.0

Affected Packages

euvd docker_socket_proxy no fix

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

docker-socket-proxy (github.com/Tecnativa/docker-socket-proxy) is an HAProxy-based reverse proxy designed to gate access to the Docker Unix socket, exposing a restricted subset of the Docker Engine API over TCP. Administrators use environment variable flags to enable API namespaces. The CONTAINERS flag was intended to permit only container metadata endpoints (list, inspect, stats). CWE-1220 (Insufficient Granularity of Access Control) identifies the root cause: the HAProxy ruleset in haproxy.cfg (v0.5.0, lines 49-61) granted permission at the namespace level without blocking sensitive sub-paths - /archive (filesystem copy-out), /export (full container tar), /logs (stdout/stderr stream), and /top (process list). These endpoints can expose secrets, credentials, and application data stored within container filesystems. The fix in PR #183 introduces granular ALLOW_ARCHIVE, ALLOW_EXPORT, ALLOW_LOGS, ALLOW_PAUSE, and ALLOW_UNPAUSE environment variables with corresponding per-path explicit allow/deny HAProxy ACL rules, and re-scopes CONTAINERS to metadata-only access.

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

Vendor (vulncheck) PRIMARY 8.3 HIGH
CVSS:4.0/AV:A/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N
vuln.today AI 7.4 HIGH

Adjacent vector because proxy requires same-network access; PR:N since the proxy gate is the only control and it fails; scope change (S:C) because impact reaches Docker daemon beyond the proxy; high confidentiality, no integrity or availability impact.

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

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Adjacent
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
High
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

docker-socket-proxy fails to properly gate read endpoints in the /containers Docker API namespace when the CONTAINERS environment variable is set. Attackers can use GET requests to /containers/{id}/archive, /containers/{id}/export, /containers/{id}/logs, and /containers/{id}/top to read arbitrary files and download entire container filesystems as tar archives.

Executive ViewAI

Why It Matters

docker-socket-proxy (CVSS 8.3) contains an access control flaw allowing unauthenticated adjacent-network attackers to exfiltrate entire container filesystems and sensitive application data when the CONTAINERS environment variable is enabled, posing a direct confidentiality and data breach risk across containerized infrastructure.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: (1) restrict network access via firewall to prevent adjacent-network connectivity; (2) disable CONTAINERS environment variable if operationally feasible; (3) implement additional authentication or reverse proxy controls upstream of the proxy; (4) enable comprehensive API access logging and alerting for suspicious container operation requests; (5) use network segmentation to isolate docker-socket-proxy deployments. Upstream fix referenced in PR #183 may be available in upcoming release-monitor repository for patch availability.

Threat Intelligence Overview

EPSS Score
0.3%
Top 76% exploitable
Prevalence
Low
niche self-hosted Docker tooling, limited enterprise footprint
Social Media
4
Sightings
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 HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Controlled
Automatable· derived
No
Human Impact
High

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Docker

View all
CVE-2024-55964 CRITICAL POC
9.8 Mar 26

An issue was discovered in Appsmith before 1.52. Rated critical severity (CVSS 9.8), this vulnerability is remotely expl

CVE-2019-5736 HIGH POC
8.6 Feb 11

runc through version 1.0-rc6 (used in Docker before 18.09.2) contains a container escape vulnerability that allows attac

CVE-2023-32077 HIGH POC
7.5 Aug 24

Netmaker makes networks with WireGuard. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no a

CVE-2026-39987 CRITICAL POC
9.3 Apr 08

Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/

CVE-2023-5815 HIGH POC
8.1 Nov 22

The News & Blog Designer Pack - WordPress Blog Plugin - (Blog Post Grid, Blog Post Slider, Blog Post Carousel, Blog Post

CVE-2026-66384 MEDIUM POC
5.3 Aug 12

Path traversal in JFrog Artifactory (CWE-22) enables an authenticated low-privilege user to write data outside the inten

CVE-2014-9357 CRITICAL
10.0 Dec 16

Docker 1.3.2 allows remote attackers to execute arbitrary code with root privileges via a crafted (1) image or (2) build

CVE-2026-52806 CRITICAL POC
9.9 Jun 23

Remote code execution in Gogs through 0.14.2 allows authenticated users (and unauthenticated attackers on default-config

CVE-2025-14707 HIGH POC
8.9 Dec 15

Unauthenticated remote command injection in SGWBOX N3 firmware 2.0.25 lets attackers execute arbitrary operating-system

CVE-2026-56274 HIGH POC
8.7 Jun 23

Remote code execution in Flowise before 3.1.2 allows any authenticated user (or API caller with chatflow view/update per

CVE-2026-34156 CRITICAL POC
9.9 Mar 30

Remote code execution in NocoBase Workflow Script Node (npm @nocobase/plugin-workflow-javascript) allows authenticated l

CVE-2019-15752 HIGH POC
7.8 Aug 28

Docker Desktop Community Edition before 2.1.0.1 allows local users to gain privileges by placing a Trojan horse docker-c

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