NetSight
medium5.4

CVE-2024-39311

Publify Vulnerable To Cross-Site Scripting (XSS) Via Redirects Requiring User Interaction

Impact

### Summary A publisher on a `publify` application is able to perform a cross-site scripting attack on an administrator using the redirect functionality. ### Details A publisher on a `publify` application is able to perform a cross-site scripting attack on an administrator using the redirect functionality. The exploitation of this XSS vulnerability requires the administrator to click a malicious link. We can create a redirect to a `javascript:alert()` URL. Whilst the redirect itself doesn't work, on the administrative panel, an a tag is created with the payload as the URI. Upon clicking this link, the XSS is triggered. An attack could attempt to hide their payload by using HTML, or other encodings, as to not make it obvious to an administrator that this is a malicious link. ### PoC A publisher can create a new redirect as shown below. The payload used is `javascript:alert()`. ![image](https://user-images.githubusercontent.com/44903767/295206083-3cf432c6-1f58-49a2-b09c-777e9707e0ff.png) An administrator will now see this redirect in their overview of the page. ![image](https://user-images.githubusercontent.com/44903767/295206204-3d4dc59a-8f82-42f3-98b2-a1809790351f.png) If they click the link on the right, it triggers the XSS. ![image](https://user-images.githubusercontent.com/44903767/295206292-3fea85f5-6918-4eff-8206-4a275a6e79e4.png) ### Impact A publisher may attempt to use this vulnerability to escalate their privileges and become an administrator.

Affected packages

EcosystemPackageAffectedFixed in
rubygemspublify_core< 10.0.210.0.2

Affected products

VendorProductAffected versions
PublifyPublify
before 10.0.1
PublifyPublify Core
before 10.0.2

Weakness classification

References