Skip to content
Heist/ feed
Back to feed
Low

Omni: Operator can traverse image-factory API paths via unsanitized `talos_version` in CreateSchematic

Type: advisorySources: OSV

Omni manages Kubernetes on bare metal, virtual machines, or in a cloud. Prior to 1.6.6 and 1.7.3, managementServer.CreateSchematic in internal/backend/grpc/schematics.go passes the caller-controlled TalosVersion field to imageFactoryClient.OverlaysVersions without validating it as a version. An authenticated Operator can submit traversal segments in TalosVersion, and url.URL.JoinPath normalizes them into unintended paths on the configured image-factory host. Omni then issues HTTP GET requests to those paths and reflects error-body content, enabling same-host endpoint probing and possible disclosure of internal diagnostics while preventing redirection to another host or write requests. This issue is fixed in versions 1.6.6 and 1.7.3.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-45723
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 17:18 UTC · Revision 1

Source evidence

Omni: Operator can traverse image-factory API paths via unsanitized `talos_version` in CreateSchematic

core-osv · Original source

Published 17 Sept 2026, 19:39 UTC

Omni manages Kubernetes on bare metal, virtual machines, or in a cloud. Prior to 1.6.6 and 1.7.3, managementServer.CreateSchematic in internal/backend/grpc/schematics.go passes the caller-controlled TalosVersion field to imageFactoryClient.OverlaysVersions without validating it as a version. An authenticated Operator can submit traversal segments in TalosVersion, and url.URL.JoinPath normalizes them into unintended paths on the configured image-factory host. Omni then issues HTTP GET requests to those paths and reflects error-body content, enabling same-host endpoint probing and possible disclosure of internal diagnostics while preventing redirection to another host or write requests. This issue is fixed in versions 1.6.6 and 1.7.3.

