PyPi: Dash

CVE-2024-21485

Safety vulnerability ID: 65284

This vulnerability was reviewed by experts

The information on this page was manually curated by our Cybersecurity Intelligence Team.

Created at Feb 02, 2024 Updated at May 03, 2024
Scan your Python projects for vulnerabilities →

Advisory

Earlier versions of Dash and its components are susceptible to an XSS vulnerability, specifically through the manipulation of the href attribute in a tags by an attacker. This flaw could potentially allow an authenticated attacker to access or manipulate user data and tokens, assuming the ability to store and present manipulated views to other users. The vulnerability notably requires the presence of user input storage mechanisms within Dash applications to be exploitable. Further details are covered under CVE-2024-21485.
#Note: This is only exploitable in Dash apps that include some mechanism to store user input to be reloaded by a different user. See CVE-2024-21485.

Affected package

dash

Latest version: 2.17.0

A Python framework for building reactive web-apps. Developed by Plotly.

Affected versions

Fixed versions

Vulnerability changelog

Versions of the package dash-core-components before 2.13.0; all versions of the package dash-core-components; versions of the package dash before 2.15.0; all versions of the package dash-html-components; versions of the package dash-html-components before 2.0.16 are vulnerable to Cross-site Scripting (XSS) when the href of the a tag is controlled by an adversary. An authenticated attacker who stores a view that exploits this vulnerability could steal the data that's visible to another user who opens that view - not just the data already included on the page, but they could also, in theory, make additional requests and access other data accessible to this user. In some cases, they could also steal the access tokens of that user, which would allow the attacker to act as that user, including viewing other apps and resources hosted on the same server. **Note:** This is only exploitable in Dash apps that include some mechanism to store user input to be reloaded by a different user. See CVE-2024-21485.


MISC:https://github.com/plotly/dash/commit/9920073c9a8619ae8f90fcec1924f2f3a4332a8c: https://github.com/plotly/dash/commit/9920073c9a8619ae8f90fcec1924f2f3a4332a8c
MISC:https://github.com/plotly/dash/issues/2729: https://github.com/plotly/dash/issues/2729
MISC:https://github.com/plotly/dash/pull/2732: https://github.com/plotly/dash/pull/2732
MISC:https://github.com/plotly/dash/releases/tag/v2.15.0: https://github.com/plotly/dash/releases/tag/v2.15.0
MISC:https://security.snyk.io/vuln/SNYK-JS-DASHCORECOMPONENTS-6183084: https://security.snyk.io/vuln/SNYK-JS-DASHCORECOMPONENTS-6183084
MISC:https://security.snyk.io/vuln/SNYK-JS-DASHHTMLCOMPONENTS-6226337: https://security.snyk.io/vuln/SNYK-JS-DASHHTMLCOMPONENTS-6226337
MISC:https://security.snyk.io/vuln/SNYK-PYTHON-DASH-6226335: https://security.snyk.io/vuln/SNYK-PYTHON-DASH-6226335
MISC:https://security.snyk.io/vuln/SNYK-PYTHON-DASHCORECOMPONENTS-6226334: https://security.snyk.io/vuln/SNYK-PYTHON-DASHCORECOMPONENTS-6226334
MISC:https://security.snyk.io/vuln/SNYK-PYTHON-DASHHTMLCOMPONENTS-6226336: https://security.snyk.io/vuln/SNYK-PYTHON-DASHHTMLCOMPONENTS-6226336

Resources

Use this package?

Scan your Python project for dependency vulnerabilities in two minutes

Scan your application

Severity Details

CVSS Base Score

MEDIUM 5.4

CVSS v3 Details

MEDIUM 5.4
Attack Vector (AV)
NETWORK
Attack Complexity (AC)
LOW
Privileges Required (PR)
LOW
User Interaction (UI)
REQUIRED
Scope (S)
CHANGED
Confidentiality Impact (C)
LOW
Integrity Impact (I)
LOW
Availability Availability (A)
NONE