CVE-2023-23488
published 2023-01-20CVE-2023-23488: The Paid Memberships Pro WordPress Plugin, version < 2.9.8, is affected by an unauthenticated SQL injection vulnerability in the 'code' parameter of the…
PriorityP189critical9.8CVSS 3.1
AVNACLPRNUINSUCHIHAH
ITWEXPLOITVulnCheck KEVInitial access
Exploited in the wild
EPSS
92.46%
99.8th percentile
The Paid Memberships Pro WordPress Plugin, version < 2.9.8, is affected by an unauthenticated SQL injection vulnerability in the 'code' parameter of the '/pmpro/v1/order' REST route.
Affected
1 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| strangerstudios | paid_memberships_pro | < 2.9.8 | 2.9.8 |
Detection & IOCsextracted from sources · hover to see the quote
- →Monitor for unauthenticated GET/POST requests to the REST route '/?rest_route=/pmpro/v1/order' (or '/wp-json/pmpro/v1/order') with a 'code' parameter containing SQL injection payloads (e.g., time-based blind SQLi patterns). ↗
- →Exploit tooling uses sqlmap with '--technique=T' (time-based blind) against the 'code' parameter; alert on time-based SQLi signatures targeting this endpoint. ↗
- →Exploitation targets the 'wp_users' table to exfiltrate user_login and user_pass columns; monitor for anomalous database query times or large response payloads from this REST endpoint. ↗
- →Wordfence returns HTTP 403 for exploit attempts; a status code other than 403 on this endpoint may indicate an unprotected vulnerable installation.
- →Fingerprint vulnerable installations by checking for the string 'pmpro_updates' in the response body of the target WordPress site.
- ·Vulnerability only affects Paid Memberships Pro plugin versions prior to 2.9.8; patched installations (>= 2.9.8) are not affected. ↗
- ·The exploit is fully unauthenticated — no WordPress credentials or session are required to trigger the SQL injection. ↗
CVSS provenance
nvdv3.19.8CRITICALCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vulncheck9.8CRITICAL
CVEs like this are exactly what “Exploited This Week” covers.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
GHSA-pppw-hpjp-v2p9: The Paid Memberships Pro WordPress Plugin, version < 2
ghsa_unreviewed·2023-01-20
CVE-2023-23488 [CRITICAL] CWE-89 GHSA-pppw-hpjp-v2p9: The Paid Memberships Pro WordPress Plugin, version < 2
The Paid Memberships Pro WordPress Plugin, version < 2.9.8, is affected by an unauthenticated SQL injection vulnerability in the 'code' parameter of the '/pmpro/v1/order' REST route.
VulnCheck
strangerstudios paid_memberships_pro Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
vulncheck·2023·CVSS 9.8
CVE-2023-23488 [CRITICAL] strangerstudios paid_memberships_pro Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
strangerstudios paid_memberships_pro Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
The Paid Memberships Pro WordPress Plugin, version < 2.9.8, is affected by an unauthenticated SQL injection vulnerability in the 'code' parameter of the '/pmpro/v1/order' REST route.
Affected: strangerstudios paid_memberships_pro
Required Action: Apply remediations or mitigations per vendor instructions or discontinue use of the product if remediation or mitigations are unavailable.
Exploitation References: https://patchstack.com/database/wordpress/plugin/paid-memberships-pro/vulnerability/wordpress-paid-memberships-pro-plugin-2-9-8-unauthenticated-sql-injection-vulnerability; https://app.crowdsec.net/cti/cve-explorer/CVE-2023-23488
Exploit PoC: https://vulncheck.c
No detection rules found.
Exploit-DB
Paid Memberships Pro v2.9.8 (WordPress Plugin) - Unauthenticated SQL Injection
exploitdb·2023-04-03·CVSS 9.8
CVE-2023-23488 [CRITICAL] Paid Memberships Pro v2.9.8 (WordPress Plugin) - Unauthenticated SQL Injection
Paid Memberships Pro v2.9.8 (WordPress Plugin) - Unauthenticated SQL Injection
---
#!/usr/bin/env python
# Exploit Title: Paid Memberships Pro v2.9.8 (WordPress Plugin) - Unauthenticated SQL Injection
# Exploit Author: r3nt0n
# CVE: CVE-2023-23488
# Date: 2023/01/24
# Vulnerability discovered by Joshua Martinelle
# Vendor Homepage: https://www.paidmembershipspro.com
# Software Link: https://downloads.wordpress.org/plugin/paid-memberships-pro.2.9.7.zip
# Advisory: https://github.com/advisories/GHSA-pppw-hpjp-v2p9
# Version: '.format("python3 CVE-2023-23488.py"))
print('Example: {} http://127.0.0.1/wordpress'.format("python3 CVE-2023-23488.py"))
sys.exit(1)
target_url = sys.argv[1]
try:
print('[-] Testing if the target is vulnerable...')
req = requests.get(target_url, timeout=15)
except:
Nuclei
WordPress Paid Memberships Pro <2.9.8 - Blind SQL Injection
nuclei·CVSS 9.8
CVE-2023-23488 [CRITICAL] WordPress Paid Memberships Pro <2.9.8 - Blind SQL Injection
WordPress Paid Memberships Pro =7
- status_code_1 != 403 # Wordfence
- contains(body_2, "pmpro_updates")
condition: and
# digest: 4a0a00473045022100ac9351aea1951eb5ca3e169b700492b1a83850418befb6e22f633bd4f73e58f1022032f455dd878ef13af7c25ff518864b79534e13748d869706a4c4259d168a3ff8:922c64590222798bb761d5b6d8e72950
Metasploit
Wordpress Paid Membership Pro code Unauthenticated SQLi
metasploit
Wordpress Paid Membership Pro code Unauthenticated SQLi
Wordpress Paid Membership Pro code Unauthenticated SQLi
Paid Membership Pro, a WordPress plugin, prior to 2.9.8 is affected by an unauthenticated SQL injection via the `code` parameter. Remote attackers can exploit this vulnerability to dump usernames and password hashes from the `wp_users` table of the affected WordPress installation. These password hashes can then be cracked offline using tools such as Hashcat to obtain valid login credentials for the affected WordPress installation.
Tenable
SQL Injection in Multiple WordPress Plugins
blogs_tenable·2023-01-12
SQL Injection in Multiple WordPress Plugins
## Cloud Exposure
Tenable Cloud Security (CNAPP) Request a demo
Tenable Cloud Vulnerability Management Request a demo
Tenable CIEM Request a demo
Secure your cloud
## Vulnerability Exposure
Tenable Vulnerability Management Try for free
Tenable Security Center Request a demo
Tenable Web App Scanning Try for free
Tenable Patch Management Request a demo
Tenable Enclave Security Request a demo
Tenable Attack Surface Management Request a demo
Tenable Nessus Try for free
## AI Exposure
Tenable AI Exposure Request a demo
## OT/IoT Exposure
Tenable OT Security Request a demo
## Identity Exposure
Tenable Identity Exposure Request a demo
## Business needs
Active Directory
AI Security Posture Management (AI-SPM)
AWS security
Azure security
Cloud Security Posture Man
Greynoiseio
NoiseLetter October 2025
blogs_greynoiseio
NoiseLetter October 2025
CVE Disclosure Early Warning Get an early warning when traffic spikes indicate a high likelihood of new disclosures
Compromised Asset Detection Find out immediately if an asset communicates with a malicious IP address
Vulnerability Prioritization Get real-time insight into active exploitation trends to better understand risk and severity
SOC Efficiency Filter out noisy, low priority and false-positive alerts from mass internet scanners
Incident Investigation Add context to incidents to speed the determinations of scope and timelines
Threat Hunting Quickly identify anomalous behavior and enrich your threat hunting campaigns
Why GreyNoise
CVE Disclosure Early Warning Get an early warning when traffic spikes indicate a high likelihood of new disclosures
Compromised Asset Detection Fin
http://packetstormsecurity.com/files/171661/WordPress-Paid-Memberships-Pro-2.9.8-SQL-Injection.htmlhttps://www.tenable.com/security/research/tra-2023-2http://packetstormsecurity.com/files/171661/WordPress-Paid-Memberships-Pro-2.9.8-SQL-Injection.htmlhttps://www.tenable.com/security/research/tra-2023-2
2023-01-20
Published
Exploited in the wild