
Jak na spam II.
V prvním dílu článku věnovaném spamu jsme si uvedli některé základní
problematické oblasti týkající se nevyžádaných e-mailových komerčních zpráv.
V tomto druhém dílu se zaměříme na technickou stránku protispamových
opatření.
Ani tentokrát se však nebudeme věnovat konkrétním antispamovým programům a
podíváme se na problém raději více z nadhledu. Než člověk totiž konkrétní
technický prostředek nasadí, měl by správně porozumět jeho principům a uvědomit
si, čeho jeho nasazením dosáhne. Jinak hrozí, že použitý nástroj bude
v lepším případě neúčinný a v horším případě dokonce
kontraproduktivní.
Metody neúčinné
Mazání spamu
Řada uživatelů "řeší" problém spamu instalací antispamového filtru, který
zprávy identifikované jako spam automaticky maže. Takový
postup může být z hlediska zastavení obtěžování uživatele poměrně účinný.
Například velmi populární bayesovská metoda uvedená do praxe známým lispovým
expertem Paulem Grahamem mívá velmi vysokou přesnost určení spamu. Obzvlášť
rafinované filtry mohou dokonce dosahovat vyšší úspěšnosti rozpoznání spamu,
než mají při ručním promazávání své e-mailové schránky lidé. To řadu lidí
svádí k domněnce, že problém spamu je účinným filtrem vyřešen.
Bohužel se jedná o omyl, protože filtrování a následné mazání spamu řeší
jen část problémů, které spam působí. Jedná se o postup ústupový, který
spammerům nijak neškodí a naopak je podporuje, neboť jim svým způsobem
poskytuje klid k práci -- nejaktivnější odpůrci spamu si filtr
zkonfigurují dostatečně dobře na to, aby spamem nebyli příliš obtěžování a tím
pádem svůj hněv vůči spammerům utlumí. Ovšem jen do doby, než bude spam tvořit
99,99% veškerého e-mailového provozu a dosud spokojeně filtrující uživatel
zjistí, že spam ucpal jeho mail server, veškerý procesorový čas je
spotřebováván na filtrování a že spamu je nakonec tolik, že jej i přes
vysoce účinný filtr stejně do své schránky dostává.
Spam tedy nestačí jen filtrovat a mazat. Je zapotřebí jeho zasílání znemožnit
a když už je spam přece jen odeslán, tak provést protiakci. Tou první a
nejjednodušší je spam odmítnout už v okamžiku SMTP spojení. Spammerovi
tak dáte najevo, že není vítán, a legitimním uživatelům zase okamžitě
sdělíte, že jejich e-mail byl omylem zachycen.
Jednota jako slabina
Podobně jako jednotné prostředí svědčí počítačovým virům, umožňuje někdy
spammerům použitá opatření snadno obejít. V případě filtrovacích metod
je lépe spammerům naklást do cesty větší množství malých překážek než jednu
překážku velkou. Spammer totiž při rozesílání zpráv na miliony adres musí pro
dosažení svého úspěchu projít všemi cestami.
Bayesovská metoda filtrování je založena na natrénování
individuální databáze slov vyskytujících se ve spamu anebo
naopak vyskytujících se v legitimních e-mailových zprávách. Individualita
databáze je v tomto přístupu klíčová, je proto zásadní chybou použít
globální natrénovanou databázi. Pokud si chce uživatel
ušetřit práci a spolu s bayesovským filtrem si místo řádného nakrmení
databáze několika tisícovkami e-mailů ze své vlastní schránky nainstaluje
databázi předpřipravenou, nebude mít pravděpodobně takový filtr dlouhou
životnost. Spammeři pochopitelně protispamová opatření sledují a není pro ně
nic snazšího, než do spamu přimíchat několik "dobrých" slov a celou metodu tak
lehce obejít. Naproti tomu při individuálních databázích takové obejití není
možné, protože množina "dobrých" a "špatných" slov je u každého uživatele
jiná.
Jedna díra stačí
Z historie známe řadu případů, kdy se propracovaná obrana zcela minula
účinkem z prostého důvodu, že ji nepřítel jednoduše obešel jinou cestou.
Můžete mít nainstalovánu vynikající protispamovou ochranu na svém primárním
mailovém serveru, ale pokud ji nemáte nainstalovanou i na serverech
záložních, zřejmě brzy pochopíte, proč spammeři s oblibou rozesílají spam
přes poštovní servery s nejnižší prioritou svých MX záznamů. I když
třeba nakonec pošta ze záloh končí na serveru primárním, tak následky způsobené
zahlcením po výpadku primárního serveru řešíte vy a ne spammer. Nemělo by tomu
být naopak?
Metody antiuživatelské
Další skupinou protispamových opatření jsou opatření protiuživatelská. Velmi
populární je například zamezení přístupu do mailing listů zprávám
s nepřihlášenou adresou odesílatele. Toto opatření bývá vysoce účinné,
protože spammeři zatím neodlišují adresy mailing listů od ostatních adres a
tím pádem se před odesláním spamu do mailing listu nepřihlásí.
Bohužel je taková věc účinná i proti legitimním přispěvatelům. Někteří
lidé mají celou řadu e-mailových adres, jiní používají pro své přihlášení
speciální adresy, které veřejně neuvádí, a někteří nejsou do mailing listu
přihlášení vůbec (typicky lidé posílající oznámení o chybě do mailing
listu k tomu určeného). Osobně takto blokovaná fóra většinou opouštím,
mám důležitější věci na práci, než komunikovat s mailing list servery.
Cesta privilegovaných adres je tedy vhodná pro uzavřenější komunikaci, nikoliv
třeba již pro mailing listy, kde se hledá pomoc.
Lze se setkat i s kuriózními názory, že e-mail by se měl přestat
používat a že jej lze nahradit jinými mechanismy, jako je například Jabber nebo
RSS. Někteří lidé mohou být s takovým řešením spokojeni, nejsou to však
ti, kdo e-mail skutečně potřebují. Principem e-mailu je to, že máte
dostupnou schránku, do které vám může poslat zprávu každý.
Každé řešení s touto velmi užitečnou, avšak zneužitelnou vlastností bude
vůči spamu stejně náchylné jako e-mail. Zrušení e-mailu problém neřeší, pouze
jej přesouvá jinam. Cílem není přestat otevřeně komunikovat, nýbrž zabránit
zneužívání otevřené komunikace.
Metody antispamové
Skutečné antispamové metody by měly mít zásadní dopad na spammera a minimální
na uživatele. Tyto dva požadavky bývají v některých případech
protichůdné, lze však nalézt cesty k jejich současnému splnění. Lze totiž
využít toho, že normální uživatel na rozdíl od spammera nerozesílá miliony
e-mailů současně, že e-mailový účet normálního uživatele má podstatně delší
životnost než e-mailový účet spammera nebo že normálních uživatelů e-mailu je
mnohem více než spammerů a jejich zákazníků.
Metody platební
Jeden z faktorů, které spamování umožňují, je nízká cena odeslání e-mailu.
Podaří-li se odesílání e-mailů dostatečně prodražit, spammerovi se přestane
spamování vyplácet. Hovoříme-li přitom o ceně, nemáme na mysli přímo
peníze, nýbrž výpočetní a síťové zdroje.
Nejjednodušší může být aplikace principu "když budu platit za tebe, tak ty
budeš muset na oplátku zaplatit za mě". Princip bude uplatněn, když pro každý
odfiltrovaný e-mail bude zaslána zpráva o nedoručení, nejlépe
s přirážkou, tj. většího rozsahu, než byl obdržený spam. Spammer za
přijetí takové odpovědi platí spotřebovanou kapacitou síťové linky a procesoru,
stejně jako poskytovatel připojení, který jej toleruje.
Nechce-li spammer takto platit, musí odpovědi buď odmítat, nebo falšovat adresu
odesílatele. První případ lze ošetřit ověřením funkčnosti e-mailové adresy
odesílatele před přijetím e-mailu, druhý případ může být právně postižitelný.
Odesílání zpráv o nedoručení má ovšem své mouchy. Zřejmě není jednoduše
aplikovatelné na e-mailem zatížených místech a zejména je zapotřebí opatrnosti
s ohledem na zfalšované adresy odesílatelů. Jistě mnozí znají automatické
odpovědi pitomých antivirových filtrů sdělující, že vámi nikdy neodeslaný
e-mail obsahuje virus.
Jiným jednoduchým postupem může být vložení prodlevy na přijímajícím konci SMTP
spojení, je-li podezření, že přijímaná zpráva je spam. Spammera to nutí
udržovat spoustu otevřených spojení současně, což mu celou akci zdržuje a
prodražuje. Alternativním nebo doplňujícím postupem může být odmítnutí
prokazatelného spamu až po přenesení celého jeho těla, kdy spammer vidí, že jen
zbytečně vyplýtval kapacitu své linky. Ale pozor, aby tyto akce byly
aplikovány opravdu proti spammerskému serveru a ne třeba proti vlastní relay!
Princip pozdržení lze dále vylepšovat. Například metoda zvaná greylisting
provádí dočasné odmítnutí zpráv od neznámých odesílatelů a
z neznámých míst. Spammer je tedy nucen své pokusy opakovat, na což mu
však už nemusí zbýt dostatek času -- než se tak stane, je odpojen zneužitým
poskytovatelem připojení nebo se příslušný spam či zdrojový server ocitne
v antispamových databázích. Vy jako příjemce zároveň získáváte čas
k automatizovanému prověření zprávy (princip využívaný v GNU SAUCE).
Takové opatření již ne zcela splňuje požadavky na neomezování legitimních
uživatelů, protože může pozdržet urgentní legitimní zprávu. Poněvadž se však
aplikuje jen na dosud neznámé údaje o odesílateli a nevyžaduje od
odesílatele žádnou dodatečnou aktivitu, jsou protiuživatelské dopady většinou
malé. Každopádně je vhodné je posoudit s ohledem na konkrétní situaci.
Další zajímavou myšlenkou je platba časem procesoru, tzv. princip hashcash.
Tato metoda žádá, aby legitimní e-maily z neověřených zdrojů obsahovaly
určitou informaci, specifickou pro konkrétního příjemce, pro jejíž vygenerování
je potřeba provést přiměřeně náročný výpočet, zatímco ověření je mnohem
jednodušší. Uživatel, který rozesílá e-mail na několik málo adres, krátkou
prodlevu snese. Stejně tak není vzhledem k nenáročnosti ověřovacího
výpočtu příliš zatížen cílový server. Avšak spammer, rozesílající miliony
e-mailů, musí do výpočtů investovat spoustu procesorového času. Slabinou
hashcash je jeho omezená praktická použitelnost do doby, než se začne běžně
používat (pokud se tak vůbec někdy stane).
Podobná je metoda TMDA. Při příjmu e-mailu z neznámého zdroje se posílá
žádost o potvrzení. Aby spam prošel, musí spammer být schopen přijímat
odpovědi a patřičně na ně reagovat, tj. platit. Je-li vyžadována individuální
reakce, může být dokonce spamování zcela znemožněno. TMDA je ovšem založeno na
používání mnoha speciálních e-mailových adres jednoho odesílatele, což
nemusí být vždy žádoucí. Navíc časté zasílání žádostí o stvrzenky má
protiuživatelský charakter, lze jej však různým způsobem redukovat.
Řada platebních metod je neúčinná, nemá-li uživatel dostatečně kvalitní
připojení k Internetu. Například pro uživatele dial-upu je většina
naznačených metod nepoužitelná. Celkově platí, že účinná opatření musí být
realizována především na mailových bránách. Je škoda, že tuto skutečnost zatím
poskytovatelé internetového připojení ve vlastním zájmu nezohledňují a
neumožňují řádné uživatelské filtrování pošty již na svých serverech.
Mechanismy pro to existují, například jazyk pro filtrování e-mailů Sieve.
Obecnou slabinou platebních metod jsou mechanismy umožňující hromadnou
distribuci zpráv, jako jsou mailing listy nebo Usenet. Spammer je může
využívat k hromadnému rozesílání zpráv za cenu jediné platby. Na druhou
stranu ale taková místa umožňují se spamem zápasit centrálně a vytváří prostor
k uplatňování uživatelské protispamové spolupráce.
Metody spolupráce
Skutečnost, že uživatelů e-mailu je podstatně více než spammerů a jejich
zákazníků, lze využít pro relativně levnou likvidaci rozesílaných spamových
zpráv.
Metody typu Razor jsou založeny na hlášení spamu uživateli do centrální
databáze. Poštovní server se pak může databáze dotázat, zda tělo přijatého
e-mailu není evidováno jako spam. Při pozitivní odpovědi může nechat spammera
některou z výše naznačených metod za spam zaplatit a následně jej zahodit.
Akce malého zlomku uživatelů může tímto způsobem rozeslání spamu značně
prodražit. Chce-li přitom spammer princip centrální databáze obejít, musí těla
e-mailů jednotlivě modifikovat, což pro něj opět znamená zdražení.
Zvláštní možnosti má Usenet. Například služba Gmane při boji se spamem využívá
propojení mailing listů s Usenetem. Příchozí zprávy jsou filtrovány a
čtenáři mají možnost toto filtrování následně korigovat. Protože
v případě Usenetu si uživatelé zprávy na rozdíl od e-mailu stahují až
v okamžiku, kdy je čtou, jsou spamu vesměs ušetřeni. Stejně tak se
spoluprací uživatelů pročišťují archívy. Tato metoda sice neprovádí přímé
protiakce, ale do značné míry řeší problém zahlcování linek a spam zaslaný do
mailing listu se přitom míjí účinkem -- než si jej většina potenciálních
příjemců přečte, je odstraněn. Spammer tak levným zasláním spamu na hromadnou
adresu příliš nevydělá.
Závěrem
Boj se spammery probíhá za neustálého zdokonalování metod na obou stranách.
Cílem článku nebylo podat kompletní přehled v současné době používaných
protispamových metod. Stejně tak nebylo cílem najít tu jedinou dobrou
efektivní metodu. Ani v oblasti technických opatření totiž zřejmě taková
metoda neexistuje a je nutné používat kombinaci více vzájemně se doplňujících
metod.
Snahou článku bylo spíše naznačit silné a slabé stránky některých
typických metod boje proti spamu, jako námět k zamyšlení pro jejich
budoucí efektivnější využívání. Máte-li vlastní postřehy, nápady, argumenty či
protiargumenty k uvedeným metodám a jejich hodnocení, můžete je uvést
v diskusi nebo o nich napsat článek. Spam je naším společným
problémem a určitě je užitečné se podělit o své zkušenosti.
Odkazy
Další části seriálu:
|