CVE-2026-116688 in CKEditorinfo

Summary

by MITRE • 10/27/2026

CKEditor 5 is a modern JavaScript rich-text editor with an MVC architecture. From 45.0.0 until 47.7.4 and 48.5.1, the engine uses a vulnerable es-toolkit version whose prototype-pollution behavior can be reached while CKEditor processes incoming style attribute values. Crafted editor content can thereby cause unauthorized JavaScript execution in the browser. This issue is fixed in versions 47.7.4 and 48.5.1.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Analysis

by VulDB Data Team • 10/27/2026

CKEditor 5 represents a modern, modular rich-text editing solution built on an MVC architecture, widely deployed across web applications to facilitate user-generated content creation. The vulnerability identified within this ecosystem stems from the integration of a third-party utility library known as es-toolkit. Specifically, versions ranging from 45.0.0 up through 47.7.4 and 48.5.1 incorporate an outdated or misconfigured version of this library that exhibits prototype pollution vulnerabilities. Prototype pollution is a critical class of security flaws where an attacker can modify the properties of JavaScript object prototypes, effectively altering the behavior of all objects in the application that inherit from those prototypes. In the context of CKEditor 5, this flaw becomes exploitable during the processing of incoming style attribute values within editor content.

The technical mechanism behind this vulnerability involves the way CKEditor parses and sanitizes HTML styles before rendering them to the DOM. When a user inputs or pastes content containing specially crafted style attributes, the internal parsing logic interacts with the vulnerable es-toolkit functions. These functions fail to adequately validate property names during deep object merging operations, allowing an attacker to inject properties such as _proto_ into JavaScript objects. By manipulating these prototypes, an attacker can introduce malicious code execution paths that bypass standard security controls. This is particularly dangerous because it occurs within the browser environment where CKEditor operates, leveraging the trust relationship between the user and the web application interface.

The operational impact of this vulnerability is severe, as it leads to unauthorized JavaScript execution in the victim's browser. Once prototype pollution is achieved through crafted editor content, an attacker can potentially execute arbitrary scripts with the same privileges as legitimate application code. This capability enables a range of malicious activities including session hijacking, where attackers steal authentication tokens or cookies; cross-site scripting attacks that deface web pages or redirect users to phishing sites; and data exfiltration by reading sensitive information stored in local storage or accessed via DOM APIs. Since CKEditor is often embedded in content management systems and enterprise applications handling confidential documents, the compromise of client-side integrity can have significant downstream consequences for data confidentiality and availability.

This vulnerability aligns with CWE-1325, which covers susceptible to prototype pollution, and maps directly to MITRE ATT&CK technique T1059, specifically sub-technique 007 involving JavaScript execution. The attack vector is classified as remote code execution via input validation failure, emphasizing the importance of robust sanitization pipelines in rich-text editors that process untrusted user input. Mitigation strategies must prioritize immediate upgrading to patched versions, specifically CKEditor 47.7.4 and 48.5.1 or later, which address the underlying prototype pollution issue within the es-toolkit dependency. For organizations unable to upgrade immediately, implementing strict Content Security Policy headers can help mitigate some effects by restricting script execution sources, although this is not a complete solution given that the attack originates from trusted domains hosting the editor itself. Additionally, developers should review any custom plugins or extensions using similar object merging patterns and ensure they employ safe deep-merge implementations that check for prototype properties before assignment. Regular dependency auditing tools should be integrated into CI/CD pipelines to detect vulnerable third-party libraries like es-toolkit early in the development lifecycle, preventing such vulnerabilities from reaching production environments.

Responsible

GitHub M

Reservation

10/26/2026

Disclosure

10/27/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

very low

Sources

Want to know what is going to be exploited?

We predict KEV entries!