CVE-2021-41134
nbdime provides tools for diffing and merging of Jupyter Notebooks. In affected versions a stored cross-site scripting (XSS) issue exists within the Jupyter-owned nbdime project. It appears that when reading the file name and path from disk, the extension does not sanitize the string it constructs before returning it to be displayed. The diffNotebookCheckpoint function within nbdime causes this issue. When attempting to display the name of the local notebook (diffNotebookCheckpoint), nbdime appears to simply append .ipynb to the name of the input file. The NbdimeWidget is then created, and the base string is passed through to the request API function. From there, the frontend simply renders the HTML tag and anything along with it. Users are advised to patch to the most recent version of the affected product.
EPSS 0.70% · 53.3th percentile
Risk Scores
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| PyPI | nbdime | 2.0.0, 3.0.0, 0 |
| jupyter | nbdime-jupyterlab | 1.0.0, 2.0.0 |
| npm | nbdime-jupyterlab | 2.0.0, 0 |
| jupyter | nbdime | 1.0.0, 2.0.0, 3.0.0 |
| npm | nbdime | 6.0.0, 0 |
Timeline
- Nov 3, 2021 CVE Published
- Nov 4, 2021 EPSS Score
- Dec 31, 2021 EPSS Score
- Jan 6, 2022 EPSS Score
- Feb 26, 2022 EPSS Score
- Apr 1, 2022 EPSS Score
- Jun 19, 2022 EPSS Score
- Aug 16, 2022 EPSS Score
- Oct 12, 2022 EPSS Score
- Dec 8, 2022 EPSS Score
- Feb 2, 2023 EPSS Score
- Mar 7, 2023 EPSS Score
References
- https://github.com/jupyter/nbdime/commit/e44a5cc7677f24b45ebafc756db49058c2f750ea fix
- https://github.com/jupyter/nbdime/security/advisories/GHSA-p6rw-44q7-3fw4 url
- https://nvd.nist.gov/vuln/detail/CVE-2021-41134 advisory
- https://github.com/jupyter/nbdime package
- https://github.com/pypa/advisory-database/tree/main/vulns/nbdime/PYSEC-2021-428.yaml url