<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://db.gcve.eu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Fri, 02 Oct 2026 23:40:40 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-97711</title>
      <link>https://db.gcve.eu/vuln/fkie_cve-2026-97711</link>
      <description>&lt;p&gt;Serialize JavaScript serializes JavaScript values to a superset of JSON that includes regular expressions and functions. From 7.1.1 until 7.1.2, function values serialized by serialize-javascript are not fully protected against script-closing tags in attacker-influenced function source because SCRIPT_CLOSE_REGEXP can consume a second closing tag inside one match. When the serialized function is embedded in a script element, the surviving closing tag terminates the element early and causes the remaining output to be parsed as HTML, enabling cross-site scripting in the page origin. Only function values are affected; ordinary data values and options.isJSON output are unaffected. This issue is fixed in version 7.1.2.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Serialize JavaScript serializes JavaScript values to a superset of JSON that includes regular expressions and functions. From 7.1.1 until 7.1.2, function values serialized by serialize-javascript are not fully protected against script-closing tags in attacker-influenced function source because SCRIPT_CLOSE_REGEXP can consume a second closing tag inside one match. When the serialized function is embedded in a script element, the surviving closing tag terminates the element early and causes the remaining output to be parsed as HTML, enabling cross-site scripting in the page origin. Only function values are affected; ordinary data values and options.isJSON output are unaffected. This issue is fixed in version 7.1.2.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/fkie_cve-2026-97711</guid>
    </item>
    <item>
      <title>GHSA-gfhx-hw2g-v5hg — Serialize JavaScript: Cross-site scripting (XSS) via unescaped &lt;/script&gt; in serialized function bodies</title>
      <link>https://db.gcve.eu/vuln/ghsa-gfhx-hw2g-v5hg</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: serialize-javascript&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;`serialize-javascript` escapes its output so it is safe to embed inside a
`&amp;lt;script&amp;gt;` element. In 7.1.1 that guarantee does not hold for **function
values**: a crafted function body can carry a literal, unescaped `&amp;lt;/script&amp;gt;`
into the output, terminating the script element early so the remainder is
parsed as HTML.&lt;/p&gt;
&lt;p&gt;`SCRIPT_CLOSE_REGEXP` used `&amp;lt;\/script[^&amp;gt;]*&amp;gt;` as its first alternative. The
character class excludes only `&amp;gt;`, so a single match could run from one
`&amp;lt;/script` all the way to the next `&amp;gt;` anywhere in the source — swallowing a
second, complete `&amp;lt;/script&amp;gt;` along the way. Only one replacement is emitted
per match, and the plain-code branch neutralizes just the leading `&amp;lt;`
(`&amp;#39;&amp;lt; &amp;#39; + match.slice(1)`), so the swallowed tag was re-emitted verbatim.&lt;/p&gt;
&lt;p&gt;Reaching that shape requires `&amp;lt;/script` in code position, which is legal
JavaScript: `x&amp;lt;/script=+/` parses as `x &amp;lt; /script=+/`, a comparison against a
regex literal.&lt;/p&gt;
&lt;p&gt;```js
const serialize = require(&amp;#39;serialize-javascript&amp;#39;);
const src = &amp;#34;function f(x){ return x&amp;lt;/script=+/ + &amp;#39;&amp;lt;/script&amp;gt;&amp;lt;img src=x onerror=alert(1)&amp;gt;&amp;#39; }&amp;#34;;
const out = serialize({ h: new Function(&amp;#39;return &amp;#39; + src)() });
// {&amp;#34;h&amp;#34;:function f(x){ return x&amp;lt; /script=+/ + &amp;#39;&amp;lt;/script&amp;gt;&amp;lt;img src=x onerror=alert(1)&amp;gt;&amp;#39; }}
```&lt;/p&gt;
&lt;p&gt;Embedded as the README documents (`&amp;lt;script&amp;gt;window.S = &amp;lt;%= serialize(state) %&amp;gt;&amp;lt;/script&amp;gt;`)
and parsed by Chromium, the script element ends at the injected tag and the
`&amp;lt;img&amp;gt;` becomes a live DOM node with its `onerror` handler executing in the
page origin.…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: serialize-javascript&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;`serialize-javascript` escapes its output so it is safe to embed inside a
`&amp;lt;script&amp;gt;` element. In 7.1.1 that guarantee does not hold for **function
values**: a crafted function body can carry a literal, unescaped `&amp;lt;/script&amp;gt;`
into the output, terminating the script element early so the remainder is
parsed as HTML.&lt;/p&gt;
&lt;p&gt;`SCRIPT_CLOSE_REGEXP` used `&amp;lt;\/script[^&amp;gt;]*&amp;gt;` as its first alternative. The
character class excludes only `&amp;gt;`, so a single match could run from one
`&amp;lt;/script` all the way to the next `&amp;gt;` anywhere in the source — swallowing a
second, complete `&amp;lt;/script&amp;gt;` along the way. Only one replacement is emitted
per match, and the plain-code branch neutralizes just the leading `&amp;lt;`
(`&amp;#39;&amp;lt; &amp;#39; + match.slice(1)`), so the swallowed tag was re-emitted verbatim.&lt;/p&gt;
&lt;p&gt;Reaching that shape requires `&amp;lt;/script` in code position, which is legal
JavaScript: `x&amp;lt;/script=+/` parses as `x &amp;lt; /script=+/`, a comparison against a
regex literal.&lt;/p&gt;
&lt;p&gt;```js
const serialize = require(&amp;#39;serialize-javascript&amp;#39;);
const src = &amp;#34;function f(x){ return x&amp;lt;/script=+/ + &amp;#39;&amp;lt;/script&amp;gt;&amp;lt;img src=x onerror=alert(1)&amp;gt;&amp;#39; }&amp;#34;;
const out = serialize({ h: new Function(&amp;#39;return &amp;#39; + src)() });
// {&amp;#34;h&amp;#34;:function f(x){ return x&amp;lt; /script=+/ + &amp;#39;&amp;lt;/script&amp;gt;&amp;lt;img src=x onerror=alert(1)&amp;gt;&amp;#39; }}
```&lt;/p&gt;
&lt;p&gt;Embedded as the README documents (`&amp;lt;script&amp;gt;window.S = &amp;lt;%= serialize(state) %&amp;gt;&amp;lt;/script&amp;gt;`)
and parsed by Chromium, the script element ends at the injected tag and the
`&amp;lt;img&amp;gt;` becomes a live DOM node with its `onerror` handler executing in the
page origin.…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/ghsa-gfhx-hw2g-v5hg</guid>
    </item>
    <item>
      <title>UBUNTU-CVE-2026-97711</title>
      <link>https://db.gcve.eu/vuln/ubuntu-cve-2026-97711</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Ubuntu:22.04:LTS: node-serialize-javascript, Ubuntu:24.04:LTS: node-serialize-javascript, Ubuntu:26.04:LTS: node-serialize-javascript&lt;/p&gt;
&lt;p&gt;Serialize JavaScript serializes JavaScript values to a superset of JSON that includes regular expressions and functions. From 7.1.1 until 7.1.2, function values serialized by serialize-javascript are not fully protected against script-closing tags in attacker-influenced function source because SCRIPT_CLOSE_REGEXP can consume a second closing tag inside one match. When the serialized function is embedded in a script element, the surviving closing tag terminates the element early and causes the remaining output to be parsed as HTML, enabling cross-site scripting in the page origin. Only function values are affected; ordinary data values and options.isJSON output are unaffected. This issue is fixed in version 7.1.2.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Ubuntu:22.04:LTS: node-serialize-javascript, Ubuntu:24.04:LTS: node-serialize-javascript, Ubuntu:26.04:LTS: node-serialize-javascript&lt;/p&gt;
&lt;p&gt;Serialize JavaScript serializes JavaScript values to a superset of JSON that includes regular expressions and functions. From 7.1.1 until 7.1.2, function values serialized by serialize-javascript are not fully protected against script-closing tags in attacker-influenced function source because SCRIPT_CLOSE_REGEXP can consume a second closing tag inside one match. When the serialized function is embedded in a script element, the surviving closing tag terminates the element early and causes the remaining output to be parsed as HTML, enabling cross-site scripting in the page origin. Only function values are affected; ordinary data values and options.isJSON output are unaffected. This issue is fixed in version 7.1.2.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/ubuntu-cve-2026-97711</guid>
    </item>
  </channel>
</rss>
