Sblam!

Blokuje blogowy spam

Sposoby blokowania spamu w formularzach

↓ Przejdź prosto do tabeli technik w Sblam!

Nie ma idealnego, stuprocentowo skutecznego sposobu na spamerów. Wszystkie „genialne wynalazki” można podzielić na kategorie:

„działa tylko fartem”

czyli poleganie na oczywistych niedoróbkach w botach i tech­ni­kach spa­mo­wa­nia, np. nie­pra­wi­dłowym odczy­tywaniu HTML albo idio­ty­cz­nym wypeł­nianiu pól w formu­larzach. Te techniki przestaną działać jak tylko spa­me­rzy zauważą swoje błędy.

„wyścig zbrojeń”

czyli bardziej techniczne rozwinięcie poprzedniego wyko­rzys­tu­jące fakt, że boty jeszcze czegoś nie potrafią, np. nie obsługują jakiejś machi­na­cji w CSSJS. Boty nie obsłu­gują tych techno­logii nie dla­tego, że to jest nie­mo­żliwe, a dla­tego, że bez nich da się wys­tar­cza­jąco dobrze spamować. Jeśli jakaś tech­ni­cz­na sztuczka stanie się popu­larna, to spamerzy nauczą boty sobie z nią radzić, aż dojdziemy do sytuacji, że nie będzie się dało korzystać z Sieci bez najnaj­najnowszej przeglądarki z włączo­nymi wszystkimi możliwymi wtycz­kami naraz.

Szczególnym przypadkiem wyścigu zbrojeń jest CAPTCHA, które drażni użyt­kow­ni­ków, dys­kry­mi­nuje nie­wi­do­mych. Choć tech­nicz­nie odczy­tanie liter z obrazka jest bardzo trudne, to nie jest niemoż­liwe — słabe, a po­pu­lar­ne CAPTCHA (np. to w PHPbb) są już regu­larnie łamane. W efekcie użytkow­nicy mają coraz więcej coraz bardziej nieczytelnych wygi­basów do przepisywania.

Wszystkie zabezpieczenia skuteczne na dłuższą metę muszą spamerów kosztować, czyli blokować to, co im przynosi zysk albo za co płacą. Spamerom do zarobienia potrzeba linków i słów kluczowych. Ponoszą koszty na pozys­kanie domen, łączy i (w mniej­szym stop­niu) rozwój botów.

Pobierz skrypt skrypt jest darmowy — licencja

Wymagania

  • PHP 4.2+ lub PHP 5.
  • Włączone (standardowe) rozszerzenie sockets.
  • Podstawowa znajomość programowania w PHP (zobacz opis instalacji).

Techniki użyte w Sblam!

Sblam! używa tych wszystkich niżej wymienionych filtrów naraz i ostateczną decyzję podejmuje na podstawie sumy ocen wszystkich filtrów, więc nawet jak niektóre się pomylą, to pozostałe mogą uratować sytuację.

Opis technikiZaletyWadyKoszt obejścia
Filtr statystyczny do słów
Bayesowski filtr, który dysponuje bazą ok. 8 milionów słów i fraz z okreś­lo­nym prawdo­podo­bień­stwem bycia spamem/hamem.Uczy się wszys­tkich spa­mo­wa­tych fraz i to w naj­róż­niej­szych języ­kach — nie tylko amery­kańskich farma­ceutyków, ale też hiszpańs­kich oka­zyj­nych kredytów i ruskich wyprze­daży komórek.Daje sensowne wyniki tylko dla ok. 90% pos­tów — reszta ma za mało treści albo nafaszerowana jest losowymi ciągami znaków.Obejście zmniejsza opła­cal­ność. W spa­mie e–mail­owym spa­me­rzy zaczęli omijać takie filtry prze­kręca­jąc słowa i wkle­jając frag­menty ksią­żek. Na WWW to się nie opłaca — potrzebne są słowa kluczowe dla Googla i unikanie ich albo dokle­janie niewin­nego tek­stu zmniej­sza skutecz­ność spamu.
Filtr statystyczny do URL-i
To samo jak wyżej, ale zastosowane specyficznie do URL-i z uwzglę­dnie­niem domen. Dzięki temu filtr auto­ma­tycznie robi czarne i białe listy domen i poddomen.Uczy się i to lepiej, niż prosta czar­na lista, bo odpo­wiednio wy­waża ocenę stron wyko­rzys­ty­wa­nych jed­no­cześ­nie przez użytkow­ników i spa­me­rów (np. tinyurl.com)Złośliwy spamer może psuć repu­tac­ję innym domenom. Filtr nie po­może na domeny, których jeszcze nie widział.Obejście zmniejsza opła­cal­ność. Żeby ominąć blokadę spamer musi zdobyć i „wypro­mować” nową domenę.
Czarna lista domen
Banowanie na podstawie ręcznie budo­wa­nych czarnych list, głównie chongqed.org (używane przez Wiki­pedię).Chongqed specjalizuje się w spa­mie na Wiki, więc ma ładną kolekcję spa­mer­skich adresów.Baza to tylko kropla w morzu spa­me­rów.
Banowanie po IP i klasach IP
Spamerskie adresy IP są auto­ma­tycznie wpi­sy­wane na czar­ną listę. Kilka spamów z tej samej pod­sieci do­pro­wadza do zba­nowania całej pod­sieci. Zaakcep­to­wane posty zdej­mują bany. Bany po jakimś czasie wygasają.Rozwiązuje problem upartych spa­me­rów, nawet ze zmiennym IP. Auto­ma­tyczne zdej­mowanie i wyga­sanie banów pozwala uniknąć blo­ko­wania zawi­ruso­wanych Neo­strad.Masz pecha, jeśli twój (sie­ciowy) sąsiad jest spa­me­rem albo korzy­stasz z publicz­nego proxy.Obejście zmniejsza opła­cal­ność. Wy­ma­ga od spa­me­rów znajdo­wania więk­szej ilości nie­kompe­ten­tnych ISP oraz roz­budo­wy­wa­nia i ulep­sza­nia bot­ne­tów. Naj­więksi spa­merzy mogą sobie na to pozwolić — dla nich każda luka w IE/Out­look to kolejne miliony dar­mo­wych ad­resów IP pod kontrolą.
Project Honeypot http:BL, Spamhaus, SURBL i inne DNSRBL-e
Sprawdza nadawcę i linki w DNSowych czarnych listach.Są to olbrzymie czarne listy IP utrzymy­wane przez duże organi­zacje zbiera­jące zgło­szenia, moni­to­rujące ISP, stawia­jące pułapki (honey­pots), itp.RBL-e (z wyjątkiem Project Honeypot) są nastawione na spam e–mail­owy, więc boty blo­ko­wane są naj­wyżej „przy okazji”. Spam słany przez za­wi­ru­so­wane Win­dowsy powoduje blokowanie IP niewinnych użyt­kow­ników.
Spamowe kraje i ISP
Podejrzliwie patrzy na posty wysłane ze znanych „spamowych rajów”, gdzie są tanie szybkie łącza i brak nadzoru.Pomaga wyłapać spamy nieza­leżnie od ich treści.Dyskryminuje mieszkańców Malezji, Koreii, itp.
Czarna lista słów
PMWiki ma wtyczkę blocklist2 zawierającą spa­mer­skie frazy z wiki.Najmodniejsze spa­mer­skie frazy nie zginą w tłumie filtru statystycznego.Kropla w morzu.Obejście zmniejsza opła­cal­ność. Wymaga przerzucania się na mniej lukra­tywne słowa kluczowe.
Exploity na mail()
PHPowa funkcja mail() jest niezbyt prze­myś­lana i w rękach amators­kiego kle­pa­cza (a tych jest mnóstwo) pozwala roz­sy­łać spam po całym inter­necie z „pry­wat­nego” formu­larza kontaktowego.Spamerzy nie mają jak bronić się przed wykryciem — muszą użyć charak­terys­tycz­nego frag­mentu kodu.Ten typ spamu staje się coraz mniej popu­larny.Niemożliwe do obejścia.
LinkSleeve
Serwis linksleeve.org moni­to­ruje nades­łane do nich linki i zgłasza, które wydają się być sztucznie popularne.Pomaga walczyć z botnetami, które spamują tym samym linkiem w set­kach tysięcy miejsc.LinkSleeve nie jest nieomylny. Spamerzy czasem złośliwie spamują linkami do cudzych stron.Obejście zmniejsza opła­cal­ność lub prędkość. Wymaga zmniej­szenia tempa albo zwięk­sze­nia ilości spamo­wanych domen.
Godzina wysłania postu
Bardziej sceptycznie podchodzi do pos­tów wysłanych w środku nocy — poza „godzi­nami szczytu” w Internecie pracują głównie boty.„Chroni Cię przed spamem, kiedy śpisz!”Nocne marki muszą poczekać do rana z wrzu­ca­niem linków do kasyn.Obejście zmniejsza pręd­kość spa­mo­wa­nia. Wymaga zrezy­gno­wania ze spa­mo­wa­nia całą dobę.
Obecność JavaScript
Kawałek zamotanego skryptu docze­pia­nego do strony.Jest niewiele botów obsługujących Java­Script, więc (jeszcze) to jest dobry sposób rozpoznawania zwykłych użytkow­ników.Nie może to być jedyna metoda, bo użyt­kow­nicy mają prawo nie mieć (włączo­nego) JS, a boty z obsługą JS mogły by hulać do woli.Wyścig zbrojeń. Boty z obsługą JavaScript można napisać jako wtyczkę do przeglądarki, jednak prędkość takich botów jest stosunkowo niewielka.
Poprawność wypełnienia pól
Sprawdza, czy bot nie powrzucał linków w pole od e–mail, treści w podpis, itp.Mała szansa, żeby człowiek się tak kom­plet­nie pomylił, a botom się zdarza.Mało jest aż tak głupich botów.Wyścig zbrojeń. Wystarczy poprawnie parsować HTML i dodać trochę sztucznej inteli­gencji do bota.
Czas pisania wiadomości
Mierzy czas od wyświetlenia formularza do wysłania wiadomości.Sporo botów wysyłą post natychmiast.Użyt­kow­nicy też mogą szybko wysłać wia­do­mość — np. wkleić link albo odpisać „ok”.Działa tylko fartem. Można to łatwo obejść zwiększa­jąc ilość równo­legle spamo­wanych stron.
Formatowanie HTML+BBCode
Leniwi spamerzy wrzucają linki zarówno w formacie BBCode jak i HTML, mając nadzieję, że któryś zadziała.Proste i (póki co) skutecz­ne.Jak zwykle — istnieje szansa pomyłki.Działa tylko fartem. Wystarczy roz­poz­nać system blo­gowy/fo­rum albo wyszu­kać pod­po­wie­dzi w kodzie strony.
Unikalne identyfikatory w wiadomościach
Niektórzy spamerzy żądni statystyk swoich działań dołą­czają do wiado­mości uni­kalne identyfi­katory.Proste do złapania.Działa tylko na najgłup­szych spa­me­rów.Działa tylko fartem.
Ilość linków
Podejrzliwie traktuje posty ze sporą ilością linków.Blokuje najbardziej chamski spam nafa­szer­owany linkami. Ten typ jest wciąż popu­larny.Czasem użyt­kow­nicy wklejają listę linków.Działa tylko fartem. Spamerzy już uczą się używania tylko jednego linku i to nie w treści postu, a w polu na stronę WWW autora.
Błędne nagłówki HTTP
Niektóre boty używają nędznych imple­men­tacji HTTP (szczególnie popularny jest Microsoft .Net :D) albo dziura­wych proxy, które da się wykryć i przy­blo­ko­wać.Na szczęście sporo botów się pod­kła­da, dzięki czemu można blo­ko­wać posty nie­za­leż­nie od tego, jak prze­biegle zamas­kowana jest ich treść.Nie można na tym w pełni polegać, bo użyt­kow­nicy miewają zbu­go­wane prze­glą­darki i proxy.Działa tylko fartem. Jak ktoś by chciał, mógłby kom­plet­nie ominąć ten filtr.
Kontakt Mapa strony Licencja News Feed
2007.08. Autor Sblam: porneL, Webmasterka: Falka