Jaką odpowiedź HTTP powrócisz do trafienia z czarnej listy ip?

15

Używam http: BL do blokowania złych adresów IP przed dostępem do mojej witryny.

Jeśli złośliwy adres IP (spamujący komentarz) próbuje trafić na stronę, to tylko exitskrypt internetowy, który domyślnie zwraca 200 OKodpowiedź.

Inne odpowiedzi, które mógłbym zwrócić:

404 Nie Znaleziono?

Jeśli zwrócę 404, być może roboty pomyślą: „To strata czasu, przejdźmy do ataku na inną stronę”, co zmniejszy obciążenie witryny (obecnie dostaję około 2 spamów na sekundę).

jednak

  • Niechętnie zwracam 404 na adresy URL, które w normalnych okolicznościach można znaleźć.
  • Nie jestem pewien, czy roboty spamujące mogą „marnować czas”. tj. dlaczego pisarz botów miałby kłopotać się kodowaniem kodu 404, kiedy i tak po prostu miesza sieć?

401 Nieautoryzowany?

Blokowanie złego adresu IP nie jest tym samym, co „zasób wymaga uwierzytelnienia użytkownika 1), który nie został jeszcze podany lub 2), który został podany, ale nie powiódł się test autoryzacji”


Ogólnie uważam, że „reagowanie na złe boty zgodnie z odpowiednim protokołem HTTP” daje złym ludziom przewagę. W tym sensie, że gram według zasad, podczas gdy nie są (trochę jak Wielka Brytania w UE - ha, ha). W niektóre dni mam wrażenie, że powinienem zrobić coś sprytnego, aby odwrócić uwagę tych botów. W inne dni po prostu uważam, że nie powinienem brać tego do siebie i po prostu je ignorować. Zaakceptowanie go jako zasady prowadzenia strony internetowej.

Nie wiem - jakie są twoje myśli? Jak reagujesz, gdy wiesz, że to zły adres IP?

JW01
źródło
8
Osobiście chciałbym zwrócić błyskawicę, ale jeszcze nie wymyśliłem, jak to zrobić przez Internet.
Tin Man,
Kilka lat temu zauważyłem na francuskiej stronie PR7 otwartej na komentarze, że jeśli nie usuniemy 3-4 nowych komentarzy spamowych w pierwszym 36H, spamer wysłał 100-300 dodatkowych komentarzy. Wysłali więc sondę, sprawdzili, czy będzie to dobry cel, a następnie wysłali prawdziwy atak. Wówczas było wiele IP. Jak działają twoi napastnicy?
FelipeAls,
Wydaje mi się, że za 99% trafień spamowych stoi tylko około 2 lub 3 organizacji. Wygląda na to, że nie przeprowadzają sondowania, ponieważ żaden z ich tysięcy zgłoszeń nigdy nie został opublikowany w mojej witrynie. To wszystko jest bezcelowa sytuacja - spędzają czas na niczym, ja usuwam spam.
JW01,
6
Zwróć „Wymagana płatność 402” :)
keppla

Odpowiedzi:

19

Jeśli chcesz grać zgodnie z zasadami, poprawną odpowiedzią będzie 403 Forbidden lub 403.6 Adres IP odrzucony (specyficzny dla IIS).

Udzielenie 200 odpowiedzi (i zignorowanie komentarza) może po prostu zwiększyć obciążenie serwera, ponieważ robot spamujący prawdopodobnie będzie nadal przesyłać spam w przyszłości, nie wiedząc, że nie ma to żadnego wpływu. Odpowiedź 4XX przynajmniej mówi „odejdź, musisz sprawdzić swoje fakty” i prawdopodobnie ograniczy przyszłe próby.

W mało prawdopodobnym przypadku, gdy masz dostęp do zapory, blok adresów IP znajdujących się na czarnej liście w zaporze minimalizuje obciążenie serwera / sprawia, że ​​wydaje się, że twój serwer nie istnieje dla spamera.

Chciałem zasugerować użycie tymczasowego przekierowania 302 na własny adres IP spamera - ale prawdopodobnie nie przyniosłoby to żadnego efektu, ponieważ bot nie miałby powodu, aby śledzić przekierowanie.

W przypadku spamu przesyłanego ręcznie, dobrym sposobem jest uczynienie go widocznym tylko przez adres IP, który go przesłał. Spamer odchodzi szczęśliwy i zadowolony (i nie zmienia swojego podejścia do pracy nad twoją obroną), a pozostali użytkownicy nigdy nie widzą spamu.

MZB
źródło
Dzięki. Nigdy nie słyszałem o statusie 403,6. Jeśli chodzi o przekierowanie z powrotem na adres IP: Tak, zastanawiałem się nad podniesieniem lustra, aby wszystko, co zostało na nas rzucone, zostało odesłane z powrotem do nich ... ale potem zdałem sobie sprawę, że powielanie złego ruchu nie było dobrym pomysłem. 403 jest więc prawdopodobnie rozsądną drogą.
JW01,
Lubię 403 lub 404, pochylonych w kierunku 404. 403 może zachęcić ich do wypróbowania różnych taktyk. 404 oznacza, że ​​strona w ogóle nie istnieje i jest to zły adres URL. Napisałem dużo pająków do poprzednich prac i rzadko widziałem 403, ale natknąłem się na 404. Tak czy inaczej mój kod usunie adres URL z kolejki, ale to dlatego, że próbowałem grać uczciwie. Myślę też, że stałe przekierowanie do 127.0.0.1 może być lepsze niż do własnego adresu IP, chociaż nie grałem z tym. Szkoda, że ​​nie możemy przekierować ich do prawdziwej czarnej dziury.
Tin Man,
ha ha. Właśnie przeczytałem swój pierwszy komentarz „Dzięki. Nigdy nie słyszałem o statusie 403.6”. - myślę, że to jedna z najśmieszniejszych rzeczy, jakie powiedziałem.
JW01,
Zapora ogniowa - nie rozumiem, dlaczego firmy hostingowe nie oferują tego tylko w ramach standardowego pakietu.
JW01,
1
@ JW01: Tak jest na dedykowanych lub wirtualnych maszynach. Nie może być częścią hosta współdzielonego, ponieważ wpłynęłoby to na innych użytkowników. Jeśli masz dostęp do roota, popraw go.
d -_- b
5

Nie wiem, czy to zła praktyka, ale skonfigurowałbym serwer tak, aby w ogóle nie wysyłał żadnej odpowiedzi.

Andrzej Bobak
źródło
1
nie jest to realistyczne, biorąc pod uwagę, jak dzieje się większość architektury serwerów. Routery i inne rzeczy utrzymują otwarte żądania aż do wysłania odpowiedzi, więc wysłanie „brak odpowiedzi” stwarza problemy w warstwie architektury serwera, których nie chcesz.
Jason FB