Wnioski?
Dlaczego zatem doszło do naruszenia stabilności strony tak u mnie jak i setek tysięcy a może i milionów strona na całym świecie? Dlatego, że zaktualizowanie WordPressa nie było wykonane w porę. Kiedy zatem jest pora na aktualizację i dlaczego nie wykonałem jej od razu?
I to jest dobre pytanie. W moim przypadku nie może być mowy o zaniedbaniu (co jest najczęstszą przyczyną). Aktualizacja jest obarczona pewnym ryzykiem. Aktualizacje podzielone są na trzy grupy:
- Minor (v.X.X – np.: 4.6.8 do 4.7),
- Major (v.X.X.X – np.: 4.7.1 do 4.7.2)
- i Development (beta).
Każda z nich a w szczególności Major i Development obarczone są większym ryzykiem. Ryzykiem, że z różnych powodów aktualizacja może się nie udać i/lub wtyczki mogą nie być z nią kompatybilne a to skutkuje całkowitym wyłożeniem strony lub ograniczeniem jej funkcjonalności. Gdybym miał określić jak wielkie to ryzyko pewnie bym określił je na 5%-10% szansy wyłożenia.
Z jakim prawdopodobieństwem bym określił, że ktoś użyje w przeciągu kilku dni od ujawnienia lukę na taką skalę i w tym uszkodzi i moją stronę? Prawdopodobnie nie więcej niż 0.01%. Myliłem się. Zatem w obecnej chwili uważam, że ryzyko wykorzystania przez kogoś luki jest nawet większe niż szansa niepowodzenia aktualizacji i ociągał się już nie będę, choć trzeba mieć pieczę nad procesem aktualizacji Major, czyli zmieniającym wersję X.X. Tej nie polecam wykonywać bez nadzoru i je staram się przeprowadzać w akcjach serwisowych dla moich klientów. Choć trzeba powiedzieć jasno że takie rewelacje nie zdarzają się często. Chciałbym tutaj uspokoić wszystkich użytkowników WP że ich ukochany system nie jest gorszy niż inne, w każdym systemie to się zdarza a im system bardziej popularny tym amatorów łamania zabezpieczeń jest więcej. To samo tyczy się Windowsa. Z racji że jest najpopularniejszym systemem operacyjnym jest na niego taki ogrom prób ataków. Nie koniecznie dlatego, że jest źle napisany. To niestety normalna kolej rzeczy. Ktoś znajduje lukę, atakuje, po pierwszych atakach znajdują się osoby które ją łatają i tak to działa od zawsze.
Najrozsądniej jest pozostawić zaznaczoną opcję automatycznych aktualizacji WordPressa o co apeluję również do Was – Drodzy Czytelnicy. Nadal uważam, że najważniejsza ze wszystkich jest kopia bezpieczeństwa, zwłaszcza taka, która jest pobrana na lokalny dysk twardy co wszystkim swoim klientom zapewniam w akcjach serwisowych jakie organizuję.
Wyżej opisane wydarzenia są w pełni prawdziwe. Nie ma potrzeby ukrywania takich rzeczy jak włamanie na stronę, bo zdarza się niestety wcale nierzadko. Jak piszę cały czas na blogu na każdą popularną stronę są próby włamania niemal codziennie, wielokrotnie. Działa to już z automatu. Nie opisałem w tym artykule wszystkich kwestii i działań jakie podjąłem. Było tego jeszcze trochę. Jednak uważam, że jest to całkiem rzeczowy poradnik pokazujący jedną z częstych przyczyn zastania niemiłych niespodzianek na swojej stronie internetowej – czyli brak aktualizacji. Kilka najważniejszych czynności, które podjąłem opisałem w nadziei, że pomogą innym znajdującym się w podobnej sytuacji zrozumieć błąd lub zapobiegawczo ku przestrodze zaktualizują swojego WordPress-a do najnowszej wersji do czego gorąco zachęcam. Oczywiście wszystko starałem się ubarwić aby dobrze się czytało. Nikomu do śmiechu w takiej sytuacji nie jest, zwłaszcza że nikt nie ma ochoty i czasu walczyć ze zniszczeniami na swojej stronie. Jest to w pełni porównywalne z okradzeniem w rzeczywistym świecie.
Oczywiście kiedy tylko znalazłem przyczynę i rozwiązałem problem, natychmiast podjąłem odpowiednie kroki u swoich klientów którzy tego wymagali. Z pośród moich klientów znalazły się dwie strony internetowe, które zostały zaatakowane tą metodą. Oczywiście naprawienie szkód w tym przypadku było łatwe i szybkie. Obie strony podobnie jak moja to strony dobrze wypozycjonowane, a więc można również wysnuć ten oczywisty skądinąd wniosek, że dobrze wypozycjonowane strony są bardziej podatne na ataki a te schowane na dalszych miejscach atakowane są później lub wcale. Ale niech was nie zmyli taki tok rozumowania płynący jakoby z przekonania, że ktoś wybiera jakąś konkretną stronę którą chce zaatakować. Często jest to na chybił trafił i poddawane są atakowi strony jak leci. Często atakuje nie osoba a program. Jasna sprawa, że nie zainfekuje nikt strony, która nie jest znana Google, ale jej pojawienie się w wynikach wyszukiwania zawsze jest momentem poddania próbie odporności na ataki.
Na sam koniec chcę dodać, że nie jestem specjalistą w materii zabezpieczeń systemów komputerowych. Cały czas twierdzę, że specjalistą jest osoba, która wyszukuje takie luki i niestety trochę jest tak, że to włamywacz (który zaprzestał swoich niecnych działań) powinien projektować systemy alarmowe. Ja staram się propagować bezpieczne praktyki i pomagać na ile umiem, dzieląc się doświadczeniem. Moja wiedza w kwestii poprawiania zabezpieczeń niestety jest często zdobyta na własnych błędach i okupiona dużymi kosztami. Jak każdy i ja się uczę. Wyżej opisana próba ataku nie jest pierwszą jaką przeżyłem. W 2013 roku włamano się na serwer z którego korzystałem i zarówno strona (autorska napisana przeze mnie, nie będąca WordPressem bo nie ma to znaczenia) jak i wszelkie podstrony zostały bezpowrotnie zniszczone. Tak samo konta wszystkich innych użytkowników korzystających z tego serwera, bo był to serwer współdzielony jak w większości przypadków. Nie był to atak wymierzony w konkretną stronę, chyba bardziej w firmę hostingową (już z jej usług nie korzystam, choć nie z tego powodu). Zatem artykuły jakie tworzę są w dużej mierze pisane po to aby zminimalizować ryzyko popełnienia błędów przez innych. Chyba wierzę w to, że w internecie jest jednak więcej dobrego niż złego. Jest to próba poprawienia bezpieczeństwa a tą trzeba zacząć od jednoznacznego stwierdzenia że nie ma serwera i systemu w pełni bezpiecznego i odpornego na atak. Każde zabezpieczenie da się obejść lub złamać. Zatem zaczynamy od kopii bezpieczeństwa i na tym nie poprzestajemy! Tym chyba optymistycznym akcentem kończę ten kolejny, chyba najdłuższy w historii mojego bloga wpis.