CVE-2026-4666

wpForo Forum <= 2.4.16 - Missing Authorization to Authenticated (Subscriber+) Arbitrary Forum Post Modification via 'guestposting' Parameter

2026-04-16 14:05
Jared Reyes

Strategic Overview

Status
Patched in 3.0.0
Affected Plugin
wpForo Forum
Affected Version
<= 2.4.16
CVSS
6.5Medium
Weakness type
CWE-862 · Missing Authorization
CVE
CVE-2026-4666
View all wpForo Forum vulnerabilities

At a glance

CVE-2026-4666 is a medium-severity Missing Authorization vulnerability in the wpForo Forum WordPress plugin, affecting versions <= 2.4.16. It carries a CVSS score of 6.5 (reachable over the network; low attack complexity; high integrity impact). Exploitation requires an authenticated account at Subscriber level or above. The issue is fixed in version 3.0.0; sites on affected versions should update now. Disclosed April 2026, reported by Jared Reyes.

Vulnerability Overview

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.

Technical Analysis

The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no interaction from a victim user. A successful exploit has high impact on integrity.

CWE-862: Missing Authorization

wpForo Forum <= 2.4.16 carries this weakness at post, and reaching it takes an account at Subscriber level or above. A missing authorization check means a function is reachable by anyone who can reach the endpoint, because the code never asks whether the caller is allowed to perform the action.

Any user who can reach the endpoint gets to run an action reserved for higher-privileged roles, from reading protected data to changing settings or content. For wpForo Forum the fix is 3.0.0: builds <= 2.4.16 are affected, anything from 3.0.0 onward is not.

Remediation

Update to version 3.0.0, or a newer patched version

How does WordSec protect against this?

Because it turns on account access, WordSec's login security is the relevant layer: role-based two-factor, captcha and brute-force limits raise the cost of getting the account this needs. None of that substitutes for the fix: wpForo Forum 3.0.0 closes this, and updating the plugin is the step that ends it.

  • Login Security
  • Alerts

External References

Related records

Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C