← Back to CVE Explorer

CVE-2026-113727

Full vulnerability record from the local CVENow database.

Description

OpenChoreo is a developer platform for Kubernetes. From 1.0.0 until 1.0.6, 1.1.7, and 1.2.5, the PUT .../workflowruns/{runName} update route authorizes a request using the openchoreo.dev/project and openchoreo.dev/component labels in the submitted body while selecting the stored WorkflowRun by the URL path. An authenticated caller with workflowrun:update for one project or component in the same namespace can name another run in the path, submit ownership labels for a scope they control, and rewrite the victim run's ownership labels. Subsequent authorization then treats the attacker as authorized to read build logs and Kubernetes events, delete the run, modify pending spec.workflow.parameters, or place the run into a permanent ComponentValidationFailed state. The namespace comes from the URL, so the issue is cross-project or cross-component within one namespace and is not anonymously reachable or cross-tenant. This issue is fixed in 1.0.6, 1.1.7, and 1.2.5.

Severity
HIGH
CVSS score
7.4 (v3.1)
Vulnerability status
Awaiting Analysis
Source identifier
Published
2026-10-20 22:19:29.570000
Last modified
2026-10-23 03:16:31.367000
View original CVE JSON
{
  "id": "CVE-2026-113727",
  "sourceIdentifier": "[email protected]",
  "published": "2026-10-20T22:19:29.570",
  "lastModified": "2026-10-23T03:16:31.367",
  "vulnStatus": "Awaiting Analysis",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "OpenChoreo is a developer platform for Kubernetes. From 1.0.0 until 1.0.6, 1.1.7, and 1.2.5, the PUT .../workflowruns/{runName} update route authorizes a request using the openchoreo.dev/project and openchoreo.dev/component labels in the submitted body while selecting the stored WorkflowRun by the URL path. An authenticated caller with workflowrun:update for one project or component in the same namespace can name another run in the path, submit ownership labels for a scope they control, and rewrite the victim run's ownership labels. Subsequent authorization then treats the attacker as authorized to read build logs and Kubernetes events, delete the run, modify pending spec.workflow.parameters, or place the run into a permanent ComponentValidationFailed state. The namespace comes from the URL, so the issue is cross-project or cross-component within one namespace and is not anonymously reachable or cross-tenant. This issue is fixed in 1.0.6, 1.1.7, and 1.2.5."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "openchoreo",
          "product": "openchoreo",
          "versions": [
            {
              "version": ">= 1.0.0, < 1.0.6",
              "status": "affected"
            },
            {
              "version": ">= 1.1.0, < 1.1.7",
              "status": "affected"
            },
            {
              "version": ">= 1.2.0, < 1.2.5",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L",
          "baseScore": 7.4,
          "baseSeverity": "HIGH",
          "attackVector": "NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "LOW",
          "userInteraction": "NONE",
          "scope": "CHANGED",
          "confidentialityImpact": "LOW",
          "integrityImpact": "LOW",
          "availabilityImpact": "LOW"
        },
        "exploitabilityScore": 3.1,
        "impactScore": 3.7
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-10-23T02:10:51.680790Z",
          "id": "CVE-2026-113727",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "partial"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-639"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/openchoreo/openchoreo/commit/0e311468bb704b0dce7753b89c9d0204009285ca",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/commit/477031c6fece0666f144942fb02c0b579dacc0bb",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/commit/91e1e868eb8e0e67274109018d00a767b22eda14",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/commit/d5ed0ef62d9c9af7b05a72aed2bcbc0ac9d45426",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/pull/4596",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/pull/4618",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/pull/4626",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/pull/4627",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/releases/tag/v1.0.6",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/releases/tag/v1.1.7",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/releases/tag/v1.2.5",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/openchoreo/openchoreo/security/advisories/GHSA-46r4-q7wv-32fc",
      "source": "[email protected]"
    }
  ]
}