osv:CVE-2026-45723
Complete source record
{
  "id": "0af1ed861e8eb39ddda448d6320c75a5fe7b5933a256e8bb07eb24edda18f4a2",
  "url": "https://osv.dev/vulnerability/CVE-2026-45723",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Omni: Operator can traverse image-factory API paths via unsanitized `talos_version` in CreateSchematic",
    "summary": "Omni manages Kubernetes on bare metal, virtual machines, or in a cloud. Prior to 1.6.6 and 1.7.3, managementServer.CreateSchematic in internal/backend/grpc/schematics.go passes the caller-controlled TalosVersion field to imageFactoryClient.OverlaysVersions without validating it as a version. An authenticated Operator can submit traversal segments in TalosVersion, and url.URL.JoinPath normalizes them into unintended paths on the configured image-factory host. Omni then issues HTTP GET requests to those paths and reflects error-body content, enabling same-host endpoint probing and possible disclosure of internal diagnostics while preventing redirection to another host or write requests. This issue is fixed in versions 1.6.6 and 1.7.3.",
    "evidence": "osv:CVE-2026-45723",
    "products": [],
    "severity": "low",
    "structured": {
      "id": "CVE-2026-45723",
      "aliases": [
        "CVE-2026-45723",
        "GHSA-c66c-vq6w-fvh5",
        "GO-2026-5316"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/siderolabs/omni",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "9769f9442e302e000401e351ffd6d6fb3671a5bf"
                },
                {
                  "introduced": "5e912b14ddad86d13d9c004a9774a875e9cee108"
                },
                {
                  "fixed": "e70a16e4a226aa2f98643dbed6664edc1a5e90e7"
                },
                {
                  "fixed": "13c3f289789842e1fd954d98babb34b94eea1192"
                },
                {
                  "fixed": "3e69e80802624bf322f16aa499d5eafca16d0025"
                },
                {
                  "fixed": "9426c2cabccaa1d442bc8ebf28c16cae2d7c6ff7"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "1.6.6"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "introduced": "1.7.0"
                      },
                      {
                        "fixed": "1.7.3"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "13c3f289789842e1fd954d98babb34b94eea1192"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "3e69e80802624bf322f16aa499d5eafca16d0025"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "9426c2cabccaa1d442bc8ebf28c16cae2d7c6ff7"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "9769f9442e302e000401e351ffd6d6fb3671a5bf"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "v1.6.6"
                  },
                  {
                    "range": [
                      {
                        "fixed": "e70a16e4a226aa2f98643dbed6664edc1a5e90e7"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "v1.7.3"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v1.6.5",
            "client/v1.6.5",
            "v1.7.2",
            "client/v1.7.2",
            "v1.7.1",
            "client/v1.7.1",
            "v1.7.0",
            "client/v1.7.0",
            "v1.7.0-beta.0",
            "client/v1.7.0-beta.0",
            "v1.6.4",
            "client/v1.6.4",
            "v1.6.3",
            "client/v1.6.3",
            "v1.6.2",
            "client/v1.6.2",
            "v1.6.1",
            "client/v1.6.1",
            "v1.6.0",
            "client/v1.6.0",
            "v1.6.0-beta.3",
            "client/v1.6.0-beta.3",
            "v1.6.0-beta.2",
            "client/v1.6.0-beta.2",
            "v1.6.0-beta.1",
            "client/v1.6.0-beta.1",
            "v1.6.0-beta.0",
            "client/v1.6.0-beta.0",
            "v1.5.0-beta.2",
            "client/v1.5.0-beta.2",
            "v1.5.0-beta.1",
            "client/v1.5.0-beta.1",
            "v1.5.0-beta.0",
            "v1.4.0-beta.1",
            "client/v1.4.0-beta.1",
            "v1.4.0-beta.0",
            "client/v1.4.0-beta.0",
            "v1.3.0-beta.1",
            "client/v1.3.0-beta.1",
            "v1.2.0-beta.3",
            "client/v1.2.0-beta.3",
            "v1.2.0-beta.2",
            "client/v1.2.0-beta.2",
            "v1.2.0-beta.1",
            "client/v1.2.0-beta.1",
            "v1.2.0-beta.0",
            "client/v1.2.0-beta.0",
            "v1.1.0-beta.0",
            "v1.0.0-beta.1",
            "v1.0.0-beta.0",
            "v0.52.0-beta.0",
            "v0.51.0-beta.2",
            "v0.51.0-beta.1",
            "client/v0.51.0-beta.1",
            "v0.51.0-beta.0",
            "client/v0.51.0-beta.0",
            "v0.50.0-beta.0",
            "v0.49.0-beta.0",
            "v0.48.0-beta.0",
            "client/v0.48.0-beta.0",
            "v0.47.0-beta.1",
            "v0.47.0-beta.0",
            "v0.46.0-beta.0",
            "v0.45.0-beta.0",
            "v0.44.0-beta.0",
            "v0.43.0",
            "v0.43.0-beta.0",
            "v0.42.0-beta.0",
            "v0.41.0-beta.0",
            "v0.40.0-beta.0",
            "v0.39.0-beta.0",
            "v0.38.0-beta.0",
            "v0.37.0-beta.0",
            "v0.36.0-beta.0",
            "v0.35.0-beta.0",
            "v0.34.0-beta.0",
            "v0.33.0-beta.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-45723.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:37.966719981Z",
      "provider": "osv",
      "references": [
        "https://github.com/siderolabs/omni/releases/tag/v1.6.6",
        "https://github.com/siderolabs/omni/releases/tag/v1.7.3",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45723.json",
        "https://github.com/siderolabs/omni/security/advisories/GHSA-c66c-vq6w-fvh5",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-45723",
        "https://github.com/siderolabs/omni/commit/13c3f289789842e1fd954d98babb34b94eea1192",
        "https://github.com/siderolabs/omni/commit/3e69e80802624bf322f16aa499d5eafca16d0025",
        "https://github.com/siderolabs/omni/commit/9426c2cabccaa1d442bc8ebf28c16cae2d7c6ff7",
        "https://github.com/siderolabs/omni/pull/2817"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-20",
          "CWE-209",
          "CWE-22",
          "CWE-441",
          "CWE-918"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45723.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-45723",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 505247,
  "published_at": "2026-09-17T19:39:28.303+00:00"
}