Jump to content
magisterson

Duża ilość zapytań do sklepu

Recommended Posts

Do mojego sklepu generowana jest ogromna ilość zapytań MYSQL. Dostaliśmy ostrzeżenie od nazwa.pl
Wsadziłem do index.php skrypt zapisujący wejścia IP do pliku txt.

Co sekundę było około 10 nowych linijek. Istny zalew IP. Niektóre IP powtarzały się, ale było ich tak duże, że powtórzenia występowały co kilkadziesiąt linijek.

Dodam jeszcze, że jakieś 2 tygodnie temu mieliśmy problem ze spamem mailowym, formularz sklepowy wysłał ponad 3000 chińskich maili.
po zainstalowaniu re-captcha problem ustał, ale teraz przyszło ostrzeżenie od nazwa.pl że przekroczona została dobowa liczba zapytań do bazy MYSQL.

Faktycznie wejść jest kilkaset na minutę. Wejścia nie są natomiast wyświetlane jako "ODZWIEDIZNY" na zapleczu sklepu.

Co to moze być? Jakiś DDoS?
Dziwne, że dopiero po 2 tygodniach od tamtej sprawy ze spamem pojawił się problem z zalewem wejść. Konkurencja?

Share this post


Link to post
Share on other sites

Rozumiem że nazwa.pl nie powiedziała nic w stylu "macie bardzo dużo odpytań o stronę główna z tego samego adresu IP" ?

Share this post


Link to post
Share on other sites

Nie, doszło ogólne powiadomienie :/ problem jaki teraz zauważyłęm jest taki że nie moge przełączyć sklepu w tryb konserwacji. Zaraz po włączeniu jak odświeżam sklep ponownie się włącza a w pasku adresów IP są jakieś nieznane mi adresy (około 7)

Share this post


Link to post
Share on other sites

Po pierwsze: nazwa i home to najgorsze co możesz wybrać jako hosting. Mają limity zapytań do bazy danych.

Po drugie - obczaj jakie to IP się powtarzają czytając logi apache2 i je zablokuj w htaccess. (Instrukcja w google do znalezienia).
Po trzecie - co do błędu ze spamem - jest już łatka którą możesz wgrać sam: https://github.com/PrestaShop/PrestaShop/pull/8168/files

Share this post


Link to post
Share on other sites

1. zablokowałem wszystkie IP poza moim w pliku .htaccess

2. adresy IP które się wygenerowały w pliku TXT to Chiny

3. Zauważyłem dziwną rzecz tj: nie mogę przełączyć sklepu w tryb "Przerwa techniczna", niby się przełącza, ale zaraz po odświeżeniu zakładki ponownie jest aktywny a w linijce do wklepywania wykluczonych IP jest kilka adresów których nie znam.

4. kod który podałeś zaraz dodam.

 

POPRAWKA:

adresy IP w pasku wykluczeń są najprawdopodobniej moje, ale nie mogę ich skasować, dodać ani też nie mogę włączyć sklepu w tryb przerwy technicznej.

Edited by magisterson

Share this post


Link to post
Share on other sites

Nie przejmuj się trybem technicznym. Zrób te poprawki i tyle na działającym sklepie. Potem wyczyść cache.

Zainteresuj się również Cloudflare w darmowej opcji by blokować ruch botów chińskich. Coś takiego znalazłem jako tutorial https://www.youtube.com/watch?v=CsW7u8g84Yg ale wydaje się być stary więc powinno być to dosyć proste. Tutaj chyba nowsza wersja https://www.youtube.com/watch?v=8nKU4h8ynZ0

Ogólna idea - wskazujesz swoją domenę dla cloudflare, uzyskujesz nowe DNSy które musisz wpisać do domeny żeby wskazywały na cloudflare zamiast bezpośrednio na Twój serwer - ciesz się blokowaniem robotów spamujących.

Edited by hakeryk2

Share this post


Link to post
Share on other sites

ok, dzięki za info hakreyk, zacząłem się zastanawiać czy te boty nie nadpisały plików skoro nie mogę wyczyścić adresów IP z pola wykluczeń. Myslisz, że to nie poszło aż tak daleko? 

 

A co myslisz o tym zeby zablokować jeszcze całe chiny? Znalazłęm takie coś do wygenerowania zakresów IP dla htaccess: https://www.countryipblocks.net/country_selection.php

Edited by magisterson

Share this post


Link to post
Share on other sites

Dobra to jeszcze jedna sprawa, w bazie jest 70tys maili spamowych :)

Usuwanie ich ręczne z zaplecze mija się z celem. Myślę, że najlepiej wywalić je z zaplecza phpmyadmin-a

Czy dobrze formułuje zapytanie? Chodzi mi o skasowanie zakresu mailii od ID 6 do 75955:

DELETE FROM `ps_customer_message` WHERE `ps_customer_message`.`id_customer_message` >= 6 and <= 75955;

 

Share this post


Link to post
Share on other sites

po and musiałbyś dodać `ps_customer_message`.`id_customer_message`

ale prościej:

DELETE FROM ps_customer_message WHERE id_customer_message between 6 and 75955;

 

W phpMyAdmin masz opcję "Symuluj zapytanie", możesz wtedy sprawdzić czy chociaż składnia jest poprawna, a jeżeli tak to czy jakieś wiersze spełniają warunek.

Share this post


Link to post
Share on other sites

Jestem w tej same sytuacji Tez mam ogromna ilość zapytań do mojego sklepu (wszystkie zapytania są o stronę "kontakt" więc jest to z pewnością atak spamu. Mam już wszystko polokowane w kodzie sklepu więc spam nic nie jest w stanie zrobić jedynie problem z nazwą. pl która zablokowała mi serwer i pocztę. Również dostałem najpierw ostrzeżenie o przekroczeniu jakiś dziwnych limitów. Od rana sklep ani poczta zablokowane a kontakt z nazwą zbliżony do zera bo telefon nic nie daje a goście na e-mail kiepsko dopisują.  Po mojej interwencji niby odblokowali wszystkie usługi ale w pięć minut miałem 4 tys odwiedzin strony (z logów wynika wszystko zapytanie o kontakt) i presta wywaliła błąd :

"PrestaShop Fatal error: no utf-8 support. Please check your server configuration."

Czyli sytuacja się powtarza i nie jest rozwiązana. Najprawdopodobniej skończy się na zmianie serwera bo tak jak teraz to lipa straszna.

Share this post


Link to post
Share on other sites

Witam

Zwracam się z prośbą o pomoc w zablokowaniu danych krajów w htacces posiadam kilka sklepów odpalonych na multistorze i zabardzo nie wiem jak kto zrobic.

Share this post


Link to post
Share on other sites

Ja testuje rozwiązanie

magisterson

 

Klikasz w linka zaznaczasz który kraj chcesz zablokować, wybierasz rodzaj pliku (czyli hatacces) i klikasz generuj. Wygenerowany kod musisz wkleić do pliku hatacces i przesłać zmodyfikowany powrotem na serwer. Ja wstępnie zablokowałem chiny i hong kong i jest ok ale zrobiłem to dopiero godzinę temu.

Wstępnie liczba odwiedziń spadła bo do tej pory to miałem 4 tyś na 5 min

Edited by wodzu-4

Share this post


Link to post
Share on other sites

A czy mógłbyś  podać linka do generowania kodu do htacces z danym krajem. I rozumiem, że ten kod umieszczam na samym końcu pliku htacces?

Share this post


Link to post
Share on other sites

 Dziś rano dostałem kolejne ostrzeżenie o przekroczeniu limitu tym razem maksymalnej  liczba zapytań
liczonej na serwer w ciągu doby - to tak z automatu. No i jeszcze dostałem odpowiedź od szanownego  technika który odpowiedział na moje e-maile. W treści opisuje że to użytkownik poprzez odpowiednie reguły ma obowiązek blokować boty z poziomu .htaccess
Najwyraźniej technik nie jest tego świadom że ja już blokuje te roboty w tym pliku. Poprosiłem go oto aby podał odpowiednią regułę skoro tak twierdzi. Ciekawe co odpisze (pewnie na odpowiedź trzeba będzie poczekać znów kilka dni a w tym czasie pewno znów zablokują serwer)

Share this post


Link to post
Share on other sites

Witam

Niestety wyłączenie formularza kontaktowego oraz zablokowanie ip w pliku htacess pmoga tylko na chwilę sklepy nadal są atakowane ☹. A obsługa nazwa.pl stwierdziła, że nie są w stanie już nic zrobić mam powyłączać sklepy i przeczekać atak. Czy ktoś ma jakiś pomysł co można jeszcze zrobić?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More