Skip to main content

Popup Box EUVDEUVD-2026-102592

| CVE-2026-100159 MEDIUM
Code Injection (CWE-94)
2026-10-16 Wordfence GHSA-5jv4-j9f2-3247
4.8
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send request with crafted X-Forwarded-For header
  2. Exploit
    Payload stored into %%user_ip_address%% token unescaped
  3. Execution
    do_shortcode() executes injected shortcode at wp_footer
  4. Impact
    Read data or trigger actions via registered shortcodes

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 a site administrator has added the %%user_ip_address%% token to a Popup Box popup's Custom Content body - without this specific configuration the attacker-controlled header value is never rendered or passed to do_shortcode(), so default installations are not affected. Impact is further limited to shortcodes already registered by the site (the attacker can only invoke existing shortcodes with chosen attributes, not inject arbitrary PHP), and the value of the attack depends entirely on which shortcode-exposing plugins are installed. No authentication or user interaction is needed (PR:N/UI:N), but the dependence on non-default admin configuration is the primary limiting factor and the reason for the high attack complexity.

Impact

This is a genuinely limited-severity issue despite the 'RCE/Code Injection' framing, and the signals are internally consistent rather than conflicting. The CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N, 4.8 Medium) correctly reflects that although the flaw is network-reachable and unauthenticated (PR:N), successful exploitation carries high complexity (AC:H) because it depends on a specific administrator-side precondition - the %%user_ip_address%% token must have been placed into a popup's Custom Content body - and the impact is bounded to whatever registered shortcodes already exist on the site (hence C:L/I:L and A:N, not a full System compromise). No EPSS score, KEV entry, or public POC is present in the provided data, so exploitation status is 'no public exploit identified at time of analysis.' The 'RCE' tag overstates reality: this is arbitrary registered-shortcode execution with attacker-controlled attributes, not arbitrary OS/PHP code execution, so real-world impact is entirely contingent on which shortcode-exposing plugins are installed. Net assessment: a real but niche, lower-priority issue - patch in routine cycles rather than emergency, prioritizing sites known to use the IP token.

Exploit ScenarioDerived

On a site where an administrator has inserted the %%user_ip_address%% token into a Popup Box popup's Custom Content, an unauthenticated attacker sends a normal page request with a crafted X-Forwarded-For (or Client-IP / Forwarded) header containing WordPress shortcode syntax; because sanitize_text_field() does not strip brackets, quotes, spaces, or '=', the payload survives into the popup body and is passed to do_shortcode() at wp_footer, causing the injected shortcode to execute with attacker-supplied attributes. No public exploit code is identified at time of analysis, and the high attack complexity stems from the required administrator configuration.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 16, 2026

Arbitrary shortcode execution in the Popup Box plugin for WordPress (ays-pro) versions 6.4.1 through 6.4.2 lets unauthenticated remote attackers invoke any shortcode registered on the site with attacker-chosen attributes, because client-controlled IP-related HTTP headers are folded into a popup body and then run through do_shortcode(). The attack is only reachable when a site administrator has manually inserted the %%user_ip_address%% token into a popup's Custom Content body, so default installations and sites that never use that token are not affected; impact is bounded by the shortcodes already installed (no direct PHP injection), which is why the assessed vector scores only 4.8 with high attack complexity. No public exploit code and no confirmed active exploitation were identified at time of analysis, and the vendor reference points to a fix in 6.4.3.

RemediationAI

Upgrade the Popup Box plugin to version 6.4.3, which is the version referenced by the vendor's fixed-code link (https://plugins.trac.wordpress.org/browser/ays-popup-box/tags/6.4.3/public/class-ays-pb-public.php), and confirm the update completes in the WordPress plugins list - this is the authoritative fix and the preferred action. If upgrading immediately is not possible, the highest-leverage compensating control is to remove the %%user_ip_address%% token from every popup's Custom Content body, since the injected header value is only ever substituted and passed to do_shortcode() when that token is present; audit popups for the token before assuming you are unaffected, and note that removing it changes the popup content that visitors see. A second mitigation is to strip or reject spoofable client IP headers (Client-IP, X-Forwarded-For, Forwarded, X-Forwarded, Forwarded-For) at the edge/reverse proxy so that forged values never reach PHP, but this only helps when the site sits behind infrastructure you control and is unreliable for direct-to-origin traffic. Additionally, review which plugins register shortcodes with side effects (data reads, form actions, remote fetches) and consider disabling or deactivating those shortcode providers on affected sites, accepting the loss of their functionality as a trade-off, because shortcode exposure is what converts this input-handling flaw into a useful attack. There is no vendor workaround documented beyond upgrading, and the Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/535c4796-d1aa-4cd1-922e-f9dcf216f76d?source=cve should be monitored for further guidance.

Affected VersionsENISA

Popup Box – Create Countdown, Coupon, Video, Contact Form Popups 6.4.1 ≤6.4.2

Affected Packages

euvd popup_box_create_countdown_coupon_video_contact_form_popups no fix

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

CWE-94 (Code Injection) in the WordPress Popup Box plugin arises from a chain of unsafe data handling rather than a single missing check. The helper ays_popup_get_user_ip() reads attacker-influenced headers - Client-IP, X-Forwarded-For, Forwarded, X-Forwarded and Forwarded-For - and filters them with sanitize_text_field(), which strips invalid UTF-8 and some tags but deliberately does NOT remove the bracket, quote, space or '=' characters that WordPress shortcode syntax relies on. Ays_Pb_Data::replace_message_variables() then performs a raw str_replace of the %%user_ip_address%% token with that value inside the popup body, and Ays_Pb_Public::ays_autoembed() finally passes the resulting body to do_shortcode() when the popup is rendered on the wp_footer hook. Registered shortcodes are executed with attributes the attacker controls through the injected header text, so a payload of the form [some_shortcode attr="value"] can be smuggled in via a forged header. The CPE cpe:2.3:a:ays-pro:popup_box_-_create_countdown,_coupon,_video,_contact_form_popups identifies the ays-pro Popup Box family; the public rendering class, template partials and data class referenced in the Trac links (class-ays-pb-public.php, ays-pb-public-templates.php, class-ays-pb-data.php) are the exact code paths involved. The dependency on a non-default administrator configuration - the presence of the %%user_ip_address%% token in a popup body - and the restriction to already-registered shortcodes are why the assessed CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N reflects a constrained, site-configuration-dependent issue rather than full remote code execution.

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

Vendor (Wordfence) PRIMARY 4.8 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
vuln.today AI 4.8 MEDIUM

Unauthenticated network injection (AV:N/PR:N) but AC:H because it depends on a non-default admin-placed token; impact is C:L/I:L bounded to registered shortcodes, A:N.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
None

DescriptionCVE.org

The Popup Box plugin for WordPress is vulnerable to Arbitrary Shortcode Execution in versions 6.4.1 to 6.4.2. This is due to the ays_popup_get_user_ip() function reading the client-controlled Client-IP / X-Forwarded-For / Forwarded / X-Forwarded / Forwarded-For request headers, sanitizing them only with sanitize_text_field() (which does not strip the bracket, quote, space, or '=' characters used by shortcode syntax), substituting the value into a popup body wherever the %%user_ip_address%% token appears (a raw str_replace with no escaping in Ays_Pb_Data::replace_message_variables()), and then passing the resulting body to do_shortcode() in Ays_Pb_Public::ays_autoembed() at output on the wp_footer hook. This makes it possible for unauthenticated attackers to execute arbitrary registered shortcodes with attacker-supplied attributes on the server whenever an administrator has added the %%user_ip_address%% token to a popup's Custom Content body, which can be leveraged to read arbitrary data or perform other actions exposed by shortcodes installed on the site.

Threat Intelligence Overview

EPSS Score
0.3%
Top 84% exploitable
Prevalence
Low
niche WordPress popup plugin from a single vendor, modest install base
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

24
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +24
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

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.

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

CVE-2024-5084 CRITICAL POC
9.8 May 23

The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil

CVE-2024-44000 CRITICAL POC
9.8 Oct 20

Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote

CVE-2020-36847 CRITICAL POC
9.8 Jul 12

The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner

CVE-2025-27007 CRITICAL POC
9.8 May 01

The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut

CVE-2016-1209 CRITICAL POC
9.8 May 14

The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via

CVE-2024-4443 CRITICAL POC
9.8 May 22

The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based

CVE-2024-1698 CRITICAL POC
9.8 Feb 27

SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a

CVE-2023-6875 CRITICAL POC
9.8 Jan 11

The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i

CVE-2024-1512 CRITICAL POC
9.8 Feb 17

The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base

CVE-2024-4295 CRITICAL POC
9.8 Jun 05

The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in

CVE-2024-50498 CRITICAL POC
10.0 Oct 28

Remote code execution in the WP Query Console WordPress plugin (versions up to and including 1.0) by Ajit Bohra allows u

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy