Niezaktualizowane polskie strony internetowe, a także niepoprawnie skonfigurowane serwery mają realny wpływ na bezpieczeństwo internautów, firm prywatnych i urzędników. Gorzko przekonali się o tym wszyscy ci, którzy od października 2016 roku do stycznia 2017 roku odwiedzali stronę knf.gov.pl — Komisji Nadzoru Finansowego — i których komputery pasowały do wzorca ataku szkodliwego oprogramowania. Nie bez powodu wracamy do tamtych wydarzeń, ponieważ tak jak i teraz, mają one bezpośredni wpływ na to, jak branża informatyczna będzie postrzegana. Niezaktualizowane strony internetowe stwarzają poważne zagrożenie dla swoich właścicieli oraz internautów. Kto tak naprawdę ponosi winę za taki stan rzeczy?

W tym artykule przyjrzeliśmy się bezpieczeństwu polskim stronom. Korzystaliśmy m.in. z API skanera Shodan, skanera riddler.io (autorstwa firmy F-Secure), publicznych czarnych list adresów IP oraz zidentyfikowanych payloadów na listach "abuse". Wszystkie próbki szkodliwego oprogramowania, które w dzień pobierania, tj. 2 sierpnia 2018 roku były jeszcze online skorelowaliśmy danymi z naszej sieci honeypotów. Oto co udało nam się ustalić.

Tak polskie strony rozprzestrzeniają wirusy

Od marca 2018 zhackowano na świecie 33707 serwerów Apache, Nginx, IIS, w tym 21450 serwerów ciągle rozprzestrzenia prawdziwe malware. I tak:

  • 461 stron jest zlokalizowanych w Polsce pod domenami .pl, .com.pl, .net, .edu.pl, .org i domenami regionalnymi.
  • Zainfekowano jedną domenę cbr.gov.pl, która jest ciągle blokowana przez niektóre antywirusy, chociaż zagrożenie zostało już usunięte przez administrację lub przez autorów włamania.
  • 98% zainfekowanych stron w Polsce posiada domenę .pl.
  • Niektóre strony zawierają więcej niż jednego wirusa.
  • Ze stron na terytorium Polski pobraliśmy 2410 próbek złośliwego oprogramowania. Nie wszystkie próbki były dostępne w dniu pobierania, tj. 2 sierpnia 2018 roku, dlatego ich faktyczna liczba jest niemożliwa do oszacowania. A więc pobraliśmy:
    • 1225 zainfekowanych dokumentów Word, które zawierało makrowirusy.
    • 9 archiwów ZIP zawierało w środku „faktury” JavaScript i VBS.
    • 2 zainfekowane arkusze kalkulacyjne Excel.
    • 27 plików binarnych.
    • 55 plików HTML (najprawdopodobniej część z służy do wyświetlania różnych informacji na zhackowanej stronie).  
    • 6 bibliotek DLL podszywających się pod pliki graficzne. Wszystkie zawierają takie trojany bankowe.
    • 447 plików wykonywalnych EXE (wszystkie są zainfekowane).
    • 632 pliki o zamaskowanych rozszerzeniach, np. nazwa.exe.1, nazwa.doc.2, które też zaliczamy do kategorii różnego rodzaju wirusów.
    • Kilka programów na Androida pod postacią plików APK.
    • Kilka plików instalacyjnych MSI dla Windows.

Łącznie pobraliśmy z zainfekowanych polskich stron 2410 próbek szkodliwego oprogramowania, ale nie to jest najgorsze. Nie posiadamy takich statystyki i prawdopodobnie nikt nie posiada, dlatego biorąc pod uwagę zdobytą wiedzę, podejrzewamy, że nawet 99% zainfekowanych stron internetowych ma swoje źródło nie w celowym ataku amatorskiej lub profesjonalnej grupy hakerów, ale przede wszystkim w publicznie dostępnych skanerach podatności oraz gotowych do zaimplementowania exploitów. Dzięki nim przeszukiwanie podatności i przełamywanie zabezpieczeń jest łatwiejsze niż kiedykolwiek wcześniej. Wczoraj pisaliśmy o narzędziach i technikach, z których korzystają prawdziwi hakerzy, a teraz grzechem byłoby nie wspomnieć o jeszcze jednej zależności, która zdecydowanie ułatwia napastnikom osiągnięcie sukcesu. Mianowicie są to nieaktualizowane moduły oraz silniki stron internetowych.

