CVE-2022-39278
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedIstio is an open platform-independent service mesh that provides traffic management, policy enforcement, and telemetry collection. Prior to versions 1.15.2, 1.14.5, and 1.13.9, the Istio control plane, istiod, is vulnerable to a request processing error, allowing a malicious attacker that sends a specially crafted or oversized message which results in the control plane crashing when the Kubernetes validating or mutating webhook service is exposed publicly. This endpoint is served over TLS port 15017, but does not require any authentication from the attacker. For simple installations, Istiod is typically only reachable from within the cluster, limiting the blast radius. However, for some deployments, especially external istiod topologies, this port is exposed over the public internet. Versions 1.15.2, 1.14.5, and 1.13.9 contain patches for this issue. There are no effective workarounds, beyond upgrading. This bug is due to an error in `regexp.Compile` in Go.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceIstio's istiod control plane contains a vulnerability in the regexp.Compile Go function. Attackers can send specially crafted or oversized messages to the Kubernetes validating/mutating webhook endpoint on TLS port 15017, causing istiod to crash. No authentication is required, though the endpoint is typically cluster-local.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data< 1.13.9>= 1.14.0, < 1.14.5>= 1.15.0, < 1.15.2CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- None
- Integrity
- None
- Availability
- High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify installed Istio versionRun 'kubectl get pods -n istio-system -l app=istiod -o jsonpath=\'{.items[*].spec.containers[*].image}\'' or check your Istio operator deployment versionAffected if The version is < 1.13.9, or >= 1.14.0 and < 1.14.5, or >= 1.15.0 and < 1.15.2
-
Confirm istiod webhook port exposureCheck if the istiod service on port 15017 is reachable from outside the cluster by reviewing NetworkPolicy, service type, or firewall rules. Run 'kubectl get svc istiod -n istio-system -o yaml' to see service configurationAffected if Port 15017 is exposed to untrusted networks beyond cluster-local traffic
-
Verify default istiod listener configurationBy default istiod listens on port 15017 for webhook traffic. Confirm istiod is running with 'kubectl get pods -n istio-system -l app=istiod'Affected if Istiod is running and the webhook endpoint is active on port 15017
You are affected if your Istio version falls within the vulnerable ranges AND the istiod webhook port 15017 is accessible beyond cluster-local boundaries.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scoped1.13.91.14.51.15.2
Upgrade Istio to version 1.15.2, 1.14.5, or 1.13.9 or later. There are no effective workarounds; exposure should be restricted to cluster-local traffic while planning the upgrade.
Upgrade to Istio 1.15.2 (or 1.14.5 or 1.13.9)
- Review Istio upgrade documentation at https://istio.io/latest/docs/setup/upgrade/
- Ensure you have a backup of your current Istio configuration
- Determine your current Istio version using `istioctl version`
- Upgrade Istio to version 1.15.2, 1.14.5, or 1.13.9 using `istioctl upgrade` or your preferred installation method
- Verify the upgrade was successful by checking `istioctl version` and confirming all pods are running
- Test your workloads to ensure traffic is flowing correctly
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation3.0 h
- Implementation3.0 h
- Testing3.0 h
- Review / QA2.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $3,120.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2022-39278 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2022-39278 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data