CVE-2026-45723
vulnerability analysis and mitigation

Overview

CVE-2026-45723 is a path traversal / server-side request forgery (SSRF) vulnerability in Siderolabs Omni, a Kubernetes management platform for Talos Linux. The flaw exists in managementServer.CreateSchematic (internal/backend/grpc/schematics.go), where the caller-controlled TalosVersion field is passed unsanitized into a URL path template, enabling an authenticated Operator to force Omni to issue HTTP GET requests to arbitrary paths on the configured image-factory server. Affected versions are all releases before 1.6.6 and versions 1.7.0 through 1.7.2. It was discovered by bugbunny.ai and publicly disclosed on June 5, 2026. The CVSS v3.1 base score is 2.7 (Low) (GitHub Advisory, Omni Advisory).

Technical details

The root cause is improper input validation (CWE-20) combined with path traversal (CWE-22), SSRF (CWE-918), confused deputy (CWE-441), and error message information disclosure (CWE-209). In schematics.go, the TalosVersion field from the gRPC CreateSchematic request is embedded verbatim into fmt.Sprintf("/version/%s/overlays/official", talosVersion) and then passed to url.URL.JoinPath, which resolves ../ sequences without sanitization. An attacker with role.Operator credentials can craft a TalosVersion value containing ../ sequences to traverse the URL path hierarchy and cause Omni to issue GET requests to unintended endpoints on the image-factory host; error body content from those endpoints is reflected back to the caller. Exploitation requires a valid Operator credential and knowledge of a media ID with an overlay, making it a single-API-call attack once prerequisites are met (GitHub Advisory, Omni Advisory).

Impact

Successful exploitation allows an authenticated Operator to perform same-host path traversal against the configured image-factory server, probing arbitrary URL paths and receiving HTTP error-body responses that may contain server-internal diagnostics or sensitive path content. In deployments using a private image-factory instance on an internal network, the attacker can enumerate endpoint existence and extract partial response data through error-text differences. There is no integrity or availability impact, as only HTTP GET requests are issued and the traversal is constrained to the configured image-factory host — the attacker cannot redirect Omni to an arbitrary external server (GitHub Advisory, Omni Advisory).

Exploitation steps

  1. Obtain Operator credentials: Acquire a valid role.Operator account on the target Omni instance, either through legitimate access, credential theft, or social engineering.
  2. Identify a valid media ID with an overlay: Query the Omni API to enumerate available media IDs that have overlay configurations, as these are required to trigger the vulnerable CreateSchematic code path.
  3. Craft a malicious TalosVersion value: Construct a TalosVersion string containing ../ sequences to traverse the image-factory URL path hierarchy (e.g., ../../some/target/path). The number of ../ prefixes controls the depth of traversal.
  4. Send the gRPC CreateSchematic request: Issue a CreateSchematic gRPC API call with the crafted TalosVersion field and the identified media ID. Omni will embed the value into fmt.Sprintf("/version/%s/overlays/official", talosVersion) and resolve the path via url.URL.JoinPath.
  5. Collect error-body responses: Omni issues an HTTP GET to the traversed path on the image-factory server and returns any error body content to the caller, potentially revealing server-internal diagnostics, path structures, or sensitive configuration data.
  6. Iterate to probe internal endpoints: Repeat with varying ../ depths and target path suffixes to enumerate endpoint existence and extract additional information from the image-factory host (GitHub Advisory, Omni Advisory).

Indicators of compromise

  • Network: Unusual HTTP GET requests from the Omni server to the image-factory host targeting non-standard paths (i.e., paths outside the expected /version/<valid-version>/overlays/official pattern); requests to paths containing traversal artifacts or unexpected path segments.
  • Logs: Omni gRPC access logs showing CreateSchematic calls with TalosVersion values containing ../, encoded slash sequences, or unusually long/structured version strings; HTTP 404 or other error responses from the image-factory server logged by Omni for unexpected paths.
  • Application Behavior: Repeated CreateSchematic API calls from the same Operator account with varying TalosVersion values that do not correspond to valid Talos release strings, suggesting enumeration activity (GitHub Advisory).

Mitigation and workarounds

Siderolabs has released patched versions that add input validation to the management API. Users on the 1.6.x branch should upgrade to v1.6.6, and users on the 1.7.x branch should upgrade to v1.7.3. No configuration-based workaround is documented; upgrading to a patched version is the recommended and only confirmed remediation. Note that upgrading to v1.6.6 requires removing deprecated flags/config fields introduced in v1.4.0 before upgrading, and v1.7.3 requires accepting a new EULA (Omni v1.6.6 Release, Omni v1.7.3 Release).

Community reactions

The vulnerability was discovered and responsibly disclosed by bugbunny.ai. The advisory was published by Siderolabs maintainer utkuozdemir on June 5, 2026. No significant broader media coverage or notable community commentary beyond the official advisory has been identified (Omni Advisory).

Additional resources


SourceThis report was generated using AI

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management