Nieaktualne wtyczki w WordPressie: co aktualizować, a co usunąć
Dlaczego stare wtyczki to najczęstsza droga do WordPressa, jak je znaleźć, co zaktualizować najpierw, co usunąć i czy włączać automatyczne aktualizacje.
Sam WordPress jest pilnowany całkiem dobrze. Rozwija go duża społeczność, poprawki bezpieczeństwa wychodzą szybko, a drobne aktualizacje od lat instalują się automatycznie. Słabym punktem są wtyczki.
Każda wtyczka to kawałek kodu napisany przez kogoś innego. Czasem przez dużą firmę z działem bezpieczeństwa, czasem przez jedną osobę, która przestała się nią zajmować kilka lat temu. Strona firmowa ma ich zwykle kilkanaście, sklep często więcej. Wystarczy, że jedna z nich ma dziurę.
Dlaczego to najczęstsza droga do środka
Firmy, które zawodowo śledzą luki w WordPressie, takie jak Patchstack czy Wordfence, co roku publikują zestawienia. Obraz jest za każdym razem podobny: zdecydowana większość nowo odkrytych luk dotyczy wtyczek, mniej motywów, a sam rdzeń WordPressa to margines.
Mechanizm jest prosty. Autor wtyczki dowiaduje się o dziurze i wydaje poprawioną wersję. Informacja o poprawce jest publiczna, kod również. Ktoś, kto szuka łatwych celów, porównuje starą i nową wersję, widzi, co naprawiono, i pisze automat, który wyszukuje strony z wersją sprzed poprawki. Strona, która zaktualizowała wtyczkę, jest bezpieczna. Ta, która czeka z tym pół roku, trafia na listę.
Nikt nie celuje w Twoją firmę osobiście. Boty sprawdzają strony masowo i biorą te, które się dają.
Jak zobaczyć, co jest nieaktualne
Zaloguj się do panelu i otwórz Kokpit > Aktualizacje. Na górze zobaczysz wersję WordPressa, niżej listę wtyczek i motywów, dla których są nowsze wersje. Czerwone kółko z liczbą przy pozycji Wtyczki w menu po lewej mówi, ile z nich czeka.
Na stronie Wtyczki pod nazwą każdej nieaktualnej wtyczki pojawia się pasek z informacją o nowej wersji i linkiem do szczegółów. Kliknij go. W liście zmian autorzy często piszą wprost, że poprawili błąd bezpieczeństwa.
Zajrzyj też do Narzędzia > Zdrowie witryny. WordPress sam wskaże tam część problemów, na przykład nieaktywne wtyczki, które należałoby usunąć, albo przestarzałą wersję PHP na serwerze.
Jedna pułapka: brak powiadomienia nie oznacza, że wtyczka jest aktualna. Płatne wtyczki kupione poza oficjalnym katalogiem aktualizują się zwykle tylko przy ważnej licencji. Te dołączone do motywu często czekają, aż autor motywu wyda jego nową wersję. Jeśli licencja wygasła trzy lata temu, panel może nie pokazywać niczego niepokojącego, a wtyczka od trzech lat stoi w miejscu. Zapytaj osobę, która budowała stronę, czy są na niej takie wtyczki.
Co zaktualizować w pierwszej kolejności
Jeśli zaległości jest dużo, nie klikaj „aktualizuj wszystko” w ciemno. Kolejność, która ma sens:
- Wtyczki, przy których w liście zmian pada słowo „security” albo nazwa rodzaju luki, na przykład XSS czy SQL injection.
- Wtyczki, z którymi odwiedzający mają bezpośredni kontakt: formularze, sklep, logowanie i rejestracja, przesyłanie plików, kreatory stron.
- Sam WordPress, jeśli został w tyle o całą wersję główną.
- Motyw i pozostałe wtyczki.
Jeśli czegoś nie da się zaktualizować, bo nowa wersja wymaga nowszego PHP albo nowszego WordPressa, to też informacja. Oznacza, że cała strona odstaje od bieżących wersji i lepiej zaplanować większy serwis, niż łatać ją po kawałku.
Co lepiej usunąć niż aktualizować
Wyłączona wtyczka nadal leży na serwerze. Do jej plików często da się dostać bezpośrednio, z pominięciem panelu, więc dziura w nieaktywnej wtyczce też jest dziurą. Jeśli z czegoś nie korzystasz, dezaktywuj wtyczkę i kliknij Usuń. Samo wyłączenie nie wystarczy.
Druga grupa to wtyczki porzucone. Otwórz stronę wtyczki w katalogu na wordpress.org i spójrz na datę ostatniej aktualizacji. Jeśli wtyczki nie przetestowano z trzema ostatnimi głównymi wydaniami WordPressa, katalog pokazuje nad opisem wyraźne ostrzeżenie, że może nie być już rozwijana. Jeśli wtyczkę zamknięto, zobaczysz informację, że nie można jej pobrać. Powodem zamknięcia bywa niezałatany problem z bezpieczeństwem.
Taką wtyczkę trzeba zastąpić czymś, co ktoś nadal rozwija. Zanim to zrobisz, zapisz, do czego służyła, żeby po zmianie sprawdzić, czy wszystko działa jak wcześniej.
Kopia przed aktualizacją
Większość aktualizacji przechodzi bez echa. Czasem jednak nowa wersja gryzie się z motywem albo z inną wtyczką i zamiast strony pojawia się biały ekran albo komunikat o błędzie krytycznym. WordPress wysyła wtedy administratorowi maila z opisem problemu i linkiem do trybu odzyskiwania, ale lepiej nie musieć z niego korzystać.
Dlatego przed większą aktualizacją:
- zrób pełną kopię plików i bazy danych, zapisaną poza serwerem (dlaczego nie w folderze strony, wyjaśnia tekst o zapomnianych kopiach zapasowych),
- aktualizuj po jednej wtyczce i po każdej zajrzyj na stronę główną, do formularza kontaktowego, a w sklepie także do koszyka i kasy,
- większe aktualizacje sklepu rób poza godzinami największego ruchu,
- jeśli hosting oferuje kopię testową strony, tak zwany staging, przećwicz aktualizację najpierw tam.
Automatyczne aktualizacje: włączać czy nie
Od wersji 5.5 WordPress pozwala włączyć automatyczne aktualizacje osobno dla każdej wtyczki. Na stronie Wtyczki przy każdej pozycji jest link Włącz automatyczne aktualizacje.
Zaleta jest oczywista: poprawka bezpieczeństwa instaluje się sama, bez czekania, aż ktoś znajdzie czas. Po każdej takiej aktualizacji WordPress wysyła administratorowi maila z informacją, co się zmieniło.
Wada też jest jasna. Jeśli aktualizacja coś zepsuje, może się to stać w nocy albo w weekend, kiedy nikt nie patrzy.
Rozsądny kompromis dla małej firmy wygląda tak:
- małe, proste wtyczki od sprawdzonych autorów aktualizują się automatycznie,
- sklep, kreator stron i wszystko, od czego zależą zamówienia, aktualizuje ktoś ręcznie, ale regularnie, na przykład raz w tygodniu, z kopią przed,
- nieużywane i porzucone wtyczki znikają ze strony.
Najgorsza opcja to ręczne aktualizacje, których nikt nie robi. Jeśli nie masz pewności, że ktoś zagląda do panelu co tydzień, automatyczne aktualizacje są mniejszym ryzykiem niż wtyczki, które stoją w miejscu przez rok.