Zabezpieczenie strony przed botami

1

Cześć,

jedna z aplikacji internetowych, które rozwijam jest notorycznie, cyklicznie atakowana przez boty z obszaru Rosji / Azji.

Klientowi bardzo zależy, aby nic nie przeszkadzało w workflow / userflow / UXie, który jest wypracowany.
Co oznacza: nie chce googlowej captchy, 2 stepowej weryfikacji użytkowników przy rejestracji czy czegoś podobnego, co wymaga zmian w wyglądzie lub wytworzonym procesie.

Problemy są głównie natury takiej, że boty rejestrują się na stronie, korzystają z opcji dostępnych na stronie i zapychają db / systemy analityczne / statystyczne podłączone do strony swoimi danymi.

Jak zabezpieczyć stronę przed botami po stronie front-end / back-end? Są jakieś techniki, o których mogę poczytać do zaimplementowania?
Czy pozostaje mi po prostu analiza ruchu i wycięcie danych IP / obszarów?
Co mogę zrobić jak najniższym kosztem?

3
  1. Prosty sposób wycinający cześć botów - utworzenie dodatkowego tekstowego pola które jest ukryte, jeśli przyjdzie wypełnione lub nie przejdzie to odrzucasz. Dobrze było by je ukrywać przez js, tak by ogarnąć tez boty ogarniające css, ale na te z js już się nic nie poradzi. No i nazwać je trzeba tak by bot był zachęcony do wypełnienia.
  2. wykorzystać to https://kickbox.com/ odsieje kolejną część
1

Czy te boty o których mówisz są pisane specjalnie pod Twoją aplikację czy to "ogólno tematyczne" boty? Przedstawiają się jakimiś nagłówkami albo "pingują" konkretne adresy? Sprawdzałeś czego szukają?

Wycięcie danych IP / obszarów nic nie da, od tego jest proxy. Kiedyś sam pisałem takie boty, pierwsze co robisz to piszesz bota który szuka darmowych proxy po sieci, potem możesz z każdym żądaniem zmieniać adres IP na kolejny. Jak to są duże sieci botów to mają pewnie też swoje serwery proxy, wykupione proxy premium itd.

0
mr_jaro napisał(a):
  1. Prosty sposób wycinający cześć botów - utworzenie dodatkowego tekstowego pola które jest ukryte, jeśli przyjdzie wypełnione lub nie przejdzie to odrzucasz. Dobrze było by je ukrywać przez js, tak by ogarnąć tez boty ogarniające css, ale na te z js już się nic nie poradzi. No i nazwać je trzeba tak by bot był zachęcony do wypełnienia.
  2. wykorzystać to https://kickbox.com/ odsieje kolejną część

o 1 doczytałem - będę to dodawał do aplikacji.
2 - to jest potencjalnie spoko opcja - weryfikacja adresu email przed rejestracją i nie wpuszczenie bota - dzięki!

@Markuz nie nie sprawdzałem, czemu dokładnie te boty lądowały u mnie. Po prostu wyłączem API na szybko do poprawek - na co klient się zgodził, tak mi było najszybciej ogarnąć problem.
Czy ma to jakieś znaczenie cel tego bota? Oprócz tego, żeby np. wyciąć te boty po nagłówku?

0

Może wystarczy dodać odpowiedni wpis do pliku robots.txt

0
Markuz napisał(a):

Może wystarczy dodać odpowiedni wpis do pliku robots.txt

to nie są boty indexujące tylko spamowe, poza tym, respektowanie tego to dobra wola twórcy a nie jakaś magiczna bariera :D

0

Cloudflare i blokada ruchu z poszczególnych państw + spowolnienie/blokada przy większej liczbie requestów + odpowiednia walidacja pewnie usunie większość problemów.

0
czysteskarpety napisał(a):

Cloudflare i blokada ruchu z poszczególnych państw + spowolnienie/blokada przy większej liczbie requestów + odpowiednia walidacja pewnie usunie większość problemów.

Z moich obserwacji tego typu boty są zazwyczaj bardzo "grzeczne". Ładnie się rejestrują, czekają losowy czas, piszą posta spamowego, znowu czekają i dopiero piszą. Czasem po kilku godzinach. Są na tyle "grzeczne", że na forum, gdzie nie trzeba się w ogóle rejestrować, aby pisać, nie napiszą, dopóki się nie zarejestrują. :-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1