Miliony stron łatwo zawiesić. Twórcy WordPressa zamiast łatki mają dobrą radę

Strona główna Aktualności
image

O autorze

WordPress dosłownie pożarł Internet – w 2017 roku działało na jego bazie 27% witryn internetowych, a dziennie uruchamianych jest podobno 50 tysięcy nowych. Ten pozbawiony większych zalet technicznych CMS wygrał przede wszystkim łatwością obsługi i ogromną liczbą wtyczek, pozwalających nie mającym pojęcia o programowaniu na uzyskanie niemal dowolnych funkcjonalności na swoich stronach. Doprowadziło to do niepokojącej z perspektywy bezpieczeństwa Sieci sytuacji: wystarczy odkrycie jednej luki 0-day, by miliony prowadzonych przez amatorów witryn internetowych stało się łatwym łupem dla cyberprzestępców. W tym tygodniu możemy obserwować właśnie taką sytuację, w dużym stopniu spowodowaną przez błąd zespołu odpowiadającego za zabezpieczenia WordPressa.

W ostatni poniedziałek badacze z firmy Imperva odkryli w kluczowych modułach używanych do ładowania plików JS i CSS podatność na atak typu DoS. Otrzymał on oznaczenie CVE-2018-6389. Za pomocą prostego skryptu można praktycznie sparaliżować działanie strony internetowej, zmuszając WordPressa do nieustannego serwowania długiej listy plików JS/CSS podczas ładowania się strony. Normalnie podatne moduły dostępne są tylko dla zalogowanych użytowników, ale jak się okazało, są one dostępne także przez stronę logowania, ujawniającą je także użytkownikom niezalogowanym.

Jak sprawdziliśmy, wystarczy kilkanaście sekund, by strona na WordPressie działająca na typowym współdzielonym hostingu przestała działać od przykładowych exploitów, opublikowanych już na GitHubie i w Exploit-DB.

Zespół WordPressa odmówił załatania tej luki, uznając że sprowadza się ona jedynie do wyczerpania zasobów i jako taka powinna być blokowania na poziomie sieciowego czy aplikacyjnego firewalla. Sami odkrywcy radzą, by w tej sytuacji ustawić ograniczenia dostępu na pliki load-styles.php i load-scripts.php tylko dla zaufanych adresów IP. Na GitHubie pojawił się też skrypt w bashu, który łata lukę, pozwalając jedynie adminom na wysyłanie żądań do podatnych modułów i usuwa dostęp do nich ze strony logowania.

Sęk w tym, że zastosowanie takiej łatki wychodzi poza możliwości znacznej grupy użytkowników wordpressowych witryn, którzy w najlepszym razie umieją kliknąć przycisk Aktualizuj. Jednak i nawet ci bardziej kompetentni niewiele zrobią, jeśli nie będą mieli dostępu do systemowej powłoki, jak to zwykle jest w wypadku współdzielonego hostingu.

Tego samego dnia co informacja o podatności na CVE-2018-6389 wyszła taka sobie mała aktualizacja WordPressa, oznaczona numerem 4.9.3. Miała ona naprawić kilka pomniejszych usterek – i wszędzie tam, gdzie użytkownicy ustawili sobie automatyczne aktualizacje, została pobrana i zainstalowana. Zadziałała, drobne błędy poprawiła, jednocześnie doszczętnie psując system automatycznych aktualizacji. Oznacza to, że dla wielu nieserwisowanych witryn, wersja 4.9.3 WordPressa będzie ostatnią – późniejszych już nie zobaczą.

Gdy zespół odpowiedzialny za bezpieczeństwo WordPressa zorientował się, co zrobił, było już za późno – praktycznie wszystkie automatycznie aktualizujące się instancje były już popsute. W tej sytuacji pozostało jedynie wydać wersję 4.9.4, i poprosić użytkowników o ręczną aktualizację z poziomu kokpitu WordPressa.

Wersja 4.9.4 też jednak nie uodparnia witryn na atak 0-day. Możemy się więc spodziewać w najbliższym czasie licznych prób DOS-ów na wordpressowe witryny, czy to z potrzeby wandalizmu, czy np. chęci zaszkodzenia konkurencji. Nierzadko przecież na WordPressie stawia się przecież całe sklepy internetowe – a jeśli łatwo można sklep internetowy konkurencji wysłać na odpoczynek…

© dobreprogramy

Komentarze