ETK-2026-3115Zero's internal tracking ID, independent of the CVE number.
waiting for further signalsZero needs more public information before it can validate it.description
Server deployments of @nuxt/image that use the IPX provider may expose the unauthenticated /_ipx image transformation route. An attacker able to supply an image source processed by that route may crash the server and could potentially execute code with the server process's privileges.
mitigation
Upgrade @nuxt/image to 2.2.1 or 1.11.2 and verify that IPX resolves to a patched release. Until upgraded, block or replace the /_ipx route if it is not needed, and prevent untrusted image bytes from being accepted as IPX sources.
fixed in 2.2.1, 1.11.2
outcome
Contextual, not validated: no deterministic check could cover this one, and no technique passed our review.
source signals
Public signals that triggered or updated the pipeline. These are inputs for the deltas above.
- 2026-10-30 17:07Zghsa: trigger signal, started the run
this entry in the feed
GET /api/v1/feed/ETK-2026-3115
{ "etk_id": "ETK-2026-3115", "cve_id": null, "display_id": "ETK-2026-3115", "ghsa_id": "GHSA-p5vf-pjf5-ggj3", "euvd_id": null, "status": "published", "anchor_state": "awaiting_cve", "title": "Unauthenticated memory corruption in @nuxt/image IPX route", "summary": "Server deployments of @nuxt/image that use the IPX provider may expose the unauthenticated /_ipx image transformation route. An attacker able to supply an image source processed by that route may crash the server and could potentially execute code with the server process's privileges.", "mitigation": "Upgrade @nuxt/image to 2.2.1 or 1.11.2 and verify that IPX resolves to a patched release. Until upgraded, block or replace the /_ipx route if it is not needed, and prevent untrusted image bytes from being accepted as IPX sources.", "vendor": "npm", "product": "npm:@nuxt/image", "affected": [ { "affected_notes": [], "affected_ranges": [ ">= 2.0.0, < 2.2.1" ], "ecosystem": "npm", "fixed_versions": [ "2.2.1" ], "package_name": "@nuxt/image", "purl": "pkg:npm/@nuxt/image" }, { "affected_notes": [], "affected_ranges": [ ">= 1.0.0, < 1.11.2" ], "ecosystem": "npm", "fixed_versions": [ "1.11.2" ], "package_name": "@nuxt/image", "purl": "pkg:npm/@nuxt/image" }, { "affected_notes": [], "affected_ranges": [ ">= 0.6.0, < 1.0.0" ], "ecosystem": "npm", "fixed_versions": [], "package_name": "@nuxt/image", "purl": "pkg:npm/@nuxt/image" } ], "cwes": [ 20 ], "cvss_score": 8.1, "cvss_src": "cna_vendor", "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H", "epss_score": null, "epss_percentile": null, "epss_asof": null, "automation": "contextual", "check": false, "check_confidence_basis": null, "exploit": false, "pipeline_minutes": 33.22515381666667, "t0_at": null, "signals": { "trigger_signal": { "at": "2026-10-30T17:07:36+00:00", "days": -0.3607636507060185, "is_lower_bound": true, "measured_at": "2026-10-31T01:47:06.009177+00:00", "url": "https://github.com/nuxt/image/security/advisories/GHSA-p5vf-pjf5-ggj3" } } }
published 2026-10-30 21:02Z
last change 2026-10-31 01:27Z
Need the technical details behind an entry?
Every entry here shows what we attempted and when. The technical details, the generated exploit that fired it and the evidence behind the verdict are not public. Tell us about your use case and we’ll get back to you about extended API access.