Stop podvrženým e-mailovým adresám ve spamu

Petr Krčmář 8. 7. 2009

Spam je už mnoho let velkým problémem celého internetu. Schránky se plní nevyžádanou poštou, servery jsou zbytečně zatěžovány poštou, kterou pak zahazují a uživatelé jsou obtěžováni. Jednou z hlavních příčin je možnost rozesílat poštu pod libovolnou identitou, která spammerovi nepatří. Jak tomu zabránit?

Aktuální stav spamu

V současné době se odhaduje množství spamu přibližně na 94 % veškeré elektronické pošty. Nejvíce spamu přitom už dlouhou dobu přichází z USA, což potvrdily i nové statistiky. Objevují se stále agresivnější podoby nevyžádané pošty a objevují se důmyslnější ochrany proti nim. Se systémovým řešením však zatím nikdo nepřišel, a tak se musíme spokojit s menšími opatřeními, která nám dohromady poskytnou alespoň nějakou ochranu.

Proč se spamu tak daří

Největším problémem spamu je to, že je v takové míře vůbec možný. Protokol SMTP, který je pro posílání pošty používán, totiž naprosto nepočítá s možností podvržení falešných e-mailových adres, či jiných technik používaných při masovém šíření nevyžádané pošty. Výsledkem je tak naprostá anarchie uživatelů.

Většina nevyžádané pošty dnes odchází z takzvaných botnetů, což jsou ohromné sítě napadených uživatelských počítačů, které jsou kontrolovány několika málo osobami. Největší botnety dnes čítají stovky tisíc jednotlivých PC. Pokud k tomu přičteme fakt, že kdokoliv může posílat jakoukoliv poštu komukoliv v neomezené míře, dostáváme přímo výbušné prostředí.

Na nedávné konferenci Internet a Technologie 09 o tom hovořil Petr Hruška ze sdružení CZ.NIC. Pětadevadesát procent spamu je odesláno ze zombie počítačů v botnetech, to je hlavní zdroj spamu. Nejvíce spamu odchází ze Spojených států, řekl Hruška. Podle něj navíc většina spamu pochází přibližně od pouhých 400 lidí.

Navíc je možno bez potíží falšovat také adresu odesílatele, čímž nemusíme k rozesílání spamu využívat reálně existujících vlastních adres, ale můžeme si vypůjčit libovolnou cizí adresu. Jistě se vám například stalo, že vám přišel mail o nedoručení pošty, kterou jste neodesílali. Někdo to udělal za vás.

Problém je v anonymitě e-mailu. To je stejné jako u papírové pošty, podle které se původně mail vytvářel, potvrdil na konferenci IT 09 Petr Hruška.

Poslední zmíněný problém zamezuje i pokusům o upozornění uživatele o tom, že je jeho počítač napaden a rozesílá nevyžádanou poštu. Pokusy o kontakt vždy skončí v naprosto cizí schránce. Osobně jsem se také setkal s tím, že jsem byl velmi nevybíravě upozorněn na problém u někoho jiného. Ty vořechu, jestli dostanu od tebe ještě jeden email, tak dostaneš obratem takového trojana, že ten svůj server už nerozdejchneš. Poslední varování. Varování sice přísné, ale nikoliv mířené na správného uživatele. Ten je obvykle také obětí, nikoliv viníkem.

Jak na něj?

Na to neexistuje jednoduchá odpověď, velmi by však pomohlo, kdyby nebylo možno rozesílat poštu z cizích (tedy falšovaných) adres. To by znamenalo, že každý spammer (nebo alespoň oběť botnetu) by musel využívat svou vlastní adresu, a tím by se odhalil. V jiném případě by alespoň bylo možné oběti sdělit, že je vlastně onou obětí a bylo by dobré s tím něco dělat.

Bohužel, jak bylo řečeno, protokol SMTP neobsahuje žádný mechanismus, který by podobnému jednání dokázal zabránit. Existuje však poměrně zajímavá technologie, ukrývající se pod zkratkou SPF, která dovoluje našeho falešného hráče odhalit.

