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

CVE-2026-16068: Brizy WordPress Plugin XSS Vulnerability

CVE-2026-16068 is a stored cross-site scripting flaw in Brizy WordPress plugin that allows Author-level users to inject malicious scripts affecting all site visitors. This article covers technical details, affected versions, and mitigation.

Published:

CVE-2026-16068 Overview

CVE-2026-16068 is a stored Cross-Site Scripting (XSS) vulnerability in the Brizy WordPress plugin before version 2.8.19. The plugin fails to restrict who can modify site-global design data and does not sanitize part of that data before rendering it on front-end pages. Authenticated users with Author-level access or higher can store arbitrary JavaScript that executes in the browser of every site visitor, including administrators. The issue is tracked under CWE-79 and affects any WordPress site running a vulnerable Brizy release.

Critical Impact

An Author-level account can inject persistent JavaScript into global design data, hijacking administrator sessions or pivoting to full site takeover.

Affected Products

  • Brizy WordPress plugin versions prior to 2.8.19
  • WordPress installations using Brizy for page building
  • Multi-author WordPress sites where non-administrator accounts exist

Discovery Timeline

  • 2026-08-04 - CVE-2026-16068 published to NVD
  • 2026-08-04 - Last updated in NVD database

Technical Details for CVE-2026-16068

Vulnerability Analysis

The Brizy plugin exposes endpoints that modify site-global design data used across all pages rendered by the builder. Access control on these endpoints is insufficient, permitting any authenticated user from Author role upward to alter the global configuration. The plugin then outputs a portion of this data on front-end pages without applying appropriate output escaping, producing a persistent XSS sink.

Because the payload is stored in shared global data, it executes on every visitor's page load. When an administrator browses the affected site, the injected JavaScript runs in their authenticated session context, enabling account takeover, plugin installation, or arbitrary administrative actions.

Root Cause

Two defects combine to produce the vulnerability. First, the plugin does not verify that the caller has sufficient capability (manage_options or equivalent) to modify global design data. Second, one of the fields written to that data structure is rendered on front-end pages without HTML escaping, violating standard WordPress output sanitization practices such as esc_html() or wp_kses().

Attack Vector

Exploitation requires an authenticated Author-level account and user interaction from a subsequent visitor. The attacker submits a crafted request to the vulnerable Brizy endpoint containing JavaScript embedded in the global design payload. The plugin stores the payload without capability enforcement or sanitization. When any user, including administrators, visits a page rendered by Brizy, the browser parses and executes the attacker-controlled script.

See the WPScan Vulnerability Report for further technical details.

Detection Methods for CVE-2026-16068

Indicators of Compromise

  • Unexpected <script> tags or inline event handlers embedded in Brizy global design records within the wp_options or Brizy custom tables
  • Modifications to Brizy global design data authored by non-administrator accounts
  • Outbound requests from visitor browsers to unfamiliar domains referenced by Brizy-rendered pages

Detection Strategies

  • Audit Brizy global design entries for HTML or JavaScript syntax that would not appear in legitimate design configuration
  • Compare current Brizy configuration data against known-good backups to identify unauthorized modifications
  • Review WordPress activity logs for Author-level users invoking Brizy administrative AJAX or REST endpoints

Monitoring Recommendations

  • Enable WordPress audit logging plugins to record configuration changes and REST API activity per user
  • Deploy a Content Security Policy (CSP) that reports violations, surfacing unexpected inline script execution
  • Monitor web server access logs for POST requests to Brizy endpoints from lower-privileged accounts

How to Mitigate CVE-2026-16068

Immediate Actions Required

  • Update the Brizy WordPress plugin to version 2.8.19 or later on all affected sites
  • Review all existing Author, Editor, and Contributor accounts and remove unused or untrusted users
  • Inspect Brizy global design data for injected scripts and restore clean values where tampering is found

Patch Information

The vendor addressed CVE-2026-16068 in Brizy version 2.8.19 by enforcing capability checks on the affected endpoints and sanitizing the vulnerable field before output. Site operators should upgrade through the WordPress plugin manager or WP-CLI. Refer to the WPScan Vulnerability Report for advisory details.

Workarounds

  • Restrict Author and higher roles to trusted users only until the patch is applied
  • Temporarily deactivate the Brizy plugin on sites that cannot be updated immediately
  • Apply a web application firewall rule blocking script tags and JavaScript event handlers in requests to Brizy endpoints
bash
# Update Brizy via WP-CLI to the fixed version
wp plugin update brizy --version=2.8.19
wp plugin list --name=brizy --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.