CVE-2026-124422
ŚrednieCVSS 6.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 15 - wyżej niż 15% wszystkich znanych CVE
Streszczenie
SunEditor w wersjach od 3.0.0 do 3.4.0 zawiera podatność typu stored XSS w funkcji html.clean(), która odtwarza iframes z JSON-a data-se-iframe-holder-attrs bez filtrowania srcdoc lub kluczy SRC pisanych wielkimi literami. Atakujący może wstrzyknąć spreparowany HTML poprzez wklejenie, html.set lub html.insert, co prowadzi do wykonania skryptu w kontekście strony hosta, gdy ofiara załaduje lub wklei treść.
Ocena ryzyka
Organizacja korzystająca z edytora SunEditor może stać się ofiarą ataków XSS, które mogą wykraść dane sesji, przejąć konto użytkownika lub wykonać nieautoryzowane działania w imieniu ofiary.
Rekomendacja
Zaktualizuj SunEditor do wersji 3.4.0 lub nowszej, a jeśli to niemożliwe, wdroż dodatkowe filtrowanie treści iframe po stronie serwera i klienta.
Inne podatności w SunEditor
Zobacz wszystkie- CVE-2026-124492Wysokie
SunEditor w wersji przed 3.4.0 zawiera podatność typu stored XSS w funkcji #createBookmarkList edytora ModalAnchorEditor. Tekst nagłówków h1-h6 jest dekodowany z encji i wstawiany do listy zakładek przez innerHTML bez escapowania, co pozwala na wykonanie JavaScriptu po otwarciu modala linku i wpisaniu # w polu URL.
- CVE-2026-124491Średnie
SunEditor przed 3.4.0 zawiera podatność na przechowywany cross-site scripting w metodzie create() wtyczki FileUpload, która przypisuje nazwy plików zwrócone przez serwer do innerHTML bez escapowania. Atakujący mogą przesłać pliki z nazwami zawierającymi HTML, które omijają html.clean() i wykonują JavaScript w przeglądarkach ofiar podczas ładowania treści lub elementów galerii, umożliwiając kradzież sesji.
- CVE-2026-124494Krytyczne
SunEditor w wersji przed 3.4.0 zawiera podatność typu stored XSS, ponieważ funkcja _normalizeURL() w sanitizerze html.clean() dekoduje encje nazwane, takie jak :, do pustego ciągu. Atakujący mogą wstrzyknąć wartości href, np. javascript:, które przechodzą kontrolę _isSafeURL(), ale są dekodowane przez przeglądarki, co prowadzi do wykonania JavaScriptu po kliknięciu zapisanego linku.
- CVE-2026-124493Krytyczne
SunEditor w wersji przed 3.4.0 zawiera podatność typu stored XSS w konstruktorze DocumentType, który wstrzykuje tekst nagłówka do innerHTML bez escapowania HTML. Atakujący mogą zapisać zakodowany encjami HTML w nagłówkach h1-h6, który wykonuje JavaScript podczas inicjalizacji edytorów w trybie document:header, umożliwiając kradzież ciasteczek sesyjnych.
- CVE-2026-59167Krytyczne
SunEditor to lekki i wydajny edytor WYSIWYG w czystym JavaScript bez zależności. Przed wersją 2.47.11, sanityzer w src/lib/core.js nie odrzuca konsekwentnie elementów HTML z przestrzenią nazw lub niestandardowych, co pozwala na pozostawienie atrybutów obsługi zdarzeń na spreparowanych elementach. Gdy aplikacja renderuje treść edytora kontrolowaną przez atakującego, a użytkownik wchodzi w interakcję z elementem, zachowany handler może wykonać skrypt w kontekście przeglądarki aplikacji, umożliwiając trwały cross-site scripting, ujawnienie danych lub nieautoryzowane działania w kontekście przeglądarki. Problem został naprawiony w wersji 2.47.11.
- CVE-2026-54606Wysokie
SunEditor przed wersją 3.1.4 ma podatność w pluginie Embed, która pozwala na wykonanie JavaScript w edytorze. Plugin parsuje surowe HTML embed i odtwarza zewnętrzne elementy script, co prowadzi do XSS. Jeśli aplikacja przechowuje lub odzwierciedla treść bez dodatkowej dezynfekcji, atakujący może wywołać przechowywany lub odzwierciedlony XSS.
Oryginalny opis (angielski, źródło NVD)
SunEditor from 3.0.0 before 3.4.0 contains a stored cross-site scripting vulnerability in html.clean() that rebuilds iframes from data-se-iframe-holder-attrs JSON without filtering srcdoc or uppercase SRC keys. Attackers can inject crafted HTML through paste, html.set, or html.insert to execute script in the host page origin when victims load or paste the content.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