Jak funguje SPF

SPF je zkratkou pro Sender Policy Framework a definuje jej RFC 4408. V principu se jedná o mechanismus, který pevně svazuje doménu s SMTP servery, které pro ni mohou odesílat poštu. Majitel domény tak dokáže distribuovat informaci, která říká: pošta od @root.cz může pocházet jen ze serveru mail.root.cz, pokud ne, je to podvržený spam.

Implementace SPF je navíc velmi jednoduchá, technicky se jedná o DNS záznam přidaný k inkriminované doméně. Je definován jednoduchý jazyk, který dovoluje pravidla přesně nadefinovat, vymezit třeba i konkrétní rozsah IP adres, které mohou poštu rozesílat nebo zvolit za odesílatele stroj, na který odhazuje MX záznam domény.

Jazyk umožňuje také odkazovat na jiné domény, přebírat jejich pravidla a podobně. Důležité ovšem je, že se z těchto informací příjemce pošty dozví, které odesílací servery jsou spárovány s doménou, která je uvedena v adrese. Pak je na příjemci, jak se se získanou informací vyrovná. Standardní chování by mělo být takové, že je mail automaticky označen jako spam.

Kde je to k vidění?

Pokud se chcete podívat na funkční implementaci SPF, můžete si pomocí příkazu dig prohlédnout příslušný DNS záznam:

$ dig TXT gmail.com
...
;; ANSWER SECTION:
gmail.com.  300  IN  TXT  "v=spf1 redirect=_spf.google.com"
...

Vidíte, že záznam existuje a obsahuje přesměrování na další záznam, ve kterém by už měly být potřebné informace. Pokračujeme dotazem na tuto subdoménu:

$ dig TXT _spf.google.com
...
;; ANSWER SECTION:
_spf.google.com. 300  IN  TXT  "v=spf1 ip4:216.239.32.0/19 ip4:64.233.160.0/19 ip4:66.249.80.0/20 ip4:72.14.192.0/18 ip4:209.85.128.0/17 ip4:66.102.0.0/20 ip4:74.125.0.0/16 ip4:64.18.0.0/20 ip4:207.126.144.0/20 ?all"
...

Tady už vidíme podstatně více informací, konkrétně se jedná o rozsahy IP adres, ze kterých Google obvykle odesílá poštu svých uživatelů. Na konci navíc vidíme příznak ?all, který určuje, že maily mohou být posílány i z jiných adres a ty nejsou striktně zablokovány. To by bylo způsobeno příznakem -all. Antispamový filtr (třeba spamassassin) tak může zohlednit odesílající IP adresu jako pozitivní či negativní bod k hodnocení mailu.

Pokud bychom chtěli striktně určit, že jen MX servery mohou poštu i odesílat a všechno ostatní je podvrh, mělo by pravidlo vypadat takto:

root.cz. IN TXT "v=spf1 a mx -all"

Kdo to používá?

Ačkoliv u nás není SPF příliš rozšířená metoda boje proti spamu, ve světovém měřítku se jí poměrně slušně daří prosadit. Petr Hruška z CZ.NIC si na zmíněné konferenci IT 09 posteskl nad nízkým nasazením SPF v Česku. Bohužel v Česku mají SPF záznamy jen 2 až 3 procenta domén. V zahraničí je to přitom 10 až 20 %.

Přitom implementací je více než dost. Známý antispamový filtr SpamAssassin od verze 3.0 implementuje podporu SPF. Nejedná se tedy o žádnou novinku, SA této řady vychází od roku 2004. Některá MTA podporují SPF přímo: Courier, MS Exchange a další, do jiných je možno podporu přidat: Postfix, Sendmail, Exim a Qmail.

Podle nejnovější studie je rozšíření SPF na velmi vysoké úrovni – více než 50 % světových domén SPF záznam obsahuje. Téměř polovina těchto domén (více než milion) navíc používá pravidlo -all. Podle stejného průzkumu ale většina takto nastavených záznamů (přes 70 %) neobsahuje žádné povolené servery. Administrátoři tak sdělují, že na těchto doménách se elektronická pošta neprovozuje.

Výhody a nevýhody SPF

Mezi hlavní výhody patří velmi jednoduchá implementace na straně odesílatele i příjemce, možnost ověřit správu už při přijetí pouhé její hlavičky, celková nenáročnost řešení na server i datovou kapacitu. Systém sice musí provádět nové dotazy na DNS, výsledky je ale možno cachovat.

SPF má ale i své nevýhody: musí jej podporovat odesílatel i příjemce a striktně omezuje SMTP servery, které může uživatel využít. To je sice ochrana proti spammerům, zároveň to však brání uživatelům využívat například SMTP server poskytovatele. Další kritizovanou vlastností je použití sémantického jazyka v TXT záznamu, který pro takové využití není určen.

Ano či ne?

SPF je určitě velmi dobrou metodou pro boj se spamem. Přináší povinnost dodržovat při odesílání pošty jistá pravidla, která by měla být samozřejmostí, ale nejsou. Jednoduché nasazení a poměrně široké rozšíření předurčují tento mechanismus ke světlé budoucnosti.

Našli jste v článku chybu?
Vitalia.cz: Očkování je nutné, říká homeopatka

Očkování je nutné, říká homeopatka

Lupa.cz: Olympiáda zakázala GIFy. Moc to nepomáhá

Olympiáda zakázala GIFy. Moc to nepomáhá

Měšec.cz: Ceny PHM v Evropě. Finty na úspory

Ceny PHM v Evropě. Finty na úspory

Vitalia.cz: „Sjíždět“ porno není bez rizika

„Sjíždět“ porno není bez rizika

Měšec.cz: Kurzy platebních karet: vyplatí se platit? (TEST)

Kurzy platebních karet: vyplatí se platit? (TEST)

Lupa.cz: Nechcete datacentrum? Jsou na prodej

Nechcete datacentrum? Jsou na prodej

Měšec.cz: Udali ho na nelegální software a přišla Policie

Udali ho na nelegální software a přišla Policie

Lupa.cz: Hackujete? Můžete mít problém sehnat práci

Hackujete? Můžete mít problém sehnat práci

Lupa.cz: Co vzal čas: internetové kavárny a herny

Co vzal čas: internetové kavárny a herny

DigiZone.cz: Hodlá Markíza skončit v DVB-T?

Hodlá Markíza skončit v DVB-T?

Měšec.cz: Co když na dovolené přijdete o kartu?

Co když na dovolené přijdete o kartu?

Vitalia.cz: 9 potravin, které nesmí chybět v jídelníčku těhotné

9 potravin, které nesmí chybět v jídelníčku těhotné

Lupa.cz: Co najdete uvnitř kosmické sondy?

Co najdete uvnitř kosmické sondy?

120na80.cz: Lepší poporodní sexuální život? Žádný problém

Lepší poporodní sexuální život? Žádný problém

Podnikatel.cz: Česká pošta vycouvala ze služby ČP Cloud

Česká pošta vycouvala ze služby ČP Cloud

Měšec.cz: Se stavebkem k soudu už (většinou) nemusíte

Se stavebkem k soudu už (většinou) nemusíte

Vitalia.cz: Vakcína Cervarix je oficiálně i pro chlapce

Vakcína Cervarix je oficiálně i pro chlapce

Měšec.cz: Co s reklamací, když e-shop krachuje?

Co s reklamací, když e-shop krachuje?

Lupa.cz: Samořídicí taxíky jsou tu. Začíná s nimi Uber

Samořídicí taxíky jsou tu. Začíná s nimi Uber

Podnikatel.cz: Pozor na vykuky, imitují služby České pošty

Pozor na vykuky, imitují služby České pošty