Description
The BetterDocs – AI Documentation, Knowledge Base, Docs, Wikis, FAQ with Chatbot plugin for WordPress is vulnerable to generic SQL Injection via the 'lang' parameter in all versions up to, and including, 4.6.0 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with custom-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. Exploitation requires a supported multilingual plugin (WPML, Polylang, qTranslate, Weglot, or TranslatePress) to be active on the site, as the vulnerable code path is gated by Helper::is_multilingual_active().
Published: 2026-07-10
Score: 6.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The BetterDocs plugin for WordPress contains a classic SQL injection flaw in the 'lang' parameter. Versions up to and including 4.6.0 use the supplied value without proper escaping or preparation, inserting it directly into a database query. Because this code path is only executed when a multilingual plugin such as WPML, Polylang, qTranslate, Weglot, or TranslatePress is active, the vulnerability is gated by that requirement. An authenticated user with a custom‑level or higher capability can send a crafted 'lang' value that appends arbitrary SQL statements, enabling the attacker to read or modify database contents.

Affected Systems

WordPress sites that install BetterDocs at or below version 4.6.0 and have one of the supported multilingual plugins active are affected. Only users who are logged in with custom‑level or higher privileges can exploit the flaw, making it an authenticated-only vulnerability.

Risk and Exploitability

The CVSS score of 6.5 marks the flaw as moderately severe, while the EPSS score of less than 1% indicates a low likelihood of widespread exploitation at present. The vulnerability is not listed in the CISA KEV catalog. Because exploitation requires both an authenticated custom‑level user and an active multilingual plugin, the risk surface is narrower than for a public SQL injection, yet the potential impact—exfiltration of usernames, passwords, or other sensitive data—remains significant for affected sites.

Generated by OpenCVE AI on August 1, 2026 at 13:07 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the BetterDocs plugin to a release that sanitizes the 'lang' parameter, such as any post‑4.6.0 version.
  • If an immediate patch cannot be applied, temporarily disable all active multilingual plugins (WPML, Polylang, qTranslate, Weglot, or TranslatePress) or block requests containing the 'lang' parameter with a WAF rule.
  • Restrict WordPress roles so that only trusted administrators hold custom‑level or higher capabilities, and consider removing the custom role if it is not required.
  • Monitor the database for anomalous SELECT, INSERT, UPDATE, or DROP statements and implement logging or alerting to detect possible exploitation.

Generated by OpenCVE AI on August 1, 2026 at 13:07 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 10 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Fri, 10 Jul 2026 09:00:00 +0000

Type Values Removed Values Added
Description The BetterDocs – AI Documentation, Knowledge Base, Docs, Wikis, FAQ with Chatbot plugin for WordPress is vulnerable to generic SQL Injection via the 'lang' parameter in all versions up to, and including, 4.6.0 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with custom-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. Exploitation requires a supported multilingual plugin (WPML, Polylang, qTranslate, Weglot, or TranslatePress) to be active on the site, as the vulnerable code path is gated by Helper::is_multilingual_active().
Title BetterDocs <= 4.6.0 - Authenticated (Custom+) SQL Injection via 'lang' Parameter
Weaknesses CWE-89
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-07-10T17:59:24.023Z

Reserved: 2026-07-08T17:03:33.248Z

Link: CVE-2026-15104

cve-icon Vulnrichment

Updated: 2026-07-10T17:58:58.160Z

cve-icon NVD

Status : Deferred

Published: 2026-07-10T09:16:53.407

Modified: 2026-07-10T19:17:20.210

Link: CVE-2026-15104

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-01T13:15:03Z

Weaknesses
  • CWE-89

    Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')