GutenKit <= 2.5.0 - Authenticated (Contributor+) Arbitrary CSS Injection
Strategic Overview
- Status
- Patched in 2.5.1
- Affected Version
<= 2.5.0- CVSS
- 4.3Medium
- Weakness type
- CWE-74 · Improper Neutralization of Special Elements in Output Used by a Downstream Component
- CVE
CVE-2026-19698
At a glance
CVE-2026-19698 is a medium-severity Improper Neutralization of Special Elements in Output Used by a Downstream Component vulnerability in the GutenKit WordPress plugin, affecting versions <= 2.5.0. It carries a CVSS score of 4.3 (reachable over the network; low attack complexity). Exploitation requires an authenticated account at Contributor level or above. The issue is fixed in version 2.5.1; sites on affected versions should update now. Disclosed September 2026, reported by Haitam Lazaar.
Vulnerability Overview
The GutenKit plugin for WordPress is vulnerable to CSS Injection in all versions up to, and including, 2.5.0. This is due to missing capability check on the saving user before persisting CSS style settings to post meta and block attributes, and missing trust validation before rendering those settings as an inline stylesheet. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary CSS into pages served to site visitors, enabling defacement, interface redressing, and forcing external resource loads.
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.
CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component
The product constructs all or part of a command, data structure, or record using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify how it is parsed or interpreted when it is sent to a downstream component.
Remediation
Update to version 2.5.1, or a newer patched version
How does WordSec protect against this?
An attacker needs Contributor access first, so the firewall sees the attempt as traffic from a logged-in account: WordSec's web application firewall inspects request payloads before WordPress loads them. None of that substitutes for the fix: GutenKit 2.5.1 closes this, and updating the plugin is the step that ends it.
- Firewall
- Alerts
External References
Related records
Other vulnerabilities in GutenKit – Page Builder Blocks, Patterns, and Templates for Gutenberg Block Editor
- 9.8CVE-2024-9234: GutenKit <= 2.1.0 Arbitrary File Upload
CVE-2024-9234 - 6.4CVE-2026-2573: GutenKit <= 2.4.4 Stored Cross-Site Scripting
CVE-2026-2573 - 6.4CVE-2026-19697: GutenKit Stored XSS
CVE-2026-19697 - 6.4CVE-2025-57900: GutenKit <= 2.4.2 Stored Cross-Site Scripting
CVE-2025-57900 - 6.4CVE-2025-46253: GutenKit <= 2.2.2 Stored Cross-Site Scripting
CVE-2025-46253 - 5.3CVE-2026-15827: GutenKit <= 2.4.12 Unauthenticated Info Exposure
CVE-2026-15827 - 4.3CVE-2026-19699: GutenKit Information Exposure
CVE-2026-19699
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C