Description
The wpForo Forum plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'telegram' profile field in versions up to, and including, 3.1.6. This is due to insufficient input sanitization and output escaping in the profile_update action — the raw $_POST['data'] array is copied into a $custom_fields variable before validate() and sanitize() run, both of which operate only on a parallel $user reference, leaving $custom_fields unsanitized when it is persisted via update_custom_fields(); on render, wpforo_decode() reverses the entity encoding and the value is echoed without escaping in field_wrap_profile(). This makes it possible for authenticated attackers, with subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
Published: 2026-09-25
Score: 6.4 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Stored Cross‑Site Scripting
Action: Apply Patch
AI Analysis

Impact

The wpForo Forum plugin for WordPress contains a stored XSS vulnerability in its 'telegram' profile field that can be abused by authenticated users with subscriber‑level or higher access. The flaw arises because the plugin copies raw POST data into a variable before sanitization, bypassing output escaping when the profile field is rendered. An attacker can embed malicious JavaScript that will execute in the browsers of any visitor to pages that display the affected profile, potentially compromising session tokens, defacing content, or injecting further payloads.

Affected Systems

Affected systems are sites running Tomdever's wpForo Forum plugin for WordPress, versions up to and including 3.1.6. Any installation within that release range is vulnerable; versions newer than 3.1.6 are not confirmed to be affected.

Risk and Exploitability

The vulnerability carries a CVSS score of 6.4, indicating a moderate risk. EPSS is not available, and the issue is not listed in the CISA KEV catalog. Exploitation requires the target to be logged in as a subscriber or higher, so the attack surface depends on the presence of such users. The stored nature means the injected payload persists and affects all users who view the compromised profile, making it a persistent threat. Given its medium severity and the potential impact on many users, timely remediation is advised.

Generated by OpenCVE AI on September 25, 2026 at 09:16 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade wpForo Forum to the latest patched version (≥3.1.7 if available).
  • Disable or remove the 'telegram' profile field for subscriber+ users until a patch is released.
  • Manually escape the 'telegram' field when rendering profiles, for example by applying htmlspecialchars or using WordPress sanitization functions.

Generated by OpenCVE AI on September 25, 2026 at 09:16 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 25 Sep 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 25 Sep 2026 09:15:00 +0000

Type Values Removed Values Added
First Time appeared Tomdever
Tomdever wpforo Forum
Wordpress
Wordpress wordpress
Vendors & Products Tomdever
Tomdever wpforo Forum
Wordpress
Wordpress wordpress

Fri, 25 Sep 2026 07:45:00 +0000

Type Values Removed Values Added
Description The wpForo Forum plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'telegram' profile field in versions up to, and including, 3.1.6. This is due to insufficient input sanitization and output escaping in the profile_update action — the raw $_POST['data'] array is copied into a $custom_fields variable before validate() and sanitize() run, both of which operate only on a parallel $user reference, leaving $custom_fields unsanitized when it is persisted via update_custom_fields(); on render, wpforo_decode() reverses the entity encoding and the value is echoed without escaping in field_wrap_profile(). This makes it possible for authenticated attackers, with subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
Title wpForo Forum <= 3.1.6 - Authenticated (Subscriber+) Stored Cross-Site Scripting via 'telegram' Profile Field
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 6.4, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N'}


Subscriptions

Tomdever Wpforo Forum
Wordpress Wordpress
cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-09-25T13:00:15.892Z

Reserved: 2026-09-18T16:10:42.089Z

Link: CVE-2026-93747

cve-icon Vulnrichment

Updated: 2026-09-25T12:56:00.831Z

cve-icon NVD

Status : Deferred

Published: 2026-09-25T08:16:41.707

Modified: 2026-09-25T14:17:23.930

Link: CVE-2026-93747

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-25T09:30:07Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')