CVE-2026-46396 HAX CMS has a stored XSS via <iframe> that allows access to sensitive client-side data and account takeover
Attackers can inject malicious JavaScript via iframe src attributes in HAX CMS, leading to arbitrary code execution and account takeover.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2026-46396?
CVE-2026-46396 is a critical cross-site scripting vulnerability in haxtheweb haxcms-nodejs, published on 5 Jun 2026. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.
Official description
HAX CMS helps manage microsite universe with PHP or NodeJs backends. A stored cross-site scripting (XSS) vulnerability exists in versions prior to 26.0.0 due to improper sanitization of `<iframe>` elements. The application allows `javascript:` URIs in the `src` attribute, which are executed when a malicious page is viewed. This enables attackers to execute arbitrary JavaScript in the context of the victim’s browser and access sensitive data exposed to client-side scripts. Version 26.0.0 fixes the issue.
Weakness: CWE-79
Which versions are affected by CVE-2026-46396?
6 open source packages ship an affected version, including @haxtheweb/haxcms-nodejs, @haxtheweb/iframe-loader and @haxtheweb/video-player.
| Package | Affected | Fixed in |
|---|---|---|
@haxtheweb/haxcms-nodejs npm | All versions | 26.0.0 |
@haxtheweb/haxcms-nodejs npm | All versions | 26.0.0 |
@haxtheweb/iframe-loader npm | All versions | 26.0.0 |
@haxtheweb/iframe-loader npm | All versions | 26.0.0 |
@haxtheweb/video-player npm | All versions | 26.0.0 |
@haxtheweb/video-player npm | All versions | 26.0.0 |
How do I fix CVE-2026-46396?
Upgrade @haxtheweb/haxcms-nodejs to 26.0.0 or later.
Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.
Is CVE-2026-46396 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-46396 exists.
Sources
Also known as GHSA-jh3h-rpxg-fr36.