{"api_version":"1","generated_at":"2026-04-27T04:49:44+00:00","cve":"CVE-2021-32797","urls":{"html":"https://cve.report/CVE-2021-32797","api":"https://cve.report/api/cve/CVE-2021-32797.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2021-32797","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2021-32797"},"summary":{"title":"CVE-2021-32797","description":"JupyterLab is a user interface for Project Jupyter which will eventually replace the classic Jupyter Notebook. In affected versions untrusted notebook can execute code on load. In particular JupyterLab doesn’t sanitize the action attribute of html `<form>`. Using this it is possible to trigger the form validation outside of the form itself. This is a remote code execution, but requires user action to open a notebook.","state":"PUBLIC","assigner":"security-advisories@github.com","published_at":"2021-08-09 21:15:00","updated_at":"2022-04-07 18:40:00"},"problem_types":["CWE-79"],"metrics":[],"references":[{"url":"https://github.com/jupyterlab/jupyterlab/security/advisories/GHSA-4952-p58q-6crx","name":"https://github.com/jupyterlab/jupyterlab/security/advisories/GHSA-4952-p58q-6crx","refsource":"CONFIRM","tags":[],"title":"JupyterLab: XSS due to lack of sanitization of the action attribute of an HTML form · Advisory · jupyterlab/jupyterlab · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"404"},{"url":"https://github.com/jupyterlab/jupyterlab/commit/504825938c0abfa2fb8ff8d529308830a5ae42ed","name":"https://github.com/jupyterlab/jupyterlab/commit/504825938c0abfa2fb8ff8d529308830a5ae42ed","refsource":"MISC","tags":[],"title":"Merge pull request from GHSA-4952-p58q-6crx · jupyterlab/jupyterlab@5048259 · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"404"},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-32797","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-32797","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2021","cve_id":"32797","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"jupyter","cpe5":"jupyterlab","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2021","cve_id":"32797","vulnerable":"1","versionEndIncluding":"","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"jupyter","cpe5":"jupyterlab","cpe6":"-","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[{"cve":"CVE-2021-32797","qid":"980395","title":"Python (pip) Security Update for notebook (GHSA-4952-p58q-6crx)"}]},"source_records":{"cve_program":{"CVE_data_meta":{"ASSIGNER":"security-advisories@github.com","ID":"CVE-2021-32797","STATE":"PUBLIC","TITLE":"JupyterLab: XSS due to lack of sanitization of the action attribute of an html <form>"},"affects":{"vendor":{"vendor_data":[{"product":{"product_data":[{"product_name":"jupyterlab","version":{"version_data":[{"version_value":">= 3.1.0, < 3.1.4"},{"version_value":">= 3.0.0, < 3.0.17"},{"version_value":">= 2.3.0, < 2.3.2"},{"version_value":">= 2.0.0, < 2.2.10"},{"version_value":"< 1.2.1"}]}}]},"vendor_name":"jupyterlab"}]}},"data_format":"MITRE","data_type":"CVE","data_version":"4.0","description":{"description_data":[{"lang":"eng","value":"JupyterLab is a user interface for Project Jupyter which will eventually replace the classic Jupyter Notebook. In affected versions untrusted notebook can execute code on load. In particular JupyterLab doesn’t sanitize the action attribute of html `<form>`. Using this it is possible to trigger the form validation outside of the form itself. This is a remote code execution, but requires user action to open a notebook."}]},"impact":{"cvss":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":7.4,"baseSeverity":"HIGH","confidentialityImpact":"HIGH","integrityImpact":"NONE","privilegesRequired":"NONE","scope":"CHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N","version":"3.1"}},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')"}]}]},"references":{"reference_data":[{"name":"https://github.com/jupyterlab/jupyterlab/security/advisories/GHSA-4952-p58q-6crx","refsource":"CONFIRM","url":"https://github.com/jupyterlab/jupyterlab/security/advisories/GHSA-4952-p58q-6crx"},{"name":"https://github.com/jupyterlab/jupyterlab/commit/504825938c0abfa2fb8ff8d529308830a5ae42ed","refsource":"MISC","url":"https://github.com/jupyterlab/jupyterlab/commit/504825938c0abfa2fb8ff8d529308830a5ae42ed"}]},"source":{"advisory":"GHSA-4952-p58q-6crx","discovery":"UNKNOWN"}},"nvd":{"publishedDate":"2021-08-09 21:15:00","lastModifiedDate":"2022-04-07 18:40:00","problem_types":["CWE-79"],"metrics":{"baseMetricV3":{"cvssV3":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"REQUIRED","scope":"CHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH","baseScore":9.6,"baseSeverity":"CRITICAL"},"exploitabilityScore":2.8,"impactScore":6},"baseMetricV2":{"cvssV2":{"version":"2.0","vectorString":"AV:N/AC:M/Au:N/C:P/I:P/A:P","accessVector":"NETWORK","accessComplexity":"MEDIUM","authentication":"NONE","confidentialityImpact":"PARTIAL","integrityImpact":"PARTIAL","availabilityImpact":"PARTIAL","baseScore":6.8},"severity":"MEDIUM","exploitabilityScore":8.6,"impactScore":6.4,"acInsufInfo":false,"obtainAllPrivilege":false,"obtainUserPrivilege":false,"obtainOtherPrivilege":false,"userInteractionRequired":true}},"configurations":{"CVE_data_version":"4.0","nodes":[{"operator":"OR","children":[],"cpe_match":[{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:jupyter:jupyterlab:*:*:*:*:*:*:*:*","versionStartIncluding":"3.1.0","versionEndExcluding":"3.1.4","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:jupyter:jupyterlab:*:*:*:*:*:*:*:*","versionStartIncluding":"3.0.0","versionEndExcluding":"3.0.17","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:jupyter:jupyterlab:*:*:*:*:*:*:*:*","versionStartIncluding":"2.3.0","versionEndExcluding":"2.3.2","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:jupyter:jupyterlab:*:*:*:*:*:*:*:*","versionStartIncluding":"2.0.0","versionEndExcluding":"2.2.10","cpe_name":[]},{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:jupyter:jupyterlab:*:*:*:*:*:*:*:*","versionEndExcluding":"1.2.21","cpe_name":[]}]}]}},"legacy_mitre":{"record":{"CveYear":"2021","CveId":"32797","Ordinal":"208185","Title":"CVE-2021-32797","CVE":"CVE-2021-32797","Year":"2021"},"notes":[{"CveYear":"2021","CveId":"32797","Ordinal":"1","NoteData":"JupyterLab is a user interface for Project Jupyter which will eventually replace the classic Jupyter Notebook. In affected versions untrusted notebook can execute code on load. In particular JupyterLab doesn’t sanitize the action attribute of html `<form>`. Using this it is possible to trigger the form validation outside of the form itself. This is a remote code execution, but requires user action to open a notebook.","Type":"Description","Title":null},{"CveYear":"2021","CveId":"32797","Ordinal":"2","NoteData":"2021-08-09","Type":"Other","Title":"Published"},{"CveYear":"2021","CveId":"32797","Ordinal":"3","NoteData":"2021-08-09","Type":"Other","Title":"Modified"}]}}}