Wśród zainfekowanych 461 stron internetowych, które są umiejscowione na terenie Polski, większość nie posiada najnowszej wersji Wordpressa, Joomli lub autorskiego silnika, a część zawiera więcej niż jeden niezaktualizowany moduł systemu. Ów witryny możemy skatalogować do branży informatycznej, rolniczej, odzieżowej, prywatnych klinik medycznych, budowlanych, hotelowych, prywatnych blogów i innych.

Odpowiedzialność za taki stan rzeczy ponoszą nie tylko przedsiębiorcy, którzy w najgorszym przypadku żałują środków na zlecenie zabezpieczenia strony. Jesteśmy przekonani, że 50% z nich nawet nie zdaje sobie sprawy, że ich firmowa strona internetowa ma bezpośrednie przełożenie na wizerunek, bezpieczeństwo ich klientów, a także przypadkowych internautów.

Niechlubną rolę w procederze rozprzestrzeniania złośliwego oprogramowania mają też firmy hostingowe, które nie zawsze posiadają najnowsze wersje serwerów HTTP i PHP lub w skrajnych przypadkach nie korzystają z odpowiednich zabezpieczeń. Drobni przedsiębiorcy korzystają właśnie z takich firm hostingowych, które ich zdaniem powinny być tanie w utrzymaniu.  

Jak zabezpieczyć stronę WWW?

Wychodząc naprzeciw zdobytym informacjom w przeprowadzonym doświadczeniu podajemy wskazówki, które pomogą prawidłowo zabezpieczyć stronę WWW przed atakiem. I nie ma większego znaczenia, czy strona napędzana jest przez Wordpressa, Jomlę, czy uważanego za bardzo bezpiecznego Drupala. Niezaktualizowane CMS-y, serwery WWW, baz danych i PHP to proszenie się o kłopoty.

1. O ile to możliwe zaktualizuj rdzeń CMS-a oraz wszystkie moduły do najnowszej wersji. Szczególnym zainteresowaniem hakerów cieszy się Wordpress.

2. Zaktualizuj serwer http, serwer bazy danych i serwer php (jeżeli sam zarządzasz całym majdanem).

3. Rozważ zamaskowanie prawdziwego adresu IP serwera za siecią CDN (np. CloudFlare). Dzięki temu unikniesz wielu ataków oraz automatycznie zablokujesz dostępu botom i spamerom do strony.

4. Rozważ zainstalowanie WAF-u bazującego na mod_security. Zabezpieczysz w ten sposób stronę przed „niepoprawnym” ruchem internetowym.

5. Jeśli zarządzasz serwerem korzystaj z najnowszych wersji kernela, najlepiej już z łatką grsecurity, która chroni przed zagrożeniami 0-day.

6. Wyłącz logowanie na konto root poprzez hasło i zastąp je logowaniem z wykorzystaniem kluczy.

7  Jeśli musisz używać konta root, zaloguj się do serwera na konto o niższych uprawnieniach, a później przełącz się na roota.

8. Skonfiguruj iptables lub alternatywny CSF.

9. Do ochrony przed atakami brute-force zainstaluj fail2ban.

10. Do zalogowania się do kont FTP stosuj konto użytkownika, a nie roota.

11. Na hostingu współdzielonym stosuj odrębne konta FTP do każdej strony.

12. Dla serwerów VPS, serwerów dedykowanych, kont FTP, loguj się przez SFTP.

13. Zadbaj o bardzo częste wykonywanie kopii zapasowych plików strony i bazy danych. Nigdy nie wiadomo, kiedy coś zepsujesz (lub ktoś ci zepsuje) i będziesz potrzebować backupu sprzed godziny.

14. Ostatnia uniwersalna wskazówka dla wszystkich zarządzających stronami internetowymi — tak jak my to zrobiliśmy, wrzuć na serwer FTP ten prosty skrypt PHP, następnie dodaj go do crona (aby wykonywał się np. raz dziennie), a ochroni cię przed nieautoryzowanym zmodyfikowaniem plików strony. Powiadomienia o usuniętych, dodanych i zmodyfikowanych plikach dostaniesz na maila.

AUTOR:

Adrian Ścibor

Podziel się

Dodaj komentarz