
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-25581 is a DOM-based Cross-Site Scripting (XSS) vulnerability in SCEditor, a lightweight WYSIWYG BBCode and XHTML editor, caused by insufficient sanitization of configuration options passed to sceditor.create(). It affects all SCEditor versions up to and including 3.2.0 (npm package sceditor). The vulnerability was published and disclosed on February 6, 2026, with a fix released in version 3.2.1. It carries a CVSS v3.1 base score of 5.4 (Medium) (Github Advisory, SCEditor Advisory).
The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation — Cross-site Scripting). When configuration options such as emoticons, charset, or style are passed to sceditor.create() without sanitization, attacker-controlled values are rendered directly into the DOM. For example, a malicious emoticon URL like x" onerror="window.__xss = true is injected into an <img> element's src attribute without escaping, triggering JavaScript execution. The fix (commit 5733aed) adds URI scheme validation for emoticon URLs, HTML entity escaping for the style option, and regex-based allowlisting for the charset option (SCEditor Advisory, Patch Commit).
Successful exploitation allows an attacker to execute arbitrary JavaScript in the context of the victim's browser session within the affected web application. This can lead to session hijacking, credential theft, unauthorized actions performed on behalf of the user, or manipulation of page content. Availability is not impacted, but both confidentiality and integrity are partially compromised (Github Advisory).
A proof-of-concept exploit is publicly available in the GitHub Security Advisory, demonstrating injection via the emoticons.dropdown configuration option. Exploitation requires the attacker to have some level of privilege to control configuration options passed to sceditor.create() (e.g., an authenticated user or administrator), and also requires user interaction (a victim must load the affected page). There is no evidence of in-the-wild exploitation at this time. The EPSS score is approximately 0.016% (4th percentile), indicating low near-term exploitation probability. This CVE is not listed in the CISA KEV catalog (Github Advisory, SCEditor Advisory).
sceditor) version 3.2.0 or earlier where user-supplied or attacker-influenced data can be passed as configuration options to sceditor.create().src attribute context:sceditor.create(textarea, {
emoticons: {
dropdown: {
':)': { url: 'x" onerror="window.__xss = true' }
}
}
});<img> tag with the unsanitized src, the browser fires the onerror event handler, executing the injected JavaScript in the victim's browser context, enabling session theft, credential harvesting, or further attacks (SCEditor Advisory).onerror, javascript:, or HTML event handler strings).window.__xss variable assignments in browser console; DOM inspection revealing <img> tags with malformed or event-handler-injected src attributes within the SCEditor iframe or container.Upgrade SCEditor to version 3.2.1 or later, which implements proper sanitization of configuration options including URI scheme validation for emoticon URLs, HTML entity escaping for the style option, and regex allowlisting for charset (Patch Commit). As a workaround prior to patching, restrict all configuration options passed to sceditor.create() to trusted, hardcoded values and avoid passing any user-supplied data as configuration parameters. Implementing a strict Content Security Policy (CSP) can also reduce the impact of XSS exploitation (Github Advisory).
The vulnerability was reported by security researcher sofianeelhor and published by the SCEditor maintainer (samclarke) on February 6, 2026, via GitHub Security Advisories. No significant broader media coverage or notable community commentary beyond the advisory itself has been identified (SCEditor Advisory).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."