Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
🐹
🐹 Go
Not in CISA KEV
CRITICAL severity

CVE-2026-73842 — openchoreo

CRITICALFix: openchoreo/openchoreo@50fcae3

CVE-2026-73842 is a critical-severity (CVSS 9) Improper Privilege Management vulnerability in github.com/openchoreo/openchoreo. A fix is available for github.com/openchoreo/openchoreo — see the affected versions and patch details below.

OpenChoreo: cluster-gateway internal proxy performs no caller authentication and is not read-only — data-plane Secret disclosure and arbitrary Kubernetes mutation

Also known asGHSA-rh53-xvx2-j327GO-2026-6428
Published
Aug 13, 2026
Updated
Sep 27, 2026
Affected
3 pkgs
Patched
3 / 3
Exploits
None indexed
Exploitation data as of Sep 28, 2026 · OSV.dev, NVD, FIRST.org (EPSS)

Exploitation Status

No confirmed exploitation observed yet

  • A successful exploit gives an attacker total control of the affected component, not partial access.
  • CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.

Exploitation and automatability from CISA’s SSVC triage for CVE-2026-73842.

EPSS Exploitation Probability

via FIRST.org ↗
0.3%probability of exploitation in next 30 days
Lower Risk0.00%
Lower risk than most CVEs17th percentile — riskier than 17% of all scored CVEsHighest risk

Probability of exploitation in the next 30 days, from FIRST.org EPSS.

How urgent is this, really

CVE-2026-73842 by exploitation likelihood (EPSS) against impact (CVSS). Outside the shaded patch-first corner.

Where this sits among everything scored

Of 380,066 CVEs with a current EPSS score, this one falls in the < 10% band (highlighted). Counts from FIRST.org, log-scaled.

Real-World Exposure

3 pkgs affected
🐹github.com/openchoreo/openchoreo🐹github.com/openchoreo/openchoreo🐹github.com/openchoreo/openchoreo

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects Go packages — download data is not available via public APIs for these ecosystems.

Description

Summary

The OpenChoreo control-plane cluster-gateway exposes internal management APIs (/api/proxy/, /api/exec/, /api/wirelogs/) that tunnel requests through to connected data planes' Kubernetes APIs, but the internal listener authenticates no caller. Its request validator permits mutating HTTP methods and reads of Secrets in tenant namespaces (only kube-system Secrets are blocked), so although the client library documents these requests as "read-only," the server enforces no such restriction. Any party able to reach the internal listener can — with no client certificate or token — read Secrets in any tenant namespace, create/modify/delete workloads, and exec into pods across every connected data plane.

Impact

An attacker with network access to the cluster-gateway internal listener obtains tunneled access to every connected data plane's Kubernetes API with no caller-level access control. Across all connected data planes, this allows:

  • Secret disclosure — reading any Secret outside kube-system in any tenant namespace (database credentials, cloud/KMS keys, TLS private keys), independent of any workload ServiceAccount permissions.
  • Workload tampering or destruction — creating, modifying, or deleting Deployments, Services, and other resources.
  • Pod command execution inside workload pods via /api/exec/.

This is also the missing second authorization layer behind GHSA-52gf-6rpq-fgmx (the openchoreo-api exec/wirelogs cross-project authorization bypass): because the gateway provides no compensating authorization, that bypass — and any other authz gap or SSRF that reaches the internal API — reaches the data-plane Kubernetes API unchecked.

Direct exploitability depends on the network isolation of the internal listener, which is not fixed in source. Where the internal port is reachable by untrusted workloads with no restrictive NetworkPolicy — and with impact landing in a separate data-plane cluster — this is Critical; it is scored conservatively as High otherwise.

Patches

Fixed in 1.0.3, 1.1.3, and 1.2.0. Upgrade path: 1.1.x → 1.1.2, 1.0.x and earlier → 1.0.2, 1.2.0-rc1 line → 1.2.0.

Affected Packages

3 total 3 fixed
EcosystemPackageVulnerable rangeFix
🐹Gogithub.com/openchoreo/openchoreoall versions1.0.3go get github.com/openchoreo/openchoreo@v1.0.3
🐹Gogithub.com/openchoreo/openchoreo≥ 1.1.0&&< 1.1.31.1.3go get github.com/openchoreo/openchoreo@v1.1.3
🐹Gogithub.com/openchoreo/openchoreo≥ 1.2.0-rc.1&&< 1.2.01.2.0go get github.com/openchoreo/openchoreo@v1.2.0

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for github.com/openchoreo/openchoreo, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.

  2. Fix

    Update github.com/openchoreo/openchoreo to 1.0.3 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2026-73842 is resolved across your whole dependency graph.

  3. Workarounds

    Restrict outbound requests from the affected component to an allowlist of hosts, block access to link-local and internal address ranges at the network layer, and require authentication on internal services so a forged request cannot reach them unauthenticated.

Frequently Asked Questions

### Summary The OpenChoreo control-plane cluster-gateway exposes internal management APIs (`/api/proxy/`, `/api/exec/`, `/api/wirelogs/`) that tunnel requests through to connected data planes' Kubernetes APIs, but the internal listener authenticates no caller. Its request validator permits mutating HTTP methods and reads of Secrets in tenant namespaces (only kube-system Secrets are blocked), so although the client library documents these requests as "read-only," the server enforces no such restriction. Any party able to reach the internal listener can — with no client certificate or token — r
O3 Security · Impact-Aware SCA

Is CVE-2026-73842 in your dependencies?

Find it across Go, including transitive dependencies.

CVE-2026-73842: openchoreo SSRF (Critical 9) | O3 Security