PRIOn Logo

CVE-2024-45389 Cross site scripting

Routine
Remediate Within 6 Months

CVE Information

Original CVE data

Published:
Updated:

Pagefind, a fully static search library, initializes its dynamic JavaScript and WebAssembly files relative to the location of the first script the user loads. This information is gathered by looking up the value of `document.currentScript.src`. Prior to Pagefind version 1.1.1, it is possible to "clobber" this lookup with otherwise benign HTML on the page. This will cause `document.currentScript.src` to resolve as an external domain, which will then be used by Pagefind to load dependencies. This exploit would only work in the case that an attacker could inject HTML to a live, hosted, website. In these cases, this would act as a way to escalate the privilege available to an attacker. This assumes they have the ability to add some elements to the page (for example, `img` tags with a `name` attribute), but not others, as adding a `script` to the page would itself be the cross-site scripting vector. Pagefind has tightened this resolution in version 1.1.1 by ensuring the source is loaded from a valid script element. There are no reports of this being exploited in the wild via Pagefind.

CWE:
CVSS v2-
CVSS v3-
References
https://github.com/CloudCannon/pagefind/security/advisories/GHSA-gprj-6m2f-j9hx
https://github.com/webpack/webpack/security/advisories/GHSA-4vvj-4cpr-p986
https://github.com/CloudCannon/pagefind/commit/14ec96864eabaf1d7d809d5da0186a8856261eeb
Affected Vendors

Basic Analysis

Common vulnerability metrics

Vulnerabilty type as detected by PRIOnengine

Cross site scripting

CVSS Scores as calculated by PRIOnengine
CVSS v26.8
AV:N/AC:M/AU:N/C:P/I:P/A:P
CVSS v36.1
AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
MITRE CWE Top 25

-

Exploits

No exploit code is reported to exist.

Active Exploitation

Vulnerability is not in CISA's Known Exploited Vulnerabilities (KEV) catalog. See the KEV Catalog

Social Network Activity

-

Threat Actor Activity

No sightings of the vulnerability within threat reports.

Cybersecurity Frameworks

How the vulnerability maps against various cybersecurity frameworks

T1566.002 - Phishing (Spearphishing Link)
T1566 - Phishing
T1539 - Steal Web Session Cookie
T1190 - Exploit Public-Facing Application
T1189 - Drive-by Compromise
T1059 - Command and Scripting Interpreter

Compliance Impact

How the submited vulnerability affects compliance

PCI DSS v3.2.1-6.5.7 - Cross Site Scripting

Web Application Security Frameworks

Applicable if the issue likely affects a web application

WASC-8 - Cross Site Scripting