CVE-2026-18385
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content <= 4.16.19 - Authenticated (Subscriber+) Arbitrary Shortcode Execution via First Name / Last Name Profile Field
- State
- Published
- Severity
- 5.4 Medium
- Published
- Aug 16, 2026
- Updated
- Aug 17, 2026
- Reserved
- Jul 30, 2026
Description
The The Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress plugin for WordPress is vulnerable to arbitrary shortcode execution in all versions up to, and including, 4.16.19. This is due to the software allowing users to execute an action that does not properly validate a value before running do_shortcode. This makes it possible for authenticated attackers, with subscriber-level access and above, to execute arbitrary shortcodes. The partial mitigation introduced via strip_shortcodes() on [profile-first-name] and [profile-last-name] can be bypassed through the [profile-display-name format="first_last_names"] render path, the [profile-bio] render path (which re-fetches the raw description meta), and the double-bracket escape sequence [[tag]], all of which allow attacker-controlled shortcode text to reach the outer do_shortcode() call.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 3.1 | 5.4 Medium | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N | Wordfence |
Weaknesses
- CWE-94 Improper Control of Generation of Code ('Code Injection')
Affected Products
| Product | Versions |
|---|---|
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePressproperfraction |
|
References
- https://www.wordfence.com/threat-intel/vulnerabilities/id/345f3354-d2cb-4b92-a25d-9551a5992919?source=cve
- https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.16.19/src/ShortcodeParser/MemberDirectoryTag.php#L98
- https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.16.19/src/Themes/DragDrop/MemberDirectoryListing.php#L90
- https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.16.19/src/ShortcodeParser/Builder/FrontendProfileBuilder.php#L286
- https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.16.19/src/Classes/RegistrationAuth.php#L170
- https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.16.15/src/ShortcodeParser/MemberDirectoryTag.php#L98
- https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.16.15/src/Themes/DragDrop/MemberDirectoryListing.php#L90
- https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.16.15/src/ShortcodeParser/Builder/FrontendProfileBuilder.php#L286
- https://plugins.trac.wordpress.org/browser/wp-user-avatar/tags/4.16.15/src/Classes/RegistrationAuth.php#L170
- https://plugins.trac.wordpress.org/changeset?reponame=&old=3635466%40wp-user-avatar&new=3635466%40wp-user-avatar
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.