
Wprowadzenie do problemu / definicja
Zespół bezpieczeństwa Drupal opublikował poprawki dla krytycznej podatności zdalnego wykonania kodu oznaczonej jako CVE-2026-108097. Problem dotyczy modułu Field UI w rdzeniu systemu, który odpowiada za administracyjne zarządzanie polami oraz ich prezentacją w interfejsie.
Choć sama luka nie jest bezpośrednio osiągalna wyłącznie przez standardową instalację rdzenia, istnieją znane scenariusze eksploatacji z udziałem modułów dodatkowych oraz kodu niestandardowego. Szczególnie istotne jest to, że przynajmniej jedna ze ścieżek ataku może zostać wykorzystana bez uwierzytelnienia.
W skrócie
- Drupal załatał krytyczną podatność RCE w wersjach 11.4.10, 11.3.19 oraz 10.6.19.
- Luka została sklasyfikowana jako krytyczna z oceną 19/25.
- Problem dotyczy modułu Field UI w rdzeniu systemu.
- Eksploatacja może zależeć od obecności modułów contributed lub własnego kodu.
- Dla środowisk, które nie mogą wdrożyć aktualizacji od razu, tymczasową mitigacją jest odinstalowanie modułu
field_ui.
Kontekst / historia
Drupal od lat ogranicza możliwość uruchamiania niezaufanych callbacków w systemie renderowania, ponieważ ten obszar architektury historycznie wiązał się z ryzykiem arbitralnego wykonania kodu. W tym przypadku problem powrócił w logice administracyjnej modułu Field UI, który korzysta z render arrays do budowy interfejsów zarządzania polami.
Podatność została ujawniona 14 października 2026 roku w komunikacie SA-CORE-2026-014. Obejmuje wersje od 8.9.0 do 10.6.18, od 11.0.0 do 11.3.18, od 11.4.0 do 11.4.9, a także wydania 12.0.0 alpha i beta przed 12.0.0-beta2. Projekt zaznaczył jednocześnie, że starsze, niewspierane linie nie otrzymają standardowych poprawek bezpieczeństwa.
Tego samego dnia opublikowano również niezależne ostrzeżenie dla modułu Entity List, które opisuje podobny profil ryzyka i analogiczne warunki eksploatacji. To pokazuje, że problem nie dotyczy wyłącznie pojedynczej implementacji, lecz szerszej klasy błędów związanych z dynamicznym wywoływaniem callbacków.
Analiza techniczna
Źródło podatności znajduje się w sposobie, w jaki Field UI budował tabele administracyjne przy użyciu render arrays. Przed wdrożeniem poprawki etap pre-render mógł wywoływać PHP callable przekazany w atrybucie #region_callback dla wiersza tabeli. Jeżeli atakujący był w stanie doprowadzić do kontrolowanego ustawienia tej właściwości przez zależność obejmującą moduł dodatkowy lub kod niestandardowy, możliwe było wykonanie wskazanego callbacku.
Z punktu widzenia bezpieczeństwa był to niebezpieczny przepływ danych do funkcji wykonawczej. Standardowe zabezpieczenia rendererów w Drupal miały ograniczać uruchamianie niezaufanych callbacków, jednak w tym przypadku wywołanie następowało pośrednio wewnątrz zaufanego kroku pre-render. Taka konstrukcja de facto omijała zamierzoną warstwę ochronną.
Poprawka usuwa mechanizm dynamicznego wywoływania callbacku i zastępuje go bezpieczniejszą logiką odczytu regionu z danych wiersza oraz wartości domyślnych z konfiguracji tabeli. Dzięki temu zmniejszono możliwość przekazania do procesu renderowania parametrów prowadzących do wykonania nieautoryzowanego kodu.
Nie każdy system Drupal będzie podatny w identycznym stopniu, ponieważ praktyczna eksploatacja zależy od realnej ekspozycji podatnej ścieżki przez moduły contributed lub własne rozszerzenia. Jednak sama informacja o istnieniu co najmniej jednej ścieżki bez logowania istotnie podnosi priorytet aktualizacji.
Konsekwencje / ryzyko
Najpoważniejszym skutkiem skutecznego wykorzystania luki jest zdalne wykonanie kodu na serwerze aplikacyjnym. W praktyce może to prowadzić do pełnego przejęcia witryny, modyfikacji treści, kradzieży danych z bazy, wdrożenia webshella, a także dalszego ruchu bocznego w infrastrukturze.
Podwyższone ryzyko dotyczy przede wszystkim organizacji, które utrzymują rozbudowany ekosystem modułów dodatkowych, posiadają własne rozszerzenia ingerujące w render arrays, opóźniają wdrażanie aktualizacji bezpieczeństwa lub działają na niewspieranych gałęziach platformy.
- przejęcie kontroli nad aplikacją webową,
- naruszenie poufności i integralności danych,
- instalacja trwałych mechanizmów dostępu,
- wykorzystanie serwera do dalszych ataków,
- wzrost ryzyka incydentu w całym środowisku Drupal.
Dodatkowym czynnikiem ryzyka jest krótki czas, jaki zwykle upływa między publikacją advisory a pojawieniem się prób wykorzystania w środowiskach produkcyjnych. Nawet jeśli publiczny exploit nie był jeszcze szeroko dostępny w chwili publikacji ostrzeżenia, administratorzy powinni zakładać szybki wzrost aktywności skanującej i testowej.
Rekomendacje
Priorytetem powinno być niezwłoczne przejście na poprawione wersje 11.4.10, 11.3.19 lub 10.6.19, zależnie od używanej gałęzi. Organizacje pozostające na niewspieranych wydaniach powinny potraktować ten incydent jako sygnał do przyspieszonej migracji do wspieranej linii.
- natychmiast zaktualizować Drupal core do wersji zawierającej poprawkę,
- przeprowadzić przegląd modułów contributed związanych z zarządzaniem polami i renderowaniem tabel,
- zweryfikować obecność modułu Entity List i w razie potrzeby podnieść go do bezpiecznej wersji,
- tymczasowo odinstalować
field_ui, jeśli pełna aktualizacja nie jest jeszcze możliwa, - przeanalizować własny kod pod kątem użycia
#region_callbackoraz podobnych dynamicznych mechanizmów, - przetestować strony administracyjne po wdrożeniu poprawek,
- monitorować logi HTTP, zdarzenia PHP i anomalie w panelu administracyjnym,
- rozważyć dodatkowe zabezpieczenia, takie jak WAF i segmentacja dostępu do interfejsów administracyjnych.
W środowiskach o podwyższonym profilu ryzyka warto również przeprowadzić polowanie na oznaki kompromitacji. Należy zweryfikować nowe pliki w katalogach aplikacji, nietypowe zadania harmonogramu, podejrzane połączenia wychodzące oraz artefakty mogące świadczyć o utrwaleniu dostępu przez atakującego.
Podsumowanie
CVE-2026-108097 to krytyczna podatność RCE w Drupal core, której znaczenie wynika nie tylko z wysokiej oceny ryzyka, ale również z możliwości wystąpienia nieautoryzowanej ścieżki ataku przy określonych kombinacjach modułów i kodu własnego. Poprawka eliminuje niebezpieczny wzorzec dynamicznego wywoływania callbacków w module Field UI.
Dla administratorów oznacza to konieczność pilnej aktualizacji, przeglądu rozszerzeń dodatkowych oraz audytu własnych implementacji. To incydent, który należy traktować jako zagrożenie dla całego stosu aplikacyjnego, a nie wyłącznie pojedynczego komponentu rdzenia.
Źródła
- Drupal core – Critical – Remote code execution – SA-CORE-2026-014 — https://www.drupal.org/sa-core-2026-014
- Drupal 11.4.10 — https://www.drupal.org/project/drupal/releases/11.4.10
- Entity List – Critical – Remote code execution – SA-CONTRIB-2026-218 — https://www.drupal.org/sa-contrib-2026-218
- Security advisories for Drupal core — https://www.drupal.org/security/core
- Drupal Patches Critical Field UI Flaw With Unauthenticated RCE Path via Contributed Modules — https://thehackernews.com/2026/10/drupal-patches-critical-core-rce-flaw.html