Ochrona witryny przed spamem

17

Click here to load reader

description

Autor: Wojciech Kocjan Podczas prelekcji zaprezentuję metody zabezpieczania formularzy, for dyskusyjnych i komentarzy przed robotami spamerskimi. Będzie nieco o charakterystyce i celach ich działania, oraz o tym, jak działają przypadki z życia wzięte. Przedstawię przegląd rozwiązań, które blokują spam, a także kilku technik, które można zastosować.

Transcript of Ochrona witryny przed spamem

Page 1: Ochrona witryny przed spamem

Ochrona witryny przed spamem

/17

Wojciech Kocjan / Weeby.pl

Ochrona witryny przed spamemPHPCon, 21-23.05.2010

1

Page 2: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Definicja problemu

Spam na stronie?

Niechciane wiadomości (e-mail, IM, spam w wyszukiwarkach),

Początki spamowania witryn:

Zbieranie adresów e-mail,

Księgi gości - zwiększanie Link Popularity.

Wypełnianie formularzy:

Witryna jako kolejne medium do „spamowania”.

2

Page 3: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Dlaczego trzeba z nim walczyć?

Problemy ze spamem

Niezrozumiała treść dla użytkowników:

Często linki do stron niebezpiecznych (wirusy, phishing),

Czas na moderację ,

Zużycie transferu (blokada, koszty),

Spowolnienie witryny,

Strata: czasu, pieniędzy i odwiedzających.

3

Page 4: Ochrona witryny przed spamem

Ochrona witryny przed spamem

/17

Wojciech Kocjan / Weeby.pl

Trzeba walczyć ze spamem.Jak?

4

Page 5: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Wyłączyć co się  da...

Najskuteczniejszy sposób

Wyłączyć komentarze,

Wyłączyć  fora dyskusyjne,

Wyłączyć formularze,

Wprowadzić konieczność rejestracji,

Którą boty i tak ominą...

Moderacja.

5

Page 6: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Blokada podejrzanego ruchu

Analiza nagłówków HTTP

Adres IP (REMOTE_ADDR),

Przeglądarka użytkownika (USER_AGENT),

Strona odsyłająca (HTTP_REFERER),

Porównanie z danymi, używanymi przez roboty spamerskie,

Czarne listy adresów IP.

6

Page 7: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Skrypt analizujący nagłówki HTTP

Bad Behavior

Analizuje nagłówki HTTP:

Nie analizuje treści żądań,

W razie wykrycia spamu wysyła 4xx.

Prosta instalacja, integracja z popularnymi systemami,

Open Source (GNU GPL),

Miliony odsłon dziennie, niewielki margines błędu.

7

Page 8: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Jak ją  prawidłowo wykonać?

Analiza przesłanych danych

Sprawdzanie danych wejściowych:

Długość pól,

Poprawność typów zmiennych,

Specyficzne pola (NIP, PESEL, kod pocztowy etc.).

Filtr na popularne „spamerskie” słowa,

Liczba linków w treści.

8

Page 9: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Cechy wspólne

Aplikacje anty-spamowe

Architektura klient - serwer,

Szereg testów:

Czarne listy adresów IP,

Listy podejrzanych słów,

Test JavaScript,

Czas od wyświetlenia strony do wypełnienia formularza.

9

Page 10: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Cechy systemu

Akismet

Najbardziej popularny na świecie:

Wykrywa 5 milionów spamu dziennie,

Łącznie zablokował 16 miliardów,

83% badanej treści to spam.

Łatwość integracji (Wordpress),

Klucz API - darmowy tylko do niekomercyjnych zastosowań.

10

Page 11: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Cechy systemu

Sblam!

Projekt polski:

Dostosowanie do naszego języka.

Analiza danych trwa ok. 1 sekundę,

Otwarty kod źródłowy:

Możliwość postawienia własnego serwera,

Klucze API do statystyk.

11

Page 12: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Jak zniechęcić użytkownika do rejestracji...

CAPTCHA

Losowe znaki w postaci graficznej,

Często nieczytelne,

Łamane przez boty spamerskie (OCR),

Lepsze rozwiązania:

Test matematyczny (2+3 ?),

Proste pytanie.

12

Page 13: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Kot czy pies?

CAPTCHA

13

Page 14: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Proste zadanie do rozwiązania

Test matematyczny

14

Page 15: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Niebezpieczeństwo użycia mail()

Formularze kontaktowe

mail(‘[email protected]’, $temat, $tresc, ‘Reply-To: $nadawca’);

Paraliż serwera poczty,

Pojawienie się na czarnych listach IP,

Dziury w popularnych systemach CMS:

Brak aktualizacji,

Niesprawdzone pluginy.

15

Page 16: Ochrona witryny przed spamem

Ochrona witryny przed spamem Wojciech Kocjan / Weeby.pl

/17

Jak wygrać walkę ze spamem

Podsumowanie

Analiza nagłówków HTTP (Bad Behavior),

Sprawdzanie poprawności danych wejściowych,

Analiza danych pod kątem SPAMu (Sblam!):

Analiza logów.

Moderacja w razie niepewności,

Efekt: Problem rozwiązany.

16

Page 17: Ochrona witryny przed spamem

Ochrona witryny przed spamem

/17

Wojciech Kocjan / Weeby.pl

Dziękuję za uwagęPytania?

17

Blog.Weeby.pl

Weeby.blip.pl