CVE-2024-52286 Self Cross Site Scripting (XSS) In Merge Functionality in Stirling-PDF
Attackers can execute JavaScript via malicious filenames in Stirling-PDF's merge feature, potentially enabling phishing or session hijacking.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- None listed
What is CVE-2024-52286?
CVE-2024-52286 is a low-severity cross-site scripting vulnerability in Stirling-Tools Stirling-PDF, published on 11 Nov 2024. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.
Official description
Stirling-PDF is a locally hosted web application that allows you to perform various operations on PDF files. In affected versions the Merge functionality takes untrusted user input (file name) and uses it directly in the creation of HTML pages allowing any unauthenticated to execute JavaScript code in the context of the user. The issue stems to the code starting at `Line 24` in `src/main/resources/static/js/merge.js`. The file name is directly being input into InnerHTML with no sanitization on the file name, allowing a malicious user to be able to upload files with names containing HTML tags. As HTML tags can include JavaScript code, this can be used to execute JavaScript code in the context of the user. This is a self-injection style attack and relies on a user uploading the malicious file themselves and it impact only them, not other users. A user might be social engineered into running this to launch a phishing attack. Nevertheless, this breaks the expected security restrictions in place by the application. This issue has been addressed in version 0.32.0 and all users are advised to upgrade. There are no known workarounds for this vulnerability.
Which versions are affected by CVE-2024-52286?
How do I fix CVE-2024-52286?
No fix has been published for CVE-2024-52286 yet. Limit exposure of the affected software until one is available.
Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.
Is CVE-2024-52286 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-52286 exists.
Sources
Also known as GHSA-9j55-gvf2-cqwv.