Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain WordPress administrator access
-
DeliveryRegister attacker public key via add_site
-
ExploitCraft get_comments JSON with malicious array keys
-
ExecutionSend signed request to bypass wp_magic_quotes
-
PersistInjected SQL runs in unprepared IN() clause
-
ImpactExtract sensitive database records
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated WordPress user with administrator-level access (or higher) on the site running InfiniteWP Client <=1.13.9. The attacker must register their own public key through the plugin's add_site action using the plugin's WP-admin-generated activation_key, then issue cryptographically signed get_comments requests whose JSON request body (read via php://input) carries crafted array-key names. Exploitation is limited by this high privilege bar - an administrator already possessing broad site and database access - which sharply reduces practical impact despite the network attack vector. |
| Impact | This is a genuine SQL injection (CWE-89) confirmed by Wordfence with a source-code-level root cause in IWP_MMB_Comment::get_comments(), but the real-world risk is materially lower than the 6.5 CVSS or a bare 'SQLi' label would suggest. The CVSS vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N) scores privileges as PR:L, yet the description explicitly states exploitation requires 'administrator-level access and above' - an administrator registers their own public key via add_site using the WP-admin activation key, then issues signed get_comments requests. That is a PR:H-class prerequisite, so the PR:L scoring is arguably generous (see confidence_notes); a WordPress administrator already has legitimate read access to the database via other means, so this injection grants little privilege the attacker does not already possess. No EPSS score, no CISA KEV listing, and no public POC were provided, so exploitation status is 'no public exploit identified at time of analysis.' Net: a valid but low-priority defense-in-depth issue, not an urgent unauthenticated threat despite AV:N. |
| Exploit ScenarioDerived | An attacker who has already obtained WordPress administrator access registers their own public key through the plugin's add_site action using the WP-admin-generated activation key, then sends a signed get_comments request whose JSON body contains crafted array-key names with embedded single quotes. Because the body is read from php://input and JSON-decoded, wp_magic_quotes() never sanitizes it, so the injected SQL is imploded into an IN(...) clause and run via $wpdb->get_results() without prepare(), letting the attacker extract sensitive database contents. No public exploit code was identified at the time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 18, 2026
SQL injection in the InfiniteWP Client plugin for WordPress (versions up to and including 1.13.9) allows an attacker who already holds WordPress administrator-level access to read arbitrary data from the site's database through the plugin's get_comments action. Exploitation requires the attacker to first register their own public key via the plugin's add_site action using the plugin's WP-admin-generated activation_key, then send cryptographically signed get_comments requests whose JSON body (read from php://input, so wp_magic_quotes() never sanitizes it) carries crafted array-key names that are concatenated into an unparameterised IN(...) SQL clause. Wordfence reported the issue and an upstream fix is referenced in the plugin repository, and no public exploit code has been identified at time of analysis; the practical impact is bounded by the high privilege prerequisite, since an administrator already has broad control over the site, making the realistic risk lower than the 6.5 CVSS score or a bare "SQLi" label implies.
RemediationAI
Upstream fix available (plugin repository Trac changeset 3655042); released patched version not independently confirmed, so verify the current version on the WordPress plugin directory and update InfiniteWP Client past 1.13.9 as soon as a fixed release is published, using the advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/05c50442-570b-45cf-816a-c7a5b712ba21?source=cve for tracking. If a confirmed patched release cannot be deployed immediately, the most direct mitigation is to remove or disable the vulnerable comments addon so the get_comments code path is never registered, with the trade-off that remote comment listing and moderation through InfiniteWP stops working; deactivating the plugin entirely is the strongest option but severs remote management for every site in the console. Because exploitation requires an existing administrator-level account plus a self-registered public key via add_site, tighten the privilege boundary: audit and reduce the number of administrator accounts to the minimum, enforce least privilege and strong authentication (MFA) for remaining admins, and monitor for unexpected add_site calls or signed get_comments requests in plugin and web server logs. Rotate any credentials or secrets stored in the WordPress database (user password hashes, API keys in wp_options) if suspicious activity is observed, since the injection is read-only but permits extraction of exactly that kind of data.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability is a classic CWE-89 SQL injection in the InfiniteWP Client plugin's comments addon, implemented in PHP against the WordPress database abstraction layer. In IWP_MMB_Comment::get_comments(), the plugin calls extract() on the decoded $args array, which silently skips keys that are not valid PHP variable names, but a subsequent foreach($args as $checkbox => $checkbox_val) loop iterates over every key regardless. Each key has the literal prefix 'iwp_get_comments_' stripped with str_replace(), the remainder is wrapped in single quotes, and the resulting values are imploded into an IN(...) clause that is passed directly to $wpdb->get_results() without prepare(). Because the request payload is read from php://input and JSON-decoded rather than flowing through WordPress's normal request handling, wp_magic_quotes() never applies, so quote characters embedded in the JSON key names survive unaltered and can break out of the intended string context. The affected CPE, cpe:2.3:a:revmakx:infinitewp_client:*:*:*:*:*:*:*:*, covers the plugin generally; the vulnerable code paths are in addons/comments/comments.class.php (lines 57, 71, 80) and init.php (lines 131, 1651) as of tag 1.13.6. The independent assessment rates the vector as AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N, i.e. a network-reachable, no-user-interaction, read-only confidentiality breach that requires high privileges - higher than the originally published PR:L - and the SQLi is used to append additional queries to an existing query in order to extract sensitive information from the database.
Know when Infinitewp Client gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Description requires administrator access plus self-registered signed key, so PR:H not PR:L; SQL read yields C:H with no integrity/availability impact.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The InfiniteWP Client plugin for WordPress is vulnerable to SQL Injection via the get_comments action in versions up to, and including, 1.13.9. This is due to insufficient escaping on the array-key names supplied in the JSON request body before use in a SQL statement: IWP_MMB_Comment::get_comments() calls extract() on $args (which silently skips keys that are not valid PHP variable names) but a second foreach($args as $checkbox => $checkbox_val) processes every key, strips the 'iwp_get_comments_' prefix with str_replace(), wraps the remainder in single quotes, and imploded it into an IN(...) clause that is executed via $wpdb->get_results() with no prepare(). Because the request body is read from php://input and JSON-decoded, wp_magic_quotes() never touches the data, so quote characters in keys pass through unaltered. This makes it possible for authenticated attackers, with administrator-level access and above (an administrator can register their own public key via add_site using the plugin's WP-admin-generated activation_key and then issue signed get_comments requests), to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.
More in Infinitewp Client
View allThe InfiniteWP Client plugin for WordPress is vulnerable to Sensitive Information Exposure in versions up to, and includ
The InfiniteWP Client plugin before 1.9.4.5 for WordPress has a missing authorization check in iwp_mmb_set_request in in
Blind SQL Injection in the InfiniteWP Client WordPress plugin (revmakx) through version 1.13.9 allows high-privileged au
The InfiniteWP Client plugin for WordPress is vulnerable to Sensitive Information Exposure in all versions up to, and in
The InfiniteWP Client plugin for WordPress is vulnerable to Path Traversal in all versions up to, and including, 1.13.0
EUVD-2026-82742
GHSA-xcfp-7r4f-6367
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB