{"id":"CVE-2023-28439","summary":"ckeditor4 plugins vulnerable to cross-site scripting caused by the editor instance destroying process","details":"CKEditor4 is an open source what-you-see-is-what-you-get HTML editor. A cross-site scripting vulnerability has been discovered affecting Iframe Dialog and Media Embed packages. The vulnerability may trigger a JavaScript code after fulfilling special conditions: using one of the affected packages on a web page with missing proper Content Security Policy configuration; initializing the editor on an element and using an element other than `\u003ctextarea\u003e` as a base; and destroying the editor instance. This vulnerability might affect a small percentage of integrators that depend on dynamic editor initialization/destroy mechanism.\n\nA fix is available in CKEditor4 version 4.21.0. In some rare cases, a security fix may be considered a breaking change. Starting from version 4.21.0, the Iframe Dialog plugin applies the `sandbox` attribute by default, which restricts JavaScript code execution in the iframe element. To change this behavior, configure the `config.iframe_attributes` option. Also starting from version 4.21.0, the Media Embed plugin regenerates the entire content of the embed widget by default. To change this behavior, configure the `config.embed_keepOriginalContent` option. Those who choose to enable either of the more permissive options or who cannot upgrade to a patched version should properly configure Content Security Policy to avoid any potential security issues that may arise from embedding iframe elements on their web page.","aliases":["GHSA-vh5c-xwqv-cv9g"],"modified":"2026-04-10T04:56:56.137713Z","published":"2023-03-22T20:55:00.208Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/28xxx/CVE-2023-28439.json","cwe_ids":["CWE-79"],"cna_assigner":"GitHub_M"},"references":[{"type":"WEB","url":"https://ckeditor.com/cke4/addon/embed"},{"type":"WEB","url":"https://ckeditor.com/cke4/addon/iframe"},{"type":"WEB","url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GWKG2VCPJNETVCDTXU4X6FQ2PO6XCNGN/"},{"type":"WEB","url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/L4ODGOW6PYVOXHQSMWJBOCE6DXWAI33W/"},{"type":"WEB","url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/VCYKD3JZWWA3ESOZG4PHJJEXT4EYIUIQ/"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/28xxx/CVE-2023-28439.json"},{"type":"ADVISORY","url":"https://github.com/ckeditor/ckeditor4/security/advisories/GHSA-vh5c-xwqv-cv9g"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2023-28439"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/ckeditor/ckeditor-releases","events":[{"introduced":"870a561110a23435d78eda377400dca7f64d3bd3"},{"fixed":"6bf35758a39efddcf8ffaa92e2a6cc1cd6696fbd"}],"database_specific":{"versions":[{"introduced":"4.0"},{"fixed":"4.21.0"}]}}],"versions":["4.0.1/standard","4.0/standard","4.1.1/standard","4.1.2/standard","4.1.3/standard","4.1/standard","4.1rc/standard","4.2.1/standard","4.2.2/standard","4.2.3/standard","4.2/standard","4.3.0/standard","4.3.1/standard","4.3.2/standard","standard/4.10.0","standard/4.10.1","standard/4.11.0","standard/4.11.1","standard/4.11.2","standard/4.11.3","standard/4.11.4","standard/4.12.0","standard/4.12.1","standard/4.13.0","standard/4.13.1","standard/4.14.0","standard/4.14.1","standard/4.15.0","standard/4.15.1","standard/4.16.0","standard/4.16.1","standard/4.16.2","standard/4.17.0","standard/4.17.1","standard/4.17.2","standard/4.18.0","standard/4.19.0","standard/4.19.1","standard/4.20.0","standard/4.20.1","standard/4.20.2","standard/4.3.3","standard/4.3.4","standard/4.3.5","standard/4.4.0","standard/4.4.1","standard/4.4.2","standard/4.4.3","standard/4.4.4","standard/4.4.5","standard/4.4.6","standard/4.4.7","standard/4.4.8","standard/4.5.0","standard/4.5.1","standard/4.5.10","standard/4.5.11","standard/4.5.2","standard/4.5.3","standard/4.5.4","standard/4.5.5","standard/4.5.6","standard/4.5.7","standard/4.5.8","standard/4.5.9","standard/4.6.0","standard/4.6.1","standard/4.6.2","standard/4.7.0","standard/4.7.1","standard/4.7.2","standard/4.7.3","standard/4.8.0","standard/4.9.0","standard/4.9.1","standard/4.9.2"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-28439.json"}},{"ranges":[{"type":"GIT","repo":"https://github.com/ckeditor/ckeditor4","events":[{"introduced":"0"},{"fixed":"d529d176d70016ce8bcf51eb87ce7802a05fe5f9"}],"database_specific":{"versions":[{"introduced":"0"},{"fixed":"4.21.0"}]}}],"versions":["4.0","4.0.0","4.0.1","4.1","4.1.0","4.10.0","4.12.0","4.13.0","4.14.0","4.15.0","4.16.0","4.17.0","4.17.1","4.17.2","4.18.0","4.19.0","4.19.1","4.1rc","4.2","4.2.0","4.2.1","4.2.2","4.2.3","4.20.0","4.20.1","4.20.2","4.4.0","4.4.1","4.5.0","4.5.0-beta","4.6.0","4.7.0","4.8.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-28439.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N"}]}