PYSEC-2021-428

See a problem?
Import Source
https://github.com/pypa/advisory-database/blob/main/vulns/nbdime/PYSEC-2021-428.yaml
JSON Data
https://api.test.osv.dev/v1/vulns/PYSEC-2021-428
Aliases
Published
2021-11-03T18:15:00Z
Modified
2023-11-01T04:56:25.120284Z
Summary
[none]
Details

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.

References

Affected packages

PyPI / nbdime

Package

Affected ranges

Type
GIT
Repo
https://github.com/jupyter/nbdime
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed
Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
1.1.1
Introduced
2.0.0
Fixed
2.1.1
Introduced
3.0.0
Fixed
3.1.1

Affected versions

0.*

0.1.0.dev
0.1.0b1
0.1.0
0.1.1
0.1.2
0.2.0
0.3.0
0.4.0
0.4.1

1.*

1.0.0rc0
1.0.0rc1
1.0.0
1.0.1
1.0.2
1.0.3
1.0.4
1.0.5
1.0.6
1.0.7
1.1.0

2.*

2.0.0
2.1.0

3.*

3.0.0
3.1.0