Cross-site scripting in netlify-ipx
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- Low · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-79.
Summary
netlify-ipx is an on-Demand image optimization for Netlify using ipx. In versions prior to 1.2.3, an attacker can bypass the source image domain allowlist by sending specially crafted headers, causing the handler to load and return arbitrary images. Because the response is cached globally, this image will then be served to visitors without requiring those headers to be set. XSS can be achieved by requesting a malicious SVG with embedded scripts, which would then be served from the site domain. Note that this does not apply to images loaded in `<img>` tags, as scripts do not execute in this context. The image URL can be set in the header independently of the request URL, meaning any site images that have not previously been cached can have their cache poisoned. This problem has been fixed in version 1.2.3. As a workaround, cached content can be cleared by re-deploying the site.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| netlify | netlify-ipx | before 1.2.3 | 1.2.3 | Patch available | CNA |
| — | @netlify/ipx (npm) | before 1.2.3 | 1.2.3 | Patch available | GHSA-9jjv-524m-jm98 |
- netlify-ipx Vendornetlify Affected before 1.2.3 Fixed in 1.2.3 Patch available CNA
- @netlify/ipx (npm) Vendor— Affected before 1.2.3 Fixed in 1.2.3 Patch available GHSA-9jjv-524m-jm98
Remediation
- Fix · CNA netlify-ipx (netlify) Fixed in 1.2.3
- Fix · GHSA-9jjv-524m-jm98 @netlify/ipx (npm) Fixed in 1.2.3 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2022-39239
- 2026-10-03 Alias added: GHSA-9jjv-524m-jm98
References
Advisory 2
More netlify vulnerabilities
- TI-2021-02454 An incorrect access control flaw was found in the kiali-operator in versions before… CVSS 3.1HIGH 8.8
Sources
- CVE-2022-39239 · CVE Program
- CVE-2022-39239 · NVD
- FIRST EPSS
- GHSA-9jjv-524m-jm98 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences