Przejdź do treści
Luki i patche

Ponad 700 stron na Ghost CMS zainfekowanych fałszywą Captchą. Administratorzy, sprawdźcie swoje instalacje

Atakujący wykorzystali podatność SQL injection w Ghost CMS, by przejąć ponad 700 domen i wstrzyknąć złośliwy kod. Ofiary są nakłaniane do ręcznego uruchomienia malware przez fałszywą weryfikację Cloudflare. Administratorzy powinni pilnie zaktualizować system i sprawdzić treść artykułów.

4 min read
An abstract digital landscape with a dark cloud of tangled cables hovering over a row of stylized server towers, while a single glowing padlock hangs in the foreground, partially obscured by a translucent shield.

Badacze z XLab wykryli kampanię wymierzoną w strony wykorzystujące system zarządzania treścią Ghost CMS. Atakujący wykorzystali podatność SQL injection (CVE-2026-26980) do kradzieży klucza API, a następnie masowo modyfikowali treści, wstrzykując złośliwy kod JavaScript. Łącznie zainfekowano ponad 700 domen, w tym strony uczelni, fintechów i mediów. Ofiary są nakłaniane do ręcznego uruchomienia malware poprzez fałszywą weryfikację Cloudflare.

Jak doszło do ataku? Mechanizm wykorzystania podatności

Źródłem problemu jest podatność CVE-2026-26980, czyli SQL injection, która pozwala atakującym odczytać zawartość baz danych – w tym klucz API. Ghost CMS korzysta z dwóch typów kluczy: Content API Key (tylko do odczytu) oraz Admin API Key, który posiada uprawnienia administracyjne do artykułów, motywów i użytkowników. Po uzyskaniu Admin API Key atakujący modyfikuje treść artykułów przez API, wstawiając złośliwy kod na dole strony.

Jak wynika z analizy opublikowanej przez Sekurak, podatność została publicznie ujawniona 19 lutego, ale wiele stron nie zostało załatanych, co stworzyło okazję dla atakujących. Badacze podkreślają, że atak jest przykładem dwuetapowego loadera: pierwszy etap zapisywany jest w bazie danych Ghost, a właściwy payload zwracany jest przez serwer C2. Dzięki temu atakujący mogą zmieniać scenariusz bez ponownego przejmowania strony.

ClickFix – jak wygląda atak z perspektywy użytkownika?

Po wczytaniu zainfekowanej strony przeglądarka wyświetla fałszywą stronę weryfikacji podszywającą się pod Cloudflare. Użytkownik widzi prośbę o kliknięcie przycisku „Verify”, a następnie instrukcję wykonania trzech kroków. Równocześnie w tle pobierane jest archiwum ZIP ze złośliwym plikiem. Strona umieszcza w schowku polecenie, które użytkownik ma wkleić w oknie uruchamiania systemu Windows.

Polecenie to przenosi pobrane archiwum do katalogu tymczasowego, rozpakowuje je i uruchamia w tle plik update.bat. Ostatnia linia pozoruje kod weryfikacyjny reCAPTCHA, by uśpić czujność ofiary. Badacze zidentyfikowali cztery różne adresy pobierania, ale ich logika jest taka sama: pobranie pliku DLL i wywołanie funkcji przez rundll32. Jedna z próbek uruchamia plik kolejnego etapu – UtilifySetup.exe – który jest programem opartym na Electronie. Po deobfuskacji okazuje się, że wykorzystuje on wbudowane w Electron API do osiągnięcia trwałości w systemie i co 30 sekund wysyła żądanie POST do serwera C2.

Kto jest zagrożony i jak sprawdzić, czy strona została zainfekowana?

Kampania objęła ponad 700 domen, w tym strony uniwersytetów, SaaS, fintech, mediów, blockchain i AI. Administratorzy Ghost CMS powinni pilnie sprawdzić, czy ich instalacja nie padła ofiarą ataku. Badacze zalecają weryfikację treści wpisów pod kątem obecności następujących fragmentów: sj.ssc/ipa/ lub ghost_once_footer_, a także atob( i appendChild występujących razem w treści artykułu. Warto także sprawdzić logi backendu pod kątem nietypowych żądań PUT do /ghost/api/admin/posts/:id/, zwłaszcza pochodzących z nieznanych adresów IP.

Dodatkowe obszary do sprawdzenia to konfiguracja i pliki motywów – czy nie zostały dodane dodatkowe tagi <script> – oraz lista kluczy API Ghost. W przypadku znalezienia złośliwej zawartości, należy zrotować wszystkie poświadczenia: Admin API Key, Content API Key, hasło administratora oraz unieważnić aktywne sesje. Konieczne jest także usunięcie złośliwej zawartości z treści stron.

Jak się chronić? Praktyczne zalecenia dla administratorów i użytkowników

Przede wszystkim administratorzy Ghost CMS powinni jak najszybciej zaktualizować system do najnowszej dostępnej wersji. Podatność CVE-2026-26980 została ujawniona w lutym, a łatka jest dostępna. Kluczowa jest także świadomość w zakresie cyberbezpieczeństwa: nie należy wklejać jakichkolwiek treści w oknie uruchamiania, wierszu poleceń, pasku Eksploratora plików ani w konsoli przeglądarki, jeśli zostajemy o to poproszeni.

W organizacjach warto rozważyć całkowite zablokowanie okna Windows Run – zazwyczaj nie jest to niezbędne narzędzie, a stanowi łatwą metodę na pobranie i uruchomienie złośliwego oprogramowania. Z poziomu użytkownika można sprawdzić historię przeglądania i pobierania, szukając w niej złośliwych domen, takich jak cloud-verification[.]com czy clo4shara[.]xyz. Pełna lista wskaźników kompromitacji (IoC) znajduje się w oryginalnym raporcie badaczy.

Atak na Ghost CMS pokazuje, jak ważne jest szybkie łatanie podatności i regularne monitorowanie infrastruktury. Nawet dobrze znany system może stać się celem, jeśli administratorzy zaniedbają aktualizacje. Warto również korzystać z bezpłatnych narzędzi, takich jak moje.cert.pl, które pozwalają sprawdzić, jak domena i infrastruktura wyglądają z zewnątrz i gdzie mogą pojawiać się ryzyka.

Redakcja sekuret.pl

Redakcja sekuret.pl

AUTHOR