Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRequest archive page with shortcode in URI
-
DeliveryBypass wp_kses via pre-substitution ordering
-
Exploit{url} inserts raw URI bytes into greeting
-
Executiondo_shortcode() executes injected shortcode
-
ImpactAbuse registered shortcode for data access/manipulation
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the Click to Chat for WhatsApp greetings feature is active and configured to render on archive pages using the greetings-1 or greetings-2 templates, AND that the greeting content includes the {url} template placeholder (this is what carries the attacker-controlled $_SERVER['REQUEST_URI'] into do_shortcode()). The practical impact is further bounded by which shortcodes are registered by WordPress core, the active theme, or other installed plugins - a dangerous/abusable shortcode must be present for meaningful impact. No authentication or user interaction is required (PR:N/UI:N) and the request targets an archive page over the network, but the configuration dependency (non-default greeting setup emitting {url} on archive pages) is the key limiting factor defenders should check. |
| Impact | Multiple signals point to a genuinely high-severity flaw but with important real-world caveats. The supplied CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N, 9.1 Critical) describes remote, unauthenticated, no-interaction code injection (CWE-94), which is a legitimate priority on its face. However, the described impact is 'arbitrary shortcode execution,' not guaranteed direct code execution - the actual severity hinges on which shortcodes are registered by core, the active theme, or other plugins on the target site, so C:H/I:H is a worst-case assumption rather than a universal outcome. Exploitation is also conditioned on site-side configuration (the greetings feature must emit the {url} placeholder on archive pages), which is beyond the attacker's control and tempers the AC:L rating. No EPSS score was provided, there is no CISA KEV listing, and no public exploit was supplied, so no active-exploitation or mass-automation signal exists at this time. Net: a credible critical-class bug warranting prompt patching for affected sites, but the 'RCE' framing likely overstates the baseline impact, which is config- and shortcode-dependent. |
| Exploit ScenarioDerived | An unauthenticated attacker requests an archive page (e.g., a category, tag, or date archive) with a crafted REQUEST_URI containing WordPress shortcode syntax. Because sanitize_text_field() does not strip shortcode delimiters and wp_kses() runs before the {url} substitution, the raw URL bytes are placed into the greeting content and passed to do_shortcode(), executing the injected shortcode. No public proof-of-concept was provided in the source data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Arbitrary shortcode execution in Click to Chat for WhatsApp plugin versions up to and including 4.44 allows unauthenticated remote attackers to run registered WordPress shortcodes by injecting delimiters into the URL of an archive page, which is substituted into the {url} greeting placeholder and then passed to do_shortcode() without sanitization. Exploitation depends on a non-default configuration: the greetings feature must be active and rendering greetings-1 or greetings-2 templates on archive pages with the {url} placeholder present, and meaningful impact requires a dangerous shortcode from WordPress core, the active theme, or another plugin. The CVE assigns a 9.1 base score (AC:L), but our independent assessment sets attack complexity to High (AC:H); no public exploit code or active exploitation has been identified at time of analysis.
RemediationAI
Update the Click to Chat for WhatsApp plugin to a version later than 4.44; the provided Trac changeset r3716433 (https://plugins.trac.wordpress.org/changeset/3716433/click-to-chat-for-whatsapp/trunk/new/inc/greetings/greetings-1.php) indicates an upstream fix is available but a specific patched release version is not independently confirmed, so verify the latest version on the WordPress plugin repository or with the vendor. If immediate patching is not possible, disable the plugin's greetings feature entirely, or at minimum ensure greetings are not configured to render on archive pages using the greetings-1 or greetings-2 templates and remove the {url} placeholder from greeting content-both actions prevent the attacker-controlled URI from reaching do_shortcode(), though they may reduce site functionality. Additionally, audit installed themes and plugins for shortcodes that perform dangerous actions and remove or disable any unused ones, since the vulnerability's impact depends on the availability of such shortcodes. A web application firewall can be configured to block requests whose URL path or query string contains shortcode delimiters (square brackets) on archive pages, but this may cause false positives for legitimate URLs and should be tested. No vendor-released patch version is specified in the input; monitor the Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/cf625e34-1f51-42a3-8daa-a5188dea226e?source=cve for updates.
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 flaw resides in the WordPress plugin Click to Chat for WhatsApp by HoliThemes, which implements greeting messages on archive pages. In versions up to 4.44, the greetings_dialog() function builds the {url} placeholder from $_SERVER['REQUEST_URI'] after applying sanitize_text_field(), and then passes the substituted greeting content to do_shortcode() in the greetings-1 and greetings-2 templates without stripping shortcode delimiters. Because wp_kses() is applied to main_content before the {url} substitution, attacker-controlled bytes from the request URI reach do_shortcode() unfiltered, enabling arbitrary shortcode execution (CWE-94). WordPress shortcodes are macros that invoke registered callbacks; executing arbitrary shortcodes can lead to code execution, data disclosure, or other impacts depending on which shortcodes are registered by core, the active theme, or other plugins. The independent assessment rates this CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N because exploitation requires the greetings feature to be active and configured to render on archive pages with the {url} placeholder present, and because the practical impact is bounded by the availability of a dangerous shortcode.
Know when Wordpress Plugin 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:N/UI:N/S:U/C:H/I:H/A:N
Remote and unauthenticated (AV:N/PR:N/UI:N), but AC:H because exploitation depends on a non-default greeting configuration and the presence of an abusable registered shortcode, both beyond the attacker's control.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Click to Chat for WhatsApp plugin for WordPress is vulnerable to Arbitrary Shortcode Execution in versions up to, and including, 4.44 This is due to the greetings_dialog() function building the {url} template placeholder from a sanitize_text_field()-filtered $_SERVER['REQUEST_URI'] on archive pages and then passing the substituted greeting content to do_shortcode() in the greetings-1 and greetings-2 templates, without stripping shortcode delimiters. Because wp_kses() runs against main_content BEFORE the {url} substitution, the attacker-controlled URL bytes reach do_shortcode() unfiltered. This makes it possible for unauthenticated attackers to execute arbitrary shortcodes registered by WordPress core, the active theme, or any other plugin (e.
Articles & Coverage 1
Executive ViewAI
A critical flaw in the Click to Chat for WhatsApp WordPress plugin (all versions through 4.44) could let outside attackers run arbitrary shortcodes on affected websites, potentially exposing site content, customer data, or administrative functions. Exploitation requires a non-default greetings configuration plus a dangerous shortcode from WordPress core, the theme, or another plugin, so exposure is not universal - but any organization running this plugin on public-facing WordPress sites should treat it as a priority. With no vendor patch available, leadership should expect mitigation to depend on configuration changes and heightened monitoring until a fixed release ships.
No vendor-released patch identified at time of analysis. Interim mitigations: disable or remove the plugin on internet-facing sites; disable the greetings feature and strip the {url} placeholder from greetings-1 and greetings-2 templates so no attacker-controlled URL is passed to do_shortcode(); apply WAF/virtual-patching rules blocking delimiter injection in archive page URLs; restrict or remove shortcodes from core, theme, or other plugins that perform privileged, file, or data operations; and enable enhanced logging and monitoring for anomalous shortcode execution until a fixed version is available.
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
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
More in Wordpress Plugin
View allThe Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil
Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote
The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner
The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut
The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based
SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a
The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i
The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base
The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in
Remote code execution in the WP Query Console WordPress plugin (versions up to and including 1.0) by Ajit Bohra allows u
EUVD-2026-100770
GHSA-4768-hg42-39c5
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB