TL;DR: 15 maja 2026 roku1 CERT Polska opublikował informacje o trzech podatnościach w komponentach firmy DHTMLX2. Dwie z nich pozwalają na odczyt dowolnych plików z serwera, a jedna, najpoważniejsza, na zdalne wykonanie kodu (RCE). Jeśli twój projekt używa bibliotek DHTMLX Diagram, Gantt lub Scheduler, jesteś potencjalnie zagrożony.
W skrócie: Zaobserwowaliśmy publikację trzech nowych identyfikatorów CVE (Common Vulnerabilities and Exposures, identyfikator publicznie znanej luki) dotyczących oprogramowania DHTMLX. Najpoważniejsza z nich, CVE-2026-415533, może pozwolić na przejęcie kontroli nad serwerem. Pozostałe dwie, CVE-2026-71824 i CVE-2026-415525, mogą prowadzić do wycieku danych. Rekomendujemy natychmiastową weryfikację i aktualizację.
Wektor ataku
Analiza wskazuje na trzy odrębne, choć powiązane wektory. Dwa z nich to klasyczny Path Traversal, trzeci to krytyczne zdalne wykonanie kodu. Wszystkie podatności zostały zgłoszone do CERT Polska6, który koordynował proces ujawnienia z producentem7.
CVE-2026-41553: Zdalne wykonanie kodu w PDF Export Module
To najpoważniejsza z ujawnionych luk. Dotyczy ona komponentu PDF Export Module8 w wersjach od 0.3.3 do 0.7.69, który jest wykorzystywany m.in. w popularnych produktach DHTMLX Gantt i Scheduler10.
Podatność sklasyfikowano jako CWE-78 (Improper Neutralization of Special Elements used in an OS Command, czyli „OS Command Injection”)11. W praktyce oznacza to, że aplikacja niepoprawnie filtruje dane wejściowe przekazywane do poleceń wykonywanych w systemie operacyjnym serwera.
Atakujący, nawet nieuwierzytelniony, może przygotować specjalnie spreparowane żądanie, w którym do parametru data wstrzykuje złośliwy ładunek12. Serwer, ufając tym danym, przekazuje je do interpretera poleceń systemowych, który wykonuje kod. Może to prowadzić bezpośrednio do RCE (Remote Code Execution — zdalne wykonanie kodu na komputerze ofiary), co w konsekwencji może oznaczać pełne przejęcie kontroli nad serwerem, na którym działa aplikacja.
CVE-2026-7182 i CVE-2026-41552: Odczyt plików przez Path Traversal
Te dwie podatności należą do tej samej rodziny błędów: CWE-22 (Improper Limitation of a Pathname to a Restricted Directory, czyli „Path Traversal”)13. Mogą one pozwolić atakującemu na odczyt plików spoza katalogu, w którym powinna operować aplikacja.
-
CVE-2026-7182 dotyczy komponentu
Diagram14 w wersjach od 1.0.0 do 1.1.115. Błąd leży w module eksportu, który nie sanityzuje atrybutusrcw kodzie HTML16. Nieuwierzytelniony atakujący może stworzyć spreparowany diagram, w którym odwołuje się do plików lokalnych na serwerze (np.file:///etc/passwd). Podczas generowania pliku PDF, zawartość tych plików może zostać dołączona do wynikowego dokumentu i udostępniona atakującemu. -
CVE-2026-41552 jest niemal identyczna, ale dotyczy
PDF Export Module17 (wersje 0.3.3 do 0.7.6), używanego przez komponenty Gantt i Scheduler. Tu również brak odpowiedniej sanityzacji HTML może pozwolić na odczyt plików z serwera i umieszczenie ich w generowanym pliku PDF.
Obie luki stanowią poważne zagrożenie dla poufności danych. Mogą posłużyć do kradzieży kodu źródłowego aplikacji, plików konfiguracyjnych z hasłami do baz danych czy kluczy API. To często pierwszy krok do dalszej eskalacji ataku.
Wskaźniki kompromitacji
Publiczne źródła nie dostarczają gotowych wskaźników kompromitacji (IoC — Indicators of Compromise), takich jak adresy IP czy hashe plików. Wykrywanie musi opierać się na analizie logów serwera aplikacyjnego.
Należy szukać nietypowych żądań do endpointów odpowiedzialnych za eksport do PDF. W szczególności:
- Dla RCE (CVE-2026-41553): W logach żądań HTTP szukaj nietypowych, złożonych lub obfuskowanych ładunków w parametrze
datawysyłanych do modułu eksportu. Obecność fragmentów kodu JavaScript, takich jakrequire('child_process'), jest jednoznacznym sygnałem próby ataku. - Dla Path Traversal (CVE-2026-7182, CVE-2026-41552): W logach szukaj żądań eksportu zawierających w ładunku HTML sekwencje
../lub odwołania do ścieżek bezwzględnych w atrybutachsrc, np.src="file:///...".
Co zrobić w 24-48h
Zagrożenie jest realne, zwłaszcza w przypadku publicznie dostępnych aplikacji wykorzystujących podatne komponenty. Rekomendujemy następujące kroki:
-
Identyfikacja zasobów: Przeprowadź audyt swoich aplikacji webowych. Sprawdź, czy korzystasz z bibliotek DHTMLX, w szczególności
Diagram,GanttlubScheduler14. To popularne narzędzia w polskich software house’ach i działach IT tworzących wewnętrzne systemy do zarządzania projektami, rezerwacji zasobów czy wizualizacji danych. -
Weryfikacja wersji: Jeśli używasz tych komponentów, sprawdź ich wersje. Podatne są:
-
Natychmiastowa aktualizacja: Producent, firma DHTMLX, opublikował wersje oprogramowania wolne od opisanych luk. Należy bezwzględnie zaktualizować komponenty do najnowszych, bezpiecznych wersji. Jest to jedyna skuteczna metoda mitygacji.
-
Analiza logów: Przejrzyj logi serwerów aplikacyjnych i webowych w poszukiwaniu śladów wykorzystania podatności, zgodnie z wskazówkami z poprzedniej sekcji. Szczególną uwagę zwróć na okres od daty publikacji alertu1.
-
Wzmocnienie konfiguracji (jeśli aktualizacja jest niemożliwa): W sytuacji, gdy natychmiastowa aktualizacja nie jest możliwa, należy rozważyć tymczasowe wyłączenie funkcjonalności eksportu do PDF lub wdrożenie reguł na poziomie WAF (Web Application Firewall) blokujących żądania z podejrzanymi payloadami. To jednak tylko rozwiązanie tymczasowe i nie zastępuje aktualizacji.
Polskie firmy, zwłaszcza te podlegające pod dyrektywę NIS2, powinny potraktować ten alert jako test swoich procedur zarządzania podatnościami. Sprawna identyfikacja, ocena ryzyka i wdrożenie poprawki to kluczowe elementy dojrzałości w obszarze cyberbezpieczeństwa.
Atrybucja zgłoszenia
Podatności zostały zgłoszone do CERT Polska. Zespół ten koordynował proces odpowiedzialnego ujawnienia (coordinated disclosure) we współpracy z producentem oprogramowania, firmą DHTMLX7.
Źródła
Zobacz też
- Luka w Chrome (CVE-2026-9120) pozwala na zdalne wykonanie kodu
- Krytyczna luka RCE w SzafirHost od KIR (CVE-2026-44088)
- Krytyczna luka w Thunderbird
Footnotes
-
Data publikacji informacji o podatnościach — 15 maja 2026 — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩ ↩2
-
CERT Polska opisał trzy podatności w komponentach firmy DHTMLX — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
CVE-2026-41553 — OS Command Injection / RCE w PDF Export Module — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
CVE-2026-7182 — Path Traversal w komponencie Diagram — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
CVE-2026-41552 — Path Traversal w PDF Export Module — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
Podatności zgłoszone do CERT Polska (zgłaszający: Łukasz Jaworski i Tomasz Holeksa, Pentest Limited) — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
CERT Polska koordynował proces ujawnienia z producentem — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩ ↩2
-
CVE-2026-41553 dotyczy komponentu PDF Export Module — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
PDF Export Module — podatne wersje od 0.3.3 do 0.7.6 — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩ ↩2
-
PDF Export Module wykorzystywany w produktach DHTMLX Gantt i Scheduler — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
Podatność sklasyfikowana jako CWE-78 (OS Command Injection) — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
RCE umożliwia brak sanityzacji parametru
data— https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩ -
CVE-2026-7182 i CVE-2026-41552 sklasyfikowane jako CWE-22 (Path Traversal) — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
-
CVE-2026-7182 dotyczy komponentu Diagram — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩ ↩2
-
Diagram — podatne wersje od 1.0.0 do 1.1.1 — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩ ↩2
-
Path Traversal w atrybucie
srcz powodu braku sanityzacji HTML w module eksportu — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩ -
CVE-2026-41552 dotyczy PDF Export Module — https://cert.pl/posts/2026/05/CVE-2026-7182/ ↩
// Komentarze ...
Dodaj komentarz