Ninja Forms <= 3.15.5 - Authenticated (Subscriber+) Arbitrary Shortcode Execution via '{wp:user_display_name}' Merge Tag via display_name
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
The Ninja Forms contact form plugin for WordPress is affected. Authenticated users with at least subscriber-level access can exploit a flaw in how a user's display name is handled in form default values, causing the site to run arbitrary shortcodes, which could allow unauthorized actions or content to be executed on the site.
Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.
Read the original description
The The Ninja Forms – Contact Form Builder with Calculators, Quizzes, Signatures & AI Form Builder plugin for WordPress is vulnerable to arbitrary shortcode execution in all versions up to, and including, 3.15.5 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. Exploitation requires that an administrator has configured at least one Ninja Forms field with its Default Value set to the {wp:user_display_name} merge tag on a publicly accessible page; a Subscriber need only set their display_name to a shortcode string via their profile and then visit that page.
Timeline
- CVE published
- First seen by cve.now
Affected versions
- kstover Ninja Forms – Contact Form Builder with Calculators, Quizzes, Signatures & AI Form Builder
through 3.15.5
References 8
plugins.trac.wordpress.org
- browser/ninja-forms/tags/3.15.4/includes/MergeTags/WP.php#L189
- browser/ninja-forms/tags/3.15.4/includes/Display/Render.php#L278
- browser/ninja-forms/tags/3.15.4/includes/Display/Render.php#L268
- browser/ninja-forms/tags/3.15.4/includes/Config/MergeTagsWP.php#L128
- browser/ninja-forms/tags/3.15.4/includes/Abstracts/MergeTags.php#L94
- changeset/3749135/ninja-forms/trunk/includes/Display/Render.php