Ktoś nas atakuje, czyli ciekawa analiza ilości blokowanych ip na 100 serwerach

Posiadanie xxx serwerów pod opieką i ciągła praca z klientami daje codziennie nowe pomysły na ulepszenie usług i  naszego autorskiego monitoringu. Wszystkie propozycje zapisujemy sobie w trello, i co jakiś czas dokonujemy ich analizy pod względem przydatności.
Te które kosztują najwięcej pracy do wdrożenia a dają najmniej wartości czekają sobie na “lepsze czasy” – a nóż znajdzie się dłuższa wolna chwila na wdrożenie (tak, napewno sie znajdzie 🙂 ). Rzeczy które możemy wdrożyć szybko i będą przydatne robimy zazwyczaj w ciągu kilku-kilkunastu dni od zapisania.
Ale co zrobić z pomysłami których wartość ciężko ocenić bez sprawdzenia?

Tak też było z jednym z pomysłów, tj. wdrożeniem monitoringu blokowanych ip na poszczególnych serwerach. Z jednej strony – fajnie mieć  centralną bazę  “nieproszonych gości” i blokować je by nie męczyli innych serwerów, z drugiej – czy faktycznie  adresy ip będą się powtarzały by można wytypować “pewniaków” do blokady?
Mamy serwery w 5 krajach i w kilku DC więc tym bardziej robot musiałby skanować różne klasy by złapać się w nasze sidła, co dawało by jeszcze większą “wartość” takiej listy.

Aby dowiedzieć się jak naprawdę wygląda skala i unikalność atakowanych ip napisałem rozwiązanie które:

  • Zbiera dane z każdego serwera kopii o zablokowanych adresach ip i wysyła na jeden centralny serwer
  • dane z każdego z serwera są sortowane pod względem łącznej ilości unikalnych ip oraz ilości ip powtarzających się na wybranej ilości serwerów
  • posortowane dane są zapisane do bazy danych wraz z datą badania

Logi były sprawdzane codziennie z tych samych 100 serwerów, które były losowo wybrane ze wszystkich usług – zapewne przy wyborze samych “największych” liczby były większe, ale testy też mniej miarodajne.

Czas mijał, tabela raz dziennie się zapełniała wynikami aż przyszedł czas sprawdzić czy i jaka jest powtarzalność ip.

Poniżej są dwa wykresy – jeden zawiera liczbę unikalnych zablokowanych ip na wszystkich badanych serwerach, drugi natomiast liczbę unikalnych zablokowanych ip, które powtórzyły się na kilku serwerach.

Wykres nr 1:

Wykres nr 2:

Największe wrażenie robi liczba wszystkich zablokowanych ip – łącznie jest to 4700 unikalnych adresów, o 400 więcej niż na początku testu.

Najbardziej zaskoczyła Nas natomiast informacja o powtarzających się zablokowanych ip na ponad 10 serwerach – przez 1,5 miesiąca ich ilość wzrosła trzykrotnie, z 50 na początku testu do 150 na końcu.

Ciekawe są również statystyki dotyczące  kraju, a raczej geolokalizacji zablokowanych adresów IP:

Sprawdziłem też  statystyki pod względem ASN dla każdego z ip- niestety z racji pracy z różnymi dostawcami nie mogę ich pokazać, mogę jednak napisać, że pierwsza dziesiątka AS-ów posiada łącznie 30% zablokowanych ip.

Podsumowując:

Okazało się, że problem że problem z powtarzającymi się nieproszonymi goścmi istnieje, i jak widać powyżej ich blokada globalnie na wszystkich usługach powinna choć trochę zmniejszyć ilość prób ataków.

W chwili publikacji tego tekstu na blogu wszystkie serwery z administracją  mają już wdrożony mechanizm blokady ip powtarzających się na co najmniej 3 serwerach z opcją automatycznej aktualizacji o nowe ip, a ja pisze już kolejne narzędzie które ułatwi codzienną pracę i podniesie bezpieczeństwo.

Add a Comment

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *