CVE-2026-61793
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:L/SI:N/SA:N
Summary
Nuxt OG Image generates OG Images with Vue templates in Nuxt. From 6.0.2 until 6.7.0, nuxt-og-image exposes the unauthenticated /_og/d/** route when the documented defaults security.strict = false and security.secret = "" are used, and base64url-decodes the fonts parameter through decodeOgImageParams. Attacker-controlled fonts[].path values flow through loadDefinedFonts into the font-assets/node.js binding, which performs a server-side fetch without validating the URL scheme, origin, resolved address, or redirects. This permits blind requests to loopback, private, link-local, cloud metadata, and other internal HTTP services, while differences in the outer response status and timing can reveal service reachability. Slow targets can also occupy OG image render workers for the configured fetch and render timeouts. This issue is fixed in version 6.7.0.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| nuxt-modules | og-image | >= 6.0.2, < 6.7.0 | affected |
Weaknesses
- CWE-20: CWE-20: Improper Input Validation
- CWE-441: CWE-441: Unintended Proxy or Intermediary ('Confused Deputy')
- CWE-749: CWE-749: Exposed Dangerous Method or Function
- CWE-918: CWE-918: Server-Side Request Forgery (SSRF)
- CWE-1188: CWE-1188: Insecure Default Initialization of Resource
ADP Enrichment
CISA ADP Vulnrichment
- SSVC:
- Exploitation: poc
- Automatable: yes
- Technical Impact: partial
Additional References
References
- https://github.com/nuxt-modules/og-image/security/advisories/GHSA-q8hw-4fvp-9rwv
- https://github.com/nuxt-modules/og-image/pull/637
- https://github.com/nuxt-modules/og-image/commit/243cac2228671d3711c2bd65e300c278fcdf5a4e
- https://github.com/nuxt-modules/og-image/releases/tag/v6.7.0
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.