Vyhodnocení účinnosti komentářového antispamu
Komentářový spam je problémem mnoha webů. Na svých stránkách komentářový spam již delší dobu monitoruji a vypracoval jsem několik postupů jak se mu bránit. Během více než půl roku jsem nasbíral množství dat, která vypovídají o účinnosti jednotlivých metod. Podrobnosti o těchto metodách se můžete dozvědět v předchozích článcích Komentářový spam - bráníme se a Postřehy z boje proti komentářovému spamu.
Tyto článku ukazují, že velmi dobrá metoda je použití nastrčeného formulářového prvku s lákavým názvem. Během doby testování přišlo na můj web 4323 spamových komentářů a 100% z nich bylo zachyceno, přičemž ani jednou nebyl špatně detekován skutečný komentář.
Výsledky
A nyní již k analýze samotných spamů. Žádná statistika se neobejde bez grafů, tak zde máme jeden který ukazuje počet spamových komentářů dle dnů.
Zajímavější a zároveň znepokojující je však pohled na měsíční úhrn spamů a jeho stoupající tendence... Srpen má nejvíce spamů za celé období a to ještě týden do konce zbývá. Troufám si odhadnout, že počet v tomto měsíci dosáhne magické hranice 1000.

Komentářové spamy bych rozdělil do 2 skupin - testovací a reálné.
- Testovací zkouší jen, zda je web využitelný ke spamování a jejich obsahem je nesmyslný řetězec, který se špatně testuje kontextovým filtrem.
- Reálné jsou již samotné spamy pro než je charakteristická přítomnost hypertextového odkazu
Obsah reálných je často možný odchytit kontextovým filtrem podle klíčovových slov. Použitý kontextový filtr označí zprávu za spam, pokud má skóre větší než 20, nejmenší hodnota reálného spamu byla 11 (a největší 1823). V celkovém součtu vykazuje kontextový filtr účinnost 90,3% (pokud se vezmou v úvahu jen reálné spamy, tak je to 95%). Zvýšením agresivity filtru z 20 na 19 ze zvýší účinnost na 94,3% (97,3% reálně), ale to jen proto, že množství spamů mělo skóre 19, další nižší hodnota byla až 15. Účinost filtru lze ještě o pár procent zvýšit použitím relevantnějších klíčových slov, které spamboti používají (používaný slovník vzniknul spíše odhadem ze spamů co přicházely mailem).
Následující tabulka ukazuje nejčastěji používaná slova co na můj web přišla:
| výraz | počet | výraz | počet | výraz | počet | výraz | počet |
|---|---|---|---|---|---|---|---|
| http | 56638 | fuck | 2090 | np | 1170 | model | 771 |
| href= | 55782 | underage | 2078 | nepalpost | 1169 | xxx | 753 |
| viewtopic | 48371 | animals | 2021 | uk | 1150 | cnb | 750 |
| www | 26603 | naked | 2013 | vub | 1144 | cp | 749 |
| com | 25720 | pthc | 1931 | wuk | 1144 | good | 745 |
| forum | 21517 | go | 1878 | igweb | 1143 | russian | 738 |
| sex | 7600 | models | 1852 | stories | 1114 | my | 735 |
| lolita | 7126 | little | 1845 | azedresearch | 1082 | webboard | 715 |
| rape | 7116 | phpbb | 1818 | video | 1032 | tgp | 712 |
| free | 6185 | gov | 1805 | ma | 1031 | galleries | 692 |
| preteen | 6181 | girls | 1794 | site | 1027 | de | 671 |
| bbs | 5218 | foro | 1729 | zi | 1027 | id | 670 |
| edu | 5205 | movies | 1728 | user | 1023 | top | 635 |
| animal | 4561 | html | 1725 | il | 1005 | blogzoop | 631 |
| forums | 4387 | pedo | 1618 | videos | 990 | women | 624 |
| org | 4274 | very | 1609 | mof | 965 | tube | 594 |
| phpbb3 | 3979 | japanese | 1581 | pdmo | 964 | gallery | 572 |
| nude | 3516 | child | 1578 | fucked | 944 | es | 572 |
| ac | 3466 | board | 1554 | by | 943 | index | 567 |
| young | 3453 | virgin | 1543 | pictures | 936 | 007webs | 559 |
| porn | 3432 | of | 1487 | bb | 899 | kid | 546 |
| pics | 3307 | be | 1462 | lolis | 897 | pic | 542 |
| net | 3257 | loli | 1358 | pre | 891 | children | 542 |
| phpbb2 | 2800 | and | 1319 | with | 885 | real | 541 |
| th | 2676 | ru | 1290 | kids | 849 | verry | 540 |
| teen | 2447 | tw | 1251 | ls | 826 | sites | 536 |
| lolitas | 2261 | girl | 1244 | new | 821 | ssi-ent | 535 |
| co | 2239 | in | 1226 | pl | 821 | pussy | 533 |
| illegal | 2129 | horse | 1225 | info | 802 | magazine | 511 |
| incest | 2128 | art | 1220 | gay | 783 | modules | 509 |
Spam přicházel z více než 1800 unikátních ip adres, proto je jejich blokování vcelku zbytečné... Nejvíce spamu přišlo z ip 114.127.246.36 a to 102 spamů (druhá je 41.210.252.11 se 43 zásahy), z ostatních ip počet spamů jen málokdy překročil 10 (konkrétně ze 42 ip včetně prvních 2, objem spamu z těchto adres čítá 770 spamů). Různorodost IP adres ukazuje, že největší zdroj spamů jsou botnety napadených počítačů. 94,6% spamů používalo jedinou vstupní stránku na můj web, což teorii velkých botnetů dále potvrzuje. Jeden spam odkazoval v refereru na doménu appspot(dot)com a 43 přišlo přímo.
Trošku překvapení se konalo u ochrany s javascriptovým dovyplněním pole - 38 spamů prošlo touto ochranou a javascript zpracovalo. Tento fakt napovídá znepokojivému vývoji do budoucna, že budou boti stále chytřejší a obrani před nimi bude složitější.
Dalším typem nástrahy na spamboty jsou nastražené submit čudlíky pro uživatele neviditelné. Jsou zde 4 - první prvek ve formuláři, uprostřed, opravdový submit a na konci formuláře. Tato ochrana je pouze doplňková, uživatel odesílá formulář viditelným čudlíkem, může se však v určitém formuláři stát, že při odeslání enterem dojde k odeslání prvním, ostatní jsou pak již v režii robotů. Odeslání prvním můžeme brát jako varování. 52 spamů přišlo odesláno jiným než prvním submitem (z toho 45 bylo odesláno bez použití formlulářových prvků), 119 použilo všechna dostupná tlačítka.
Zatím 100% ochranu prokázalo vložené skryté políčko NICK. Všehny spamy měli toto políčko vyplněné. Z došlých záznamů je vidět, že se toto políčko tvoří buď pomocí slovníku nebo je celé náhodně generované.
Různé zajímavé údaje
95,4% spamových komentářů má identifikaci prohlížeče Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1), v tomto poli se objevily i zajímavé identifikátory od windows CE po Nutscrape/1.0 (CP/M; 8-bit).Během psaní tohoto článku přišlo dalších 20 spamů.
Samotný text přijatý spamem zabírá v databázi téměř 8MB.
(po dalším zkoumání určitě ještě pár údajů přidám
)
Zhodnocení
Do budoucna nejsou vyhlídky přiliš růžové, množství spamu se pomalu, ale jistě zvyšuje a spamboti začínají být chytřejší. Nejúčinější metoda se zatím jeví použití nastrčeného textového prvku s lákavým jménem. Používání kontextového filtru může přineést částečnou ochranu i proti cíleným útokům, ze získaných dat bude možné získat kvalitnější filtr. Zdrojem spamu jsou hlavně málo zabezpečené domácí počítače a cílem jsou napadené webové stránky, které obsahují další nákazu. Osobně si myslím, že ochrana nastrčeným políčkem je v současné době dostatečná a myslím, že i nějakou dobu vydrží bránít se proti necíleným útokům. Její kouzlo je hlavně v filozofii samotného spamování, kdy bot raději vyplní políčka, která můžou být povinná, než aby je nechal prázdná. První pomocí pro napadené weby je zjištění přes jakou stránku svůj obsah posílají a následně její přejmenování.Aktualizovaný graf - příjemně optimistický




