<?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://db.gcve.eu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-01T17:55:41.428884+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@gcve.eu</email>
  </author>
  <link href="https://db.gcve.eu" 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://db.gcve.eu/vuln/fkie_cve-2026-102830</id>
    <title>fkie_cve-2026-102830</title>
    <updated>2026-10-01T17:55:41.466049+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>JupyterLab is an extensible environment for interactive and reproducible computing, based on the Jupyter Notebook Architecture. From JupyterLab 3.0.0 until 4.5.11 and 4.6.4, and in JupyterLite Core 0.8.3 and earlier, the Plural-Forms header in a selected third-party language pack can append JavaScript after a valid plural rule because prefix-only regular-expression validation accepts a matching prefix without requiring the entire header to match. JupyterLab passes the accepted expression to new Function, so loading the catalogue and translating a plural string executes the appended code in the authenticated JupyterLab origin. Where Jupyter Server kernels, terminals, and APIs are exposed, the code can use authenticated server APIs to read or modify files and run code. Impact is much more limited in JupyterLite because it typically lacks most exposed Jupyter Server surfaces. The default English locale is unaffected because it does not load a translation catalogue. This issue is fixed in JupyterLab 4.5.11 and 4.6.4 and JupyterLite Core 0.8.4.</p>
      </div>
    </content>
    <link href="https://db.gcve.eu/vuln/fkie_cve-2026-102830"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/ghsa-3jqq-pw4j-pqcj</id>
    <title>GHSA-3jqq-pw4j-pqcj — JupyterLab: Cross-site scripting (XSS) in JupyterLab via crafted language package (jupyterlab.json)</title>
    <updated>2026-10-01T17:55:41.466150+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: jupyterlab, PyPI: jupyterlite-core</p>
<p>## Description</p>
<p>A language pack ships a `Plural-Forms` header saying how the language counts, for example `nplurals=2; plural=(n != 1);`. JupyterLab turns that string into a function with `new Function`, so the header gets executed. The check that meant to keep it safe was a regular expression. The regex was anchored at the start but not at the end, so it accepted any string that began with a valid plural rule and ignored everything after it.</p>
<p>A header such as the following passed the check, and the part after the plural rule ran in the JupyterLab page as soon as the first plural string was translated:</p>
<p>```
nplurals=2; plural=(n &gt; 1); &lt;anything here ran as JavaScript&gt;
```</p>
<p>Users are affected if all of the following are true:</p>
<p>- they run JupyterLab 3.0.0 through 4.6.3, or an application that bundles it such as Notebook 7;
- a language pack they did not write is installed in the environment; and
- that language is selected, so its catalogue is loaded</p>
<p>An installation using the default English locale loads no catalogue and is not affected.</p>
<p>&gt; CVE assignment pending, GitHub CNA is experiencing severe backlog</p>
<p>### Impact</p>
<p>The code in the header ran in the JupyterLab page, in the same origin and session as the authenticated user. It could call the Jupyter Server REST API as that user: read and write any file under the server root, start a kernel and run code in it, and open a terminal where terminals are enabled. Nothing had to be clicked; translating one plural string was enough,…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/ghsa-3jqq-pw4j-pqcj"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/pysec-2026-4056</id>
    <title>PYSEC-2026-4056 — JupyterLab: Cross-site scripting (XSS) in JupyterLab via crafted language package (jupyterlab.json)</title>
    <updated>2026-10-01T17:55:41.466263+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: jupyterlab</p>
<p>## Description</p>
<p>A language pack ships a `Plural-Forms` header saying how the language counts, for example `nplurals=2; plural=(n != 1);`. JupyterLab turns that string into a function with `new Function`, so the header gets executed. The check that meant to keep it safe was a regular expression. The regex was anchored at the start but not at the end, so it accepted any string that began with a valid plural rule and ignored everything after it.</p>
<p>A header such as the following passed the check, and the part after the plural rule ran in the JupyterLab page as soon as the first plural string was translated:</p>
<p>```
nplurals=2; plural=(n &gt; 1); &lt;anything here ran as JavaScript&gt;
```</p>
<p>Users are affected if all of the following are true:</p>
<p>- they run JupyterLab 3.0.0 through 4.6.3, or an application that bundles it such as Notebook 7;
- a language pack they did not write is installed in the environment; and
- that language is selected, so its catalogue is loaded</p>
<p>An installation using the default English locale loads no catalogue and is not affected.</p>
<p>&gt; CVE assignment pending, GitHub CNA is experiencing severe backlog</p>
<p>### Impact</p>
<p>The code in the header ran in the JupyterLab page, in the same origin and session as the authenticated user. It could call the Jupyter Server REST API as that user: read and write any file under the server root, start a kernel and run code in it, and open a terminal where terminals are enabled. Nothing had to be clicked; translating one plural string was enough,…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/pysec-2026-4056"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/ubuntu-cve-2026-102830</id>
    <title>UBUNTU-CVE-2026-102830</title>
    <updated>2026-10-01T17:55:41.466337+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Ubuntu:26.04:LTS: jupyterlab</p>
<p>JupyterLab is an extensible environment for interactive and reproducible computing, based on the Jupyter Notebook Architecture. From JupyterLab 3.0.0 until 4.5.11 and 4.6.4, and in JupyterLite Core 0.8.3 and earlier, the Plural-Forms header in a selected third-party language pack can append JavaScript after a valid plural rule because prefix-only regular-expression validation accepts a matching prefix without requiring the entire header to match. JupyterLab passes the accepted expression to new Function, so loading the catalogue and translating a plural string executes the appended code in the authenticated JupyterLab origin. Where Jupyter Server kernels, terminals, and APIs are exposed, the code can use authenticated server APIs to read or modify files and run code. Impact is much more limited in JupyterLite because it typically lacks most exposed Jupyter Server surfaces. The default English locale is unaffected because it does not load a translation catalogue. This issue is fixed in JupyterLab 4.5.11 and 4.6.4 and JupyterLite Core 0.8.4.</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/ubuntu-cve-2026-102830"/>
  </entry>
</feed>
