Wydajność i bezpieczeństwo

Bezpieczeństwo wtyczek WordPress: 7 kroków przed instalacją

· Krzysztof Balicki

Kłódka na klawiaturze komputera

Zanim zainstalujesz wtyczkę, sprawdź sześć rzeczy: skąd pochodzi, kiedy była ostatnio aktualizowana, czy działa z Twoją wersją WordPressa i PHP, kto ją napisał, jak wygląda wsparcie i jakich uprawnień potrzebuje. Siódmy krok to test na kopii strony. Bezpieczeństwo wtyczek WordPress zaczyna się przed kliknięciem „Zainstaluj”. Nie po pierwszym włamaniu. Ten poradnik jest dla właściciela albo administratora sklepu WooCommerce lub firmowej strony, który nie ma za sobą działu IT i o dodatkach decyduje sam.

Dlaczego bezpieczeństwo wtyczek WordPress zależy głównie od Ciebie?

Każda wtyczka to cudzy kod, który dostaje dostęp do bazy danych, plików i panelu. Wybierając ją, decydujesz więc o bezpieczeństwie całej strony. Luka we wtyczce to po prostu błąd w kodzie, przez który ktoś z zewnątrz może odczytać dane, wgrać własny plik albo przejąć konto. A porzucona wtyczka? Gorsza niż żadna, bo znanej podatności nikt już w niej nie załata. W sklepie stawka jest wyższa: chodzi o dane klientów, ich adresy i historię zamówień, a nie tylko o to, jak wygląda wizytówka firmy.

Krok 1 i 2: zaufane źródło i data ostatniej aktualizacji

Wtyczki pobieraj tylko z repozytorium WordPress.org albo od znanych producentów. I zawsze sprawdź, kiedy była ostatnia aktualizacja. To samo mówi oficjalny poradnik utwardzania WordPressa, który wprost odradza instalowanie dodatków z niepewnych miejsc. Wersje „nulled” (płatne wtyczki z wyciętym zabezpieczeniem licencji) i kopie krążące po forach to klasyczna droga infekcji. Ktoś mógł do nich dopisać swój kod i nawet się nie zorientujesz.

Datę ostatniej aktualizacji znajdziesz na karcie wtyczki w repozytorium, w panelu bocznym obok numeru wersji. Od wielu miesięcy cisza, a WordPress w tym czasie wypuścił kilka nowych wydań? Dla mnie to znak, że autor mógł projekt zostawić.

Krok 3 i 4: zgodność z wersją WordPressa, PHP i WooCommerce oraz wiarygodność autora

Wtyczka powinna deklarować zgodność z Twoją wersją WordPressa, PHP i WooCommerce. Jej autor powinien mieć historię, którą da się sprawdzić. Na karcie wtyczki są trzy pola. „Wymaga wersji” to minimalne wydanie WordPressa. „Testowano do” mówi, na jakiej wersji autor ostatnio ją sprawdzał. „Wymagana wersja PHP” określa minimum po stronie serwera. Jeśli między „Testowano do” a Twoją instalacją jest spora przepaść, licz się z błędami i niezałatanymi problemami.

Jak ocenić autora? Zajrzyj do jego innych dodatków, na stronę firmy, sprawdź dane kontaktowe. Poszukaj też informacji, gdzie zgłaszać błędy bezpieczeństwa (jeśli takiej ścieżki w ogóle nie ma, to też coś mówi). Średnią gwiazdek możesz w sumie olać. Czytaj najnowsze negatywne recenzje, bo to one pokazują, co się sypie teraz.

Krok 5: czy autor odpowiada na zgłoszenia i jak wyglądają aktualizacje wtyczek?

Żywe forum wsparcia i regularne aktualizacje wtyczek to najlepszy sygnał, że luka zostanie załatana, kiedy ktoś ją znajdzie. Na forum patrz, jak szybko autor odpisuje, ile wątków wisi bez odpowiedzi i czy zgłoszenia o bezpieczeństwie traktuje poważnie. Changelog, czyli dziennik zmian, ma mieć konkretne wpisy. Same „drobne poprawki” to za mało. Jeśli od czasu do czasu pojawiają się tam poprawki bezpieczeństwa, ktoś faktycznie pilnuje kodu. I o to chodzi.

