Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-16949

CVE-2026-16949: Term Pages WordPress Plugin SQLi Flaw

CVE-2026-16949 is a SQL injection vulnerability in the Term Pages WordPress plugin that allows unauthenticated attackers to execute malicious SQL queries. This article covers technical details, affected versions, and mitigation.

Updated:

CVE-2026-16949 Overview

CVE-2026-16949 is an unauthenticated SQL injection vulnerability in the Term Pages WordPress plugin versions before 2.0.0. The plugin fails to sanitize and escape a user-controlled parameter before using it in a SQL statement. Attackers can inject arbitrary SQL syntax through network requests without authentication or user interaction. The flaw is categorized under CWE-89 (Improper Neutralization of Special Elements used in an SQL Command).

Critical Impact

Unauthenticated remote attackers can manipulate database queries against WordPress sites running vulnerable versions of the Term Pages plugin, potentially exposing stored data across security scopes.

Affected Products

  • Term Pages WordPress plugin versions prior to 2.0.0
  • WordPress sites with the Term Pages plugin installed and activated
  • All hosting environments serving the vulnerable plugin regardless of underlying platform

Discovery Timeline

  • 2026-08-10 - CVE-2026-16949 published to NVD
  • 2026-08-11 - Last updated in NVD database

Technical Details for CVE-2026-16949

Vulnerability Analysis

The Term Pages plugin accepts a parameter from HTTP requests and concatenates it directly into a SQL query without proper sanitization or parameterization. Because the vulnerable code path is reachable prior to authentication, any remote actor can send crafted requests to inject SQL fragments. The scope is marked as changed, meaning a successful attack can affect resources beyond the vulnerable component's security authority. Attackers commonly leverage this class of flaw to extract stored data through UNION-based or boolean/time-based blind techniques.

Root Cause

The root cause is missing input validation and improper query construction. The plugin builds a SQL statement using string concatenation with attacker-controlled input rather than using WordPress $wpdb->prepare() with placeholders. This allows special SQL characters such as quotes, comments, and statement separators to alter the query's intended structure.

Attack Vector

Exploitation occurs over the network against the WordPress front-end or plugin-registered endpoints. No credentials or user interaction are required. An attacker submits an HTTP request containing malicious SQL syntax in the vulnerable parameter. The server evaluates the tainted query against the WordPress database, returning data or discrepancies observable in the response. See the WPScan Vulnerability Information entry for additional technical context.

Detection Methods for CVE-2026-16949

Indicators of Compromise

  • HTTP request logs containing SQL keywords such as UNION SELECT, SLEEP(, BENCHMARK(, information_schema, or encoded variants targeting Term Pages plugin routes
  • Unusual response time spikes on plugin endpoints consistent with time-based blind SQL injection probes
  • Database error strings referencing MySQL/MariaDB syntax surfaced in application responses or error logs

Detection Strategies

  • Inspect web server access logs for requests to Term Pages plugin URIs carrying suspicious query string or POST parameters
  • Deploy WAF rules that flag SQL metacharacters and known SQLi payloads directed at WordPress plugin endpoints
  • Correlate outbound traffic anomalies from the web server with inbound SQLi indicators to identify data exfiltration

Monitoring Recommendations

  • Enable and centralize WordPress, PHP, and MySQL query logs to establish a baseline of legitimate plugin traffic
  • Alert on wpdb errors and unexpected schema access such as reads against wp_users from plugin contexts
  • Track plugin version inventory across WordPress fleets to identify hosts running Term Pages below 2.0.0

How to Mitigate CVE-2026-16949

Immediate Actions Required

  • Update the Term Pages plugin to version 2.0.0 or later on every affected WordPress installation
  • Deactivate and remove the plugin if an immediate update is not possible
  • Rotate WordPress administrator passwords and API keys if evidence of exploitation exists

Patch Information

The vendor addressed the SQL injection in Term Pages version 2.0.0. The fix introduces proper input sanitization and parameterized query handling for the vulnerable parameter. Refer to the WPScan advisory for version details.

Workarounds

  • Place the WordPress site behind a web application firewall with SQL injection rule sets enabled until patching completes
  • Restrict access to Term Pages plugin endpoints via server-level rules where feasible
  • Apply least-privilege database credentials so the WordPress database user cannot access unrelated schemas
bash
# Update the plugin via WP-CLI on each affected host
wp plugin update term-pages --version=2.0.0
wp plugin list --name=term-pages --fields=name,status,version

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.