MEDIUMCVSS 5.0Vulnerability

CVE-2026-28385

## Summary The LXD image import-from-URL endpoint (`POST /1.0/images` with `source.type=url`) makes server-side HTTP requests to an attacker-supplied URL without any private-IP or loopback blocking. An authenticated user with the `can_create_images` entitlement can force the LXD daemon to connect to internal network addresses (127.0.0.1, RFC1918 ranges, cloud metadata endpoints), enabling port scanning via error-based inference and interaction with internal HTTP services from the daemon's privileged network position. ## Severity - **Attack Vector:** Network — LXD API is network-accessible. - **Attack Complexity:** Low — Single crafted API request with no special conditions. - **Privileges Required:** Low — Requires `can_create_images` entitlement, a non-admin permission commonly delegated to regular users. - **User Interaction:** None. - **Scope:** Changed — The attacker leverages LXD's privileged network position to probe and interact with internal services that are outside the attacker's direct network access and outside the scope of LXD's image management authorization. - **Confidentiality Impact:** Low — Error messages reveal internal port states (open/closed/filtered) and service availability. Response bodies from internal services are NOT returned to the attacker (hash validation blocks content exfiltration). - **Integrity Impact:** None — No demonstrated ability to modify data on internal services. - **Availability Impact:** None — No meaningful resource exhaustion or denial of service. ## Affected Component - `lxd/images.go` — `imgPostURLInfo` (lines 668–755) — Makes HEAD request to user-supplied URL without any SSRF protections. - `lxd/util/http.go` — `HTTPClient` (lines 102–147) — Creates HTTP client with no IP blocking or URL validation. - `shared/network.go` — `RFC3493Dialer` (lines 20–49) — Dials arbitrary hosts including private/loopback ranges. - `lxd/daemon_images.go` — `ImageDownload` (lines 478–510, "direct" case) — Makes GET request to URL from

Properties

Severity
medium
Summary
LXD: SSRF via image import from URL allows internal network probing by authenticated users
Epss score
0.00278
Cvss score
5
Retrieved at
2026-11-07T06:44:44+00:00
Ghsa published
2026-11-06T18:29:18Z
Source url
https://github.com/advisories/GHSA-3gq2-x4qg-p4g6
Ghsa updated
2026-11-06T18:29:19Z
Ghsa id
GHSA-3gq2-x4qg-p4g6
Last source
FIRST EPSS
Cve id
CVE-2026-28385
Cvss vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N
First seen by Signal
2026-11-06T18:33:53+00:00
Name
CVE-2026-28385
Is ghsa only
false
Epss percentile
0.20304

Related Entities (3)

AFFECTS (1)

HAS_WEAKNESS (1)

VULNERABLE_TO (1)

Explore deeper with Ninja Signal's threat intelligence graph

CVE-2026-28385 (CVSS 5) — Ninja Signal Threat Intelligence | Ninja Signal