Przy płatnych dodatkach liczy się to, co obejmuje licencja wtyczki. W K4.pl, sklepie z wtyczkami prowadzonym przez łódzki software house Web Systems działający od 2006 roku, licencja obejmuje aktualizacje i wsparcie bezpośrednio od producenta. Wiesz więc, do kogo pisać, gdy coś przestanie działać.

Krok 6: jakie uprawnienia i dostęp dostaje wtyczka?

Wtyczka powinna dostać tylko taki dostęp, jakiego wymaga jej funkcja. Wszystko ponad to? Czerwona lampka. Uważaj na dodatki, które:

  • zakładają nowe konta administratora,
  • edytują pliki motywu lub rdzenia,
  • łączą się z zewnętrznymi serwerami bez jasnego powodu,
  • proszą o hasła do hostingu, FTP lub panelu.

Uprawnienia plików też mają znaczenie. Wspomniany poradnik zaleca, żeby pliki WordPressa były zapisywalne tylko przez konto użytkownika, a nie przez serwer WWW. Edycję plików w panelu polecam po prostu wyłączyć. No i jeszcze jedno: zamiast trzech wtyczek, które robią mniej więcej to samo, weź jedną, choćby wtyczkę na zamówienie. Mniej kodu, mniej miejsc na luki.

Krok 7: test na kopii strony przed wdrożeniem na produkcję

Nową wtyczkę instaluj najpierw na stagingu, czyli stronie testowej z aktualnym backupem, a dopiero potem na działającym sklepie. Kopia plików i bazy przed instalacją to warunek, nie opcja. Po instalacji przejdź po kolei:

  1. koszyk, płatności i składanie zamówienia,
  2. działanie panelu administracyjnego,
  3. logi błędów PHP i serwera,
  4. szybkość ładowania najważniejszych podstron,
  5. konflikty z innymi wtyczkami i motywem.

Aha, i własny sprzęt. Komputer, z którego logujesz się do panelu, musi być czysty, bo keylogger przechwyci hasło bez względu na to, jak dobrze zabezpieczony jest serwer.

Lista kontrolna: 7 pytań przed kliknięciem Zainstaluj

Siedem pytań w jednym miejscu. Wtyczkę ocenisz w kilka minut:

  • Czy pochodzi z WordPress.org albo od znanego producenta?
  • Kiedy ostatnio była aktualizowana?
  • Czy jest zgodna z moją wersją WordPressa, PHP i WooCommerce?
  • Czy autor ma sprawdzalną historię i dane kontaktowe?
  • Czy forum wsparcia żyje, a changelog jest konkretny?
  • Czy żąda tylko niezbędnych uprawnień?
  • Czy przetestowałem ją na kopii strony z backupem?

Bezpieczeństwo wtyczek WordPress to nawyk. Sprawdzasz wtyczkę przed instalacją, a potem pilnujesz jej aktualizacji przez cały czas, kiedy siedzi na Twojej stronie.

Najczęstsze pytania

Czy darmowe wtyczki z WordPress.org są bezpieczne?

Oficjalne repozytorium zmniejsza ryzyko, bo odcina podrobione i przerobione kopie. Ale nie zwalnia ze sprawdzenia daty aktualizacji, zgodności i aktywności autora. Darmowa wtyczka porzucona przez twórcę może mieć niezałataną lukę tak samo jak każda inna.

Co zrobić z wtyczką, która od dawna nie dostała aktualizacji?

Poszukaj zamiennika z aktywnym wsparciem i przetestuj go na kopii strony. Starą wtyczkę usuń. Sama dezaktywacja nie wystarczy, bo pliki dalej leżą na serwerze i ktoś może je wykorzystać.

Czy włączać automatyczne aktualizacje wtyczek?

Dla zaufanych, regularnie rozwijanych wtyczek tak, bo poprawki bezpieczeństwa trafiają na stronę od razu. W sklepie łącz je z codziennym backupem i szybkim sprawdzeniem koszyka oraz zamówień po każdej aktualizacji.