Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
Lifecycle Timeline
4DescriptionCVE.org
The wpForo Forum plugin for WordPress is vulnerable to unauthorized modification of data due to the use of extract($args, EXTR_OVERWRITE) on user-controlled input in the edit() method of classes/Posts.php in all versions up to, and including, 2.4.16. The post_edit action handler in Actions.php passes $_REQUEST['post'] directly to Posts::edit(), which calls extract($args, EXTR_OVERWRITE). An attacker can inject post[guestposting]=1 to overwrite the local $guestposting variable, causing the entire permission check block to be skipped. The nonce check uses a hardcoded wpforo_verify_form action shared across all 8 forum templates, so any user who can view any forum page obtains a valid nonce. This makes it possible for authenticated attackers, with Subscriber-level access and above, to edit the title, body, name, and email fields of any forum post, including posts in private forums, admin posts, and moderator posts. Content passes through wpforo_kses() which strips JavaScript but allows rich HTML.
AnalysisAI
wpForo Forum plugin for WordPress allows authenticated Subscriber-level attackers to modify arbitrary forum posts via variable extraction abuse and weak nonce validation. Attackers exploit the extract($args, EXTR_OVERWRITE) function in the edit() method to bypass permission checks, enabling unauthorized modification of post titles, bodies, names, and emails across all forum visibility levels including private forums and admin/moderator posts. A hardcoded nonce shared across all forum templates allows any user viewing any forum page to obtain a valid nonce, making exploitation trivial for authenticated users.
Technical ContextAI
The vulnerability stems from unsafe use of PHP's extract() function with the EXTR_OVERWRITE flag, which converts array keys into variable names and overwrites existing variables. When user-controlled $_REQUEST['post'] data flows directly from the post_edit action handler in Actions.php (line 773) to Posts::edit() in classes/Posts.php (lines 283-285), an attacker can inject a guestposting parameter that overwrites the local variable used in permission validation logic. The nonce validation in includes/functions.php (line 532) uses a single hardcoded wpforo_verify_form action name across all eight forum templates, meaning a nonce captured from viewing any forum page remains valid for modifying any post. This violates the principle of least privilege for both variable scope and CSRF token specificity. The wpforo_kses() output filter strips JavaScript but permits HTML, allowing attribute injection while preventing direct script execution.
RemediationAI
Update wpForo Forum to version 2.4.17 or later immediately. The vendor has released a patched version available at https://ti.wordfence.io/vendors/patch/1885/download and confirmed via the plugin repository changelog (https://plugins.trac.wordpress.org/changeset?old_path=%2Fwpforo/tags/2.4.16&new_path=%2Fwpforo/tags/2.4.17). If immediate update is impossible, enforce additional access controls by restricting the post_edit action to Editor and Administrator roles only through a WordPress must-use plugin or site-hardening mechanism; however, this prevents legitimate Subscribers from editing their own posts and is not a complete fix. Alternatively, implement a Web Application Firewall rule to block POST requests containing post[guestposting] parameters, though this may fail if the variable name changes in workarounds. The complete fix requires patching to eliminate the unsafe extract() usage and implement post-type and role-specific nonce validation.
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
NetAlertX (formerly PiAlert) versions 23.01.14 through 24.x before 24.10.12 allow unauthenticated command injection thro
The GiveWP - Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all
Same weakness CWE-862 – Missing Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-23347
GHSA-gq2v-mwv7-cvm2