Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRegister Subscriber-level account
-
DeliveryPost comment containing crafted shortcode
-
ExploitBypass narrow ppress_neutralize_buffer_shortcodes pass
-
Executiondo_shortcode() executes markup server-side on profile load
-
ImpactReach gated shortcode data or inject HTML
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 | Requires: (1) the ProfilePress/WP User Avatar front-end user-profile feature active with the Comments tab rendered via get_user_profile_structure()/author_comment_query(); (2) an attacker holding at least Subscriber-level access, which in practice means the site permits user registration; and (3) a visitor (which can be the attacker) loading the target user's front-end profile Comments tab to trigger server-side do_shortcode() execution. Limiting factors that reduce real-world risk: authentication is required (PR:L, not unauthenticated), the vulnerable front-end profile/comments feature must be deployed, and the achievable impact is bounded by which capability-gated or data-returning shortcodes other active plugins/themes expose - the narrow ppress_neutralize_buffer_shortcodes pass only blocks pp-custom-html and bracket fragments containing HTML delimiters, leaving all other well-formed shortcodes exploitable. |
| Impact | This is a genuine but moderate-priority issue rather than a critical one, and the signals are internally consistent. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N, base 5.4 Medium) reports network reach, low complexity, and low privileges, matching the description: an authenticated Subscriber-and-above user can trigger it remotely by posting a comment. Impact is deliberately scoped low (C:L/I:L, A:N) because the flaw yields arbitrary WordPress *shortcode* execution and raw HTML injection - not arbitrary PHP/OS code execution - so the 'RCE' tag overstates the true impact (CWE-94 Code Injection is the accurate classification). No EPSS score, no CISA KEV listing, and no SSVC decision data were provided in the input, so automatability and widespread-exploitation probability cannot be quantified from the given signals. A pastebin raw link is bundled among the references, which strongly suggests public proof-of-concept markup exists, though its contents were not independently verified for this analysis. The real-world severity hinges on which other active plugins/themes expose capability-gated or data-returning shortcodes, so the practical impact is deployment-dependent and could exceed the low CVSS impact scores in information-rich installations. Net: patch promptly on sites that allow open registration and expose front-end ProfilePress profiles, but this is not a drop-everything critical. |
| Exploit ScenarioDerived | An attacker registers a low-privileged Subscriber account on a site running ProfilePress/WP User Avatar (≤4.17.5), then posts a comment whose body contains crafted shortcode markup (for example a data-returning or capability-gated shortcode from another active plugin/theme, with attacker-chosen attributes). When any visitor - or the attacker - loads the target's front-end profile Comments tab, the comment excerpt is inlined into the profile buffer and passed to do_shortcode(), executing the shortcode server-side and/or injecting raw HTML into a public page. A pastebin reference included in the CVE data appears to contain proof-of-concept exploit markup, though it was not independently verified here. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 16, 2026
Arbitrary shortcode execution in the ProfilePress (formerly WP User Avatar) WordPress plugin through version 4.17.5 allows authenticated users with Subscriber-level access or higher to plant shortcode markup inside a comment, which is later rendered server-side by do_shortcode() when any visitor opens that user's front-end profile Comments tab. Because the plugin's ppress_neutralize_buffer_shortcodes() pass only strips pp-custom-html and bracket fragments containing HTML delimiters, shortcodes exposed by any other active plugin or theme remain intact and can be executed with attacker-chosen attributes, giving a low-privilege user a route to capability-gated or data-returning shortcodes and to raw HTML injection on a publicly viewable page. Rated CVSS 5.4 (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N), the impact is bounded by which shortcodes a given site happens to have installed, and no public exploit code or confirmed active exploitation was identified at time of analysis.
RemediationAI
Vendor-released patch: upgrade the ProfilePress / WP User Avatar plugin to version 4.17.6 or later, as indicated by the patched FrontendProfileTag.php shipped under the 4.17.6 tag (https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.17.6/src/ShortcodeParser/FrontendProfileTag.php) and by the vendor advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/83adfbff-f625-4474-81b9-961c496d59a0?source=cve; the WordPress.org auto-update path or a manual plugin update is sufficient. If immediate upgrade is not possible, the highest-value compensating control is to stop comments from reaching the profile buffer: disable the site's Comments tab/front-end profile feature, or disable the shortcode that renders the user-profile template, or disable comments on the affected content - the trade-off is loss of the front-end member profile and community features for all users. A second option is to close open registration or require administrator approval and a verified role above Subscriber, which removes the low-privilege foothold but does nothing against existing accounts and degrades onboarding. Site owners can also restrict who may post comments via a moderation/approval workflow so unapproved comment bodies never render, at the cost of moderator workload and delayed discussion. Note that neither WAF nor generic input filtering reliably covers this sink, because the payload is ordinary, well-formed shortcode text stored through a normal comment form; only the 4.17.6 upgrade removes the unsafe do_shortcode() call on the assembled profile buffer.
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 root cause is CWE-94 (Improper Control of Generation of Code / Code Injection) in the plugin's front-end profile rendering pipeline. The function get_user_profile_structure() builds a complete front-end profile buffer that includes raw comment excerpts assembled by author_comment_query(); that buffer is then handed wholesale to WordPress's do_shortcode() so that legitimate plugin shortcodes in the profile template continue to work. The only protection is a narrow pass, ppress_neutralize_buffer_shortcodes(), which blocks pp-custom-html and bracket fragments containing HTML delimiters but does not remove or escape other well-formed shortcode syntax. Consequently any shortcode registered by an active plugin or theme survives into the rendered buffer and is executed with whatever attributes the attacker supplied in the comment body, at the moment a visitor loads the profile's Comments tab. The relevant code lives in FrontendProfileTag.php (line 142), FrontendProfileBuilder.php (line 169), the DefaultTemplate.php user-profile drag-and-drop template (line 379), and the helper/global functions file (GlobalFunctions.php, line 1768) of the wp-user-avatar plugin, matching CPE cpe:2.3:a:properfraction:paid_membership_plugin,_ecommerce,_user_registration_form,_login_form,_user_profile_&_restrict_content_-_profilepress. No server-side memory-safety or privilege-escalation primitive is involved; the exposure is the classic shortcode-execution pattern, where untrusted stored content is passed through do_shortcode() without sufficient sanitization, turning comment text into an execution sink for every shortcode installed on the site.
Know when Paid Membership Plugin Ecommerce User Registration Form Login Form User Profile Restrict Content Profilepress 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:L/I:L/A:N
Remotely reachable (AV:N/AC:L) by a registered Subscriber (PR:L); low confidentiality/integrity impact from gated-shortcode data exposure and HTML injection, no availability impact, same security authority (S:U).
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The WP User Avatar / ProfilePress plugin for WordPress is vulnerable to Arbitrary Shortcode Execution in versions up to, and including, 4.17.5. This is due to the get_user_profile_structure() function assembling the front-end profile buffer - which includes raw comment excerpts inlined by author_comment_query() - and passing the entire buffer to do_shortcode() after only a narrow neutralization pass (ppress_neutralize_buffer_shortcodes) that blocks pp-custom-html and bracket fragments containing HTML delimiters but leaves any other well-formed shortcode intact. This makes it possible for authenticated attackers, with Subscriber-level access and above, to inject arbitrary shortcodes (from any active plugin or theme) with attacker-chosen attributes by posting a comment whose body contains the shortcode markup; the shortcode is then executed server-side when any visitor loads the target's front-end profile Comments tab, letting the attacker reach capability-gated or data-returning shortcodes and inject raw HTML markup into a publicly viewable page.
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 Paid Membership Plugin Ecommerce User Registration Form Login Form User Profile Restrict Content Profilepress
View allSensitive information exposure in the ProfilePress WordPress plugin (wp-user-avatar), affecting all versions up to and i
Remote code execution is possible in the ProfilePress WordPress plugin (Paid Membership, Ecommerce, User Registration) i
Authenticated users with subscriber-level access or higher can execute arbitrary WordPress shortcodes through the Profil
Authenticated attackers with subscriber-level access can obtain paid lifetime membership plans in the ProfilePress WordP
Arbitrary shortcode execution in ProfilePress plugin for WordPress (all versions up to 4.16.11) allows unauthenticated a
Reflected cross-site scripting (XSS) in the ProfilePress WordPress plugin versions up to and including 4.17.4 allows una
Arbitrary shortcode execution in ProfilePress (WordPress plugin) versions through 4.16.19 permits authenticated attacker
Missing authorization check in ProfilePress (WordPress membership plugin) versions ≤4.16.12 allows authenticated attacke
EUVD-2026-102825
GHSA-6c6h-gv8v-jjr7
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB