Live Exposure Defense: From CVE to Confirmed Exposure in 12 Hours – See more

New CVE Detected

CVE-2026-93450 – Denial of Service (Stack Overflow) – go-openapi/swag jsonutils < 0.27.1

Be the first to know when new zero-days emerge:

Summary

CVE-2026-93450 is an uncontrolled recursion (CWE-674) vulnerability in the jsonutils module of go-openapi/swag, a widely used Go library that underpins OpenAPI/Swagger tooling and is pulled in transitively by many API frameworks and code generators. Versions prior to 0.27.1 lack any recursion depth limit when parsing or serializing "ordered" JSON structures, allowing a remote, unauthenticated attacker to crash any service that processes attacker-supplied JSON or OpenAPI/Swagger documents through the affected functions. The issue is rated HIGH severity (CVSS 8.7).

Technical details

  • Root cause: go-openapi/swag‘s custom JSON lexer/parser used for ordered JSON (JSONMapSlice) recurses once per nesting level with no maximum-depth check, unlike Go’s standard encoding/json package, which has enforced nesting limits since Go 1.15.
  • Trigger conditions: Submitting a deeply nested JSON document (a proof-of-concept of roughly 6 MB with excessive nesting has been demonstrated) to any code path that calls the vulnerable functions: jsonutils.ReadJSON, JSONMapSlice.UnmarshalJSON (unmarshaling), jsonutils.WriteJSON, JSONMapSlice.MarshalJSON (marshaling), and transitively loading.YAMLDoc/loading.JSONDoc.
  • Attack vector: Network — no authentication or user interaction required. Any HTTP endpoint, API gateway, or tool that ingests untrusted JSON or OpenAPI/Swagger specifications via go-openapi/swag is reachable.
  • Impact: The Go runtime raises a fatal error: stack overflow, which cannot be recovered from within the process — it terminates the entire application, not just the handling goroutine, resulting in a full denial of service for the affected service.

Affected software

  • github.com/go-openapi/swag (module path github.com/go-openapi/swag/jsonutils) — all versions before 0.27.1
  • Any downstream project that vendors or depends on the vulnerable swag jsonutils code path (e.g., OpenAPI/Swagger spec loaders, kube-openapi, and other consumers of go-openapi/swag) inherits the exposure until they update their dependency

Severity

  • CVSS Score: 8.7 (HIGH)
  • CVSS v4.0 Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
  • (A CVSS v3.1 rating of 7.5, vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, has also been published for this issue)

Mitigation and recommended actions

  • Immediate: Upgrade go-openapi/swag to version 0.27.1 or later, which introduces recursion depth limiting for ordered JSON parsing/serialization. Also update any dependency (such as kube-openapi or other OpenAPI tooling) that vendors the vulnerable jsonutils code so the fixed version is actually pulled in.
  • If immediate patching is not possible:
    • Place a request-size limit and a WAF/reverse-proxy rule in front of any endpoint that accepts JSON or OpenAPI/Swagger documents to reject unusually large or deeply nested payloads before they reach the application.
    • Run services that parse untrusted OpenAPI specs or JSON with constrained goroutine/process isolation (e.g., separate worker processes) so a stack-overflow crash does not take down the entire application.
    • Audit dependency trees for indirect use of go-openapi/swag‘s jsonutils package and prioritize upgrading any transitive dependency that exposes attacker-controlled JSON to it.

References

Are you exposed?

Get a free report of your organization’s exposure to this CVE and threat

How IONIX’s External Exposure Management Platform Detects and Validates
Zero-Days to Shrink MTTR

1

Map your entire attack surface (continously)

IONIX uses multi-factor discovery methods, including DNS analysis, certificate mapping, metadata inspection, and more, to automatically map every internet-facing asset across your environment. This includes cloud instances, third-party platforms, shadow IT, and even forgotten infrastructure that traditional tools miss.

2

Monitor for new CVEs

Dozens of threat intel feeds using agentic technology are continuously analyzed to detect the appearance of proof-of-concept code, exploit kits, and indicators of active targeting. IONIX goes further by applying AI to proactively evaluate whether emerging vulnerabilities are likely to be exploited, even before PoCs go public.

3

Identify Potential External Exposures

Not all CVEs matter. IONIX filters vulnerabilities by asking attacker-centric questions: Can it be reached from the internet? Does it require authentication? Is it being exploited in the wild? This dramatically reduces noise and focuses teams on threats that can actually be weaponized.

4

Create Safe, Scalable Exploit Validations

IONIX transforms real-world PoCs into safe, non-intrusive test payloads that can be run in production environments without disruption. These simulations are precisely targeted to the systems that are vulnerable, ensuring rapid validation without unnecessary load.

5

Execute Exploit Validations

By combining context about software stack, versioning, exposure status, and reachability, IONIX ensures that only the right payloads are executed against the right assets, maximizing efficiency and minimizing risk.

6

Drive Fast and Actionable Remediation

Results are routed through integrations with ticketing, SOAR, and SIEM tools. Issues are written in plain language, bundled into remediation clusters, and prioritized based on asset criticality, exploitability, and blast radius. This shortens mean time to remediation (MTTR) and empowers teams to act with confidence.

Are you exposed?

Get a free report of your organization’s exposure to this CVE and threat

Subscribe to Threat Center RSS

Copy/paste the link below into your preferred RSS reader or follow these instructions to subscribe to Slack alerts.

Get Real-Time CVE Alerts to Your Email

Be the first to know when new zero-days emerge