<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://cve.radiocsirt.org/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-15T15:27:34.579609+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>csirt@opendfir.org</email>
  </author>
  <link href="https://cve.radiocsirt.org" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/euvd-2026-337327</id>
    <title>EUVD-2026-337327</title>
    <updated>2026-10-15T15:27:34.637419+00:00</updated>
    <content>EUVD-2026-337327</content>
    <link href="https://cve.radiocsirt.org/vuln/euvd-2026-337327"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/fkie_cve-2026-33943</id>
    <title>fkie_cve-2026-33943</title>
    <updated>2026-10-15T15:27:34.637461+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. In versions 15.10.0 through 20.8.7, a code injection vulnerability in `ECMAScriptModuleCompiler` allows an attacker to achieve Remote Code Execution (RCE) by injecting arbitrary JavaScript expressions inside `export { }` declarations in ES module scripts processed by happy-dom. The compiler directly interpolates unsanitized content into generated code as an executable expression, and the quote filter does not strip backticks, allowing template literal-based payloads to bypass sanitization. Version 20.8.8 fixes the issue.</p>
      </div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/fkie_cve-2026-33943"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-6q6h-j7hj-3r64</id>
    <title>GHSA-6q6h-j7hj-3r64 — Happy DOM ECMAScriptModuleCompiler: unsanitized export names are interpolated as executable code</title>
    <updated>2026-10-15T15:27:34.637507+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> npm: happy-dom</p>
<p>### Summary</p>
<p>A code injection vulnerability in `ECMAScriptModuleCompiler` allows an attacker to achieve Remote Code Execution (RCE) by injecting arbitrary JavaScript expressions inside `export { }` declarations in ES module scripts processed by happy-dom. The compiler directly interpolates unsanitized content into generated code as an executable expression, and the quote filter does not strip backticks, allowing template literal-based payloads to bypass sanitization.</p>
<p>### Details</p>
<p>**Vulnerable file**: `packages/happy-dom/src/module/ECMAScriptModuleCompiler.ts`, lines 371-385</p>
<p>The "Export object" handler extracts content from `export { ... }` using the regex `export\s*{([^}]+)}`, then generates executable code by directly interpolating it:</p>
<p>} else if (match[16] &amp;&amp; isTopLevel &amp;&amp; PRECEDING_STATEMENT_TOKEN_REGEXP.test(precedingToken)) {
        // Export object
        const parts = this.removeMultilineComments(match[16]).split(/\s*,\s*/);
        const exportCode: string[] = [];
        for (const part of parts) {
            const nameParts = part.trim().split(/\s+as\s+/);
            const exportName = (nameParts[1] || nameParts[0]).replace(/["']/g, '');
            const importName = nameParts[0].replace(/["']/g, '');  // backticks NOT stripped
            if (exportName &amp;&amp; importName) {
                exportCode.push(`$happy_dom.exports['${exportName}'] = ${importName}`);
                //               importName is inserted as executable code, not as a string…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-6q6h-j7hj-3r64"/>
  </entry>
</feed>
