PDA

Zobacz pełną wersję : Ogromne wysycenie CPU i restart serwera hostingowego



sylwekb
05-10-2018, 10:45
Witam
Dostawca hostingu zwrócił uwagę, że przyczyną wysycenia pamięci RAM była ogromna ilość wywołań strony z IP 88.156.139.88.
Pomiędzy godziną 23.00 a 23.10 takich wywołań było 3825.

Dla innych wywołań zmieniały się głównie ID, chociaż nie wiem za co odpowiada to ID u bo podukt jest ten sam. Wywołujący przedstawiał się jako
"iPad; CPU OS 11_4 like Mac OS X" jednak informację tą łatwo sfałszować i mogło to być inne urządzenie, program, skrypt itp.

Jak widać ruch ten nie wygląda na naturalny, nikt nie był by w stanie raczej z urządzenia iPad w ciągu jednej sekundy wejść na 12 podstron serwisu. Jest to albo atak, albo indeksowanie produktów na serwisie.

Można po stronie samego serwisu wprowadzić ograniczenia wywołań w czasie, np. w przypadku dużej liczby wywołań z jednego IP serwis blokować dalsze wywołania, co powoduje że nawet jeśli będą dalsze próby to obciążenie i zużycie RAM przez nie wygenerowane powinno być znacznie mniejsze.

Jak taka reguła ograniczająca wywołania może wyglądać i czy można coś takiego dodać do pliku .htaccess?

Joomla 3.8.12 + Virtuemart 3.4.0

rkonik
05-10-2018, 13:37
Czytam któryś raz twój temat i przyznam się że nie rozumiem twojej wypowiedzi.
Ktoś jednorazowo wszedł i zabrał dużą ilość zasobów? Czy to jest regularne? To jest serwer współdzielony, vps, dedyk?
Może masz źle napisany jakiś dodatek i zjada Ci RAM Wykorzystujesz cache w stronie?

Gdzie pobrałeś te informacje o IP i o nazwie klienta?

sylwekb
05-10-2018, 13:51
Serwer dedykowany. Taki incydent zdarzył się pierwszy raz z jednego adresu IP w ciągu kilku minut tak dużo wejść z jednego urządzenia. Dane pobrałem z logów serwera i to samo przesłał mi dostawca usług hostingowych jak otrzymał informację z monitoringu, że procesy spowodowały wysycenie CPU zawieszenie serwera, sprawdzali i to raczej nie był atak. Na stronie nie ma żadnych starych dodatków, wszystko aktualizuję na bieżąco bo wiem, że to jest bardzo ważne. Oczywiście adres IP dodałem do zablokowanych w pliku .htaccess ale nie jestem przekonany czy to rozwiąże problem bo taki incydent może za chwilę pojawić się z innego adresu IP i ponownie serwer się zawiesi od przekroczenia CPU. Czy jest jakiś mechanizm, reguła, która uniemożliwiałaby wchodzenie ileś tysięcy razy z dowolnego adresu IP na stronę WWW?

rkonik
05-10-2018, 17:41
Domyślam się że widziałeś żądania a nie wejścia na stronę.
Blokowanie konkretnego IP to walka z wiatrakami. Jaki masz ruch na stronie i jakie parametry tego dedyka skoro zużyłeś zasoby. Jeżeli boisz się ataków to skorzystaj z gotowych komponentów takich jak Akeeba Admin Tools czy RSFirewall lub jeszcze inne. Tam masz masę ustawień dzięki którym możesz utrudnić działania hakerom. Dodatkowo zastanów się czy nie warto zmienić z tradycyjnego dedyka na serwery które się skalują. wówczas jak braknie zasobów to z automatu dostaniesz dodatkowe parametry i zapłacisz wyłącznie za czas ich użycia.


Czy jest jakiś mechanizm, reguła, która uniemożliwiałaby wchodzenie ileś tysięcy razy z dowolnego adresu IP na stronę WWW?
Tak blokada adresu IP.

mjmartino
07-10-2018, 21:48
Dodatkowo zastanów się czy nie warto zmienić z tradycyjnego dedyka na serwery które się skalują. wówczas jak braknie zasobów to z automatu dostaniesz dodatkowe parametry i zapłacisz wyłącznie za czas ich użycia.

Bardzo zła rada.
Przy ataku rachunek mógłby przyjść po prostu ogromny.
Takie rzeczy się wykrywa i się blokuje zanim dojdzie do eskalacji.

Gall Anonim
08-10-2018, 09:58
Czy jest jakiś mechanizm, reguła, która uniemożliwiałaby wchodzenie ileś tysięcy razy z dowolnego adresu IP na stronę WWW?
Admintools Pro czy też RS Firewall Pro - po pierwsze możesz zablokować ip. Po wtóre można ustawić tak aby zbyt duża ilość zapytań z konkretnego IP w zbyt krótkim czasie była blokowana.

rkonik
08-10-2018, 14:41
Bardzo zła rada.
Przy ataku rachunek mógłby przyjść po prostu ogromny.
Takie rzeczy się wykrywa i się blokuje zanim dojdzie do eskalacji.

Nie do końca tak jest. Serwery które się skalują też mają możliwość limitów. Jeżeli faktycznie masz atak to dobra konfiguracja serwera i zabezpieczenia są w stanie wykryć takie zdarzenie. Sam dodatek Akeeby ładnie radzi sobie z różnymi próbami ataków. Dlatego nie strasz że nagle rachunek będzie nie wiadomo jak wielki. Dodatkowo dostajesz alerty że limity są przekraczane więc możesz szybko reagować na zaistniałą sytuację a masz pewność że usługi jak www nie zostaną zablokowane.