Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

DomainKeys - nová antispamová technologie

Systém přenosu emailů po Internetu byl navržen ještě v dobách, kdy se bezpečností nebylo potřeba příliš zabývat - a je to na něm poznat. Bohužel od doby jeho vzniku nebylo v tomto ohledu uděláno takřka nic. Dnes vás chceme seznámit s technologií, která by mohla u emailů omezit možnost podvržení adresy odesílatele.

S technologií DomainKeys, která je momentálně ve stavu návrhu standardu, přišlo Yahoo. Jejím cílem je umožnit ověření, že odesílatel poslal mail z počítače, který je oprávněn odesílat maily pro doménu uvedenou v adrese odesílatele. Nic víc a nic méně. Nezaručuje tedy sama o sobě, že odesílatelem je opravdu uvedený člověk. Na druhou stranu tento přístup vyžaduje pouze nastavení serveru a u uživatele se nic měnit nemusí. Takže její uvedení do praxe je jednodušší, protože technologie vyžadující změnu (u) každé emailové schránky má o hodně menší šance na prosazení.

Zamezení podvržení adresy má dva cíle:

  1. Omezit spam. Idea je, že když bude jistá doména odesílatele, bude možné mít u každé domény její „pověst“ a domény používané spammery budou rychle získávat „špatnou pověst“.
  2. Omezit rhybaření (phishing). Pokud vám přijde dopis s odesílací adresou @ebay.com, budete si moci být jisti, že jej opravdu poslala společnost eBay. Na druhou stranu toto se dá částečně obejít používáním podobných domén, například získat doménu e.bay.com a poslat dopis z ní.

Jak to funguje

Základem algoritmu je elektronická signatura nebo – chcete-li – elektronický podpis obsahu emailu a (některých) položek v jeho hlavičce. Veřejný klíč k podpisu je potom možno získat přes systém DNS, takže je dost vysoká šance, že dopis opravdu podepsal/odeslal někdo, kdo je k tomu zmocněný držitelem domény.

Za dobře vyřešené považuji uložení klíče. Ukládá se sice do TXT záznamu, ale ne vlastní domény, nýbrž do domény <selektor>._domainkey.domena.cz. Tím je jednak možno využít TXT záznam původní domény (i když tak málokdo činí) a hlavně je možné mít k doméně jednoduše více klíčů. Ty mohou být jednak přidělovány jednotlivým serverům oprávněným posílat odchozí poštu, ale hlavně bez problémů revokovány, a je jednoduše umožněna i cyklická obměna klíčů.

Samozřejmě zcela čisté by bylo nepoužívat TXT, ale vytvořit nový typ záznamu. Nicméně standardizace a hlavně implementace takového rozšíření by byla časově dosti náročná.

Problémy rozšíření

Všechna rozšíření snažící se zavést více důvěryhodnosti do systému elektronické pošty naráží na značnou volnost současné architektury. Je velmi těžké je vymyslet tak, aby nepřestalo fungovat mnoho dnes používaných věcí. Problémy činí zejména:

  1. Mailing listy. Mailing list dostane dopis, částečně pozmění (většinou Subject a přidá headery do hlavičky) a rozdistribuuje mnoha uživatelům.
  2. Přeposílání pošty. V současnosti může email jít přes mnoho SMTP serverů (pokud jsou ochotny jej přijmout). Rozhodně neplatí, že by všechny dopisy šly od odesílatele přímo k příjemci.
  3. Při přeposílání pošty je SMTP server oprávněn dopis zcela předělat: změnit hlavičky, předělat MIME strukturu, překódovat MIME přílohy atp.
  4. Odesílání a přijímání pošty jsou dvě různé služby. Uživatel se může klidně připojit z domova a odesílat poštu přes SMTP server svého ISP.

Problémy číslo 1 a 4 se řeší použitím políčka Sender v hlavičce emailu. Ve From je adresa odesílatele, která „má být vidět“, ale pro účely ověření emailu se do Sender dá adresa z domény, pro kterou je odesílací SMTP server oprávněn odesílat, a bude se posuzovat důvěryhodnost této domény.

Poznámka: tento mechanismus ovšem poněkud smazává odolnost proti rhybaření, minimálně do doby, něž budou emailoví klienti schopni rozdílné From a Sender rozumně prezentovat uživateli. A i potom je otázka, kolik laických uživatelů bude schopno poznat případné podvodně podepsané dopisy.

Problém číslo 4 je možno řešit ještě tím, že uživatel bude odesílat firemní poštu vždy přes firemní SMTP, k němuž se připojí pomocí vlan nebo autentizuje přes SMTP autentizaci.

S přeposíláním pošty (problém číslo 2) DomainKeys nekolidují. Je ale nutno se zastavit u problému číslo 3 a konstatovat, že obecně proti němu DomainKeys nemají ochranu. Jediným řešením by bylo, aby server po té, co dopis přestaví, tento podepsal a odeslal za „svoji“ doménu.

Naštěstí pokud takové SMTP servery existují, tak jsou to ve většině případů okrajové (border) SMTP servery společností. S těmi ale problémy nejsou. Ty mohou při odeslání emailu tento podepsat za doménu společnosti a při přijetí naopak ověřit signaturu. Při putování dopisu po firemní síti již další ověřování není potřeba.

S modifikací (jenom) hlaviček si naštěstí DomainKeys poradit umí. Při vytvoření podpisu lze specifikovat, které hlavičky byly vzaty v potaz a v jakém pořadí. Takže když jsou hlavičky jinak uspořádány nebo je nějaká přidána, stále je možno platnost podpisu ověřit.

Dále je možno hlavičky „předpřipravit“ algoritmem, který spojí položky rozdělené na více řádků, takže jejich případné přerozdělení nemá na signaturu dopisu vliv.

Problémy algoritmu

Samotný algoritmus se mi docela zamlouvá, našel jsem v něm pouze jednu podstatnou vadu, a tou je zranitelnost pomocí „replay attacku“. Jde o to, že v případě, kdy můžete poslat mail libovolného obsahu z dané domény (což například u freemailů můžete), je možné takový mail poslat „sám sobě“. Příchozí mail bude samozřejmě mít správnou signaturu. Pak už je možno jej odeslat z libovolného serveru různým uživatelům (změnou adres v SMTP obálce) a bude stále korektně podepsaný.

Pro zamezení tomuto útoku by bylo nutné do algoritmu ještě přidat kontrolu adresáta (adresátů) v obálce. Zde se ovšem dostáváme do komplikací, pokud jde o email pro více příjemců, jelikož na různé servery odchází s různými obálkami. Nicméně mám za to, že i tento problém je řešitelný.

Kontakty? Setkání? Předplaťte si celoroční členství v NetClubu

Chcete být v centru dění, v internetové komunitě? Setkávat se s těmi, jejichž názory hýbou českým internetem? Předplaťte si členství na každoměsíčním setkání NetClubu a potkávejte se s zajímavými lidmi. Bližší informace zde

Letošní druhý NetClub proběhne v únoru s Erikem Taberym, šéfredaktorem časopisu Respekt, který lidé buďto milují, nebo nenávidí. 

       

Implementace

Pro účinnost toho standardu má samozřejmě zásadní význam jeho co největší rozšíření, přinejmenším na odesílací straně (tedy podepisování). V této oblasti toho zatím mnoho podniknuto nebylo. Yahoo, autor standardu, oznámilo jeho podporu, ale zatím ji neuvedlo do praxe. Zato GMail DomainKeys již na odesílací straně implementoval.

Ani jeden běžný mailserver zatím DomainKeys nepodporuje, nicméně podle slov autorů se pracuje na implementaci do Sendmailu.

Závěr


Vývoj na poli antispamových technologií sleduji již nějakou dobu. Z návrhů, které se objevily, mi DomainKeys přijdou jako nejrozumnější a nejméně konfliktní při poměrně slušné účinnosti.

Anketa

Jakou používáte antispamovou technologii?

       

Michal Kára

Autor je konzultant a programátor na volné noze. Úzce spolupracuje s portálem Centrum.cz, především v oblasti e-mailu – je autorem antispamu a pozadí gigabajtového e-mailu.

Kurz SEO - Praha, Brno

DW - Školení SEO
  • Jak fungují vyhledávače a co od nich můžete očekávat.
  • Analýza klíčových slov - kde hledat, jak slova vybrat, jak optimalizovat.
  • Metody linkbuildingu - jak získat zpětné odkazy aniž byste za ně museli platit.
  • Vyhodnocování SEO - nesledujte jen pozice.

Další informace o kurzu SEO »

Akce: Využijte last minute slevu na školení v Brně!

Přehled názorů

Výhody
Jan Kulveit 26. 10. 2004 09:13
Nový
├ 
Re: Výhody
Michal Kára 26. 10. 2004 09:40
Nový
│
└ 
Re: Výhody
Jan Kulveit 26. 10. 2004 17:05
Nový
│
 
└ 
Re: Výhody
Michal Kára 26. 10. 2004 17:43
Nový
└ 
Re: Výhody
Happy 26. 10. 2004 22:56
Nový
 
└ 
Re: Výhody
Jan Kulveit 26. 10. 2004 23:28
Nový
 
 
└ 
Re: Výhody
Michal Kára 27. 10. 2004 08:22
Nový
Replay
Jan Kulveit 26. 10. 2004 09:27
Nový
Technicka poznamka
Ondřej Surý 26. 10. 2004 11:29
Nový
└ 
Re: Technicka poznamka
Michal Kára 26. 10. 2004 11:33
Nový
 
└ 
Re: Technicka poznamka
Dan Lukes 29. 10. 2004 05:01
Nový
 
 
├ 
Re: Technicka poznamka
Michal Kára 29. 10. 2004 08:18
Nový
 
 
│
└ 
Re: Technicka poznamka
Dan Lukes 29. 10. 2004 12:00
Nový
 
 
│
 
└ 
Re: Technicka poznamka
Michal Kára 29. 10. 2004 12:18
Nový
 
 
│
 
 
└ 
Re: Technicka poznamka
Dan Lukes 29. 10. 2004 16:27
Nový
 
 
└ 
Re: Technicka poznamka
Jan Kulveit 30. 10. 2004 18:12
Nový
 
 
 
└ 
Re: Technicka poznamka
Dan Lukes 31. 10. 2004 02:19
Nový
 
 
 
 
├ 
Re: Technicka poznamka
Michal Kára 31. 10. 2004 08:53
Nový
 
 
 
 
│
└ 
Re: Technicka poznamka
Dan Lukes 31. 10. 2004 12:38
Nový
 
 
 
 
│
 
└ 
Re: Technicka poznamka
Michal Kára 31. 10. 2004 17:26
Nový
 
 
 
 
│
 
 
├ 
Re: Technicka poznamka
Dan Lukes 31. 10. 2004 18:00
Nový
 
 
 
 
│
 
 
│
└ 
Re: Technicka poznamka
Michal Kára 31. 10. 2004 20:56
Nový
 
 
 
 
│
 
 
│
 
└ 
Re: Technicka poznamka
Dan Lukes 31. 10. 2004 23:13
Nový
 
 
 
 
│
 
 
│
 
 
└ 
Re: Technicka poznamka
Petr Souček 1. 11. 2004 00:28
Nový
 
 
 
 
│
 
 
│
 
 
 
└ 
Re: Technicka poznamka
Michal Kára 1. 11. 2004 07:50
Nový
 
 
 
 
│
 
 
│
 
 
 
 
├ 
Re: Technicka poznamka
Dan Lukes 1. 11. 2004 14:15
Nový
 
 
 
 
│
 
 
│
 
 
 
 
│
└ 
Re: Technicka poznamka
Michal Kára 1. 11. 2004 14:39
Nový
 
 
 
 
│
 
 
│
 
 
 
 
└ 
Re: Technicka poznamka
Dan Lukes 1. 11. 2004 14:28
Nový
 
 
 
 
│
 
 
└ 
Re: Technicka poznamka
Jan Kulveit 1. 11. 2004 09:48
Nový
 
 
 
 
│
 
 
 
└ 
Re: Technicka poznamka
Dan Lukes 1. 11. 2004 14:43
Nový
 
 
 
 
│
 
 
 
 
└ 
Re: Technicka poznamka
Jan Kulveit 1. 11. 2004 16:12
Nový
 
 
 
 
└ 
Re: Technicka poznamka
Jan Kulveit 31. 10. 2004 11:46
Nový
 
 
 
 
 
└ 
Re: Technicka poznamka
Dan Lukes 31. 10. 2004 13:08
Nový
 
 
 
 
 
 
└ 
Re: Technicka poznamka
Petr Souček 31. 10. 2004 21:50
Nový
 
 
 
 
 
 
 
├ 
Re: Technicka poznamka
Michal Kára 31. 10. 2004 22:01
Nový
 
 
 
 
 
 
 
│
└ 
Re: Technicka poznamka
Petr Souček 31. 10. 2004 22:52
Nový
 
 
 
 
 
 
 
└ 
Re: Technicka poznamka
Dan Lukes 31. 10. 2004 23:15
Nový
reseni existuje ale proc se nepouziva?
deda.jabko 26. 10. 2004 12:29
Nový
├ 
Re: reseni existuje ale proc se nepouziva?
Tom L. 26. 10. 2004 13:23
Nový
├ 
Re: reseni existuje ale proc se nepouziva?
Michal Kára 26. 10. 2004 14:17
Nový
│
└ 
Re: reseni existuje ale proc se nepouziva?
deda.jabko 26. 10. 2004 15:57
Nový
│
 
└ 
Re: reseni existuje ale proc se nepouziva?
Michal Kára 26. 10. 2004 16:22
Nový
├ 
Re: reseni existuje ale proc se nepouziva?
Jan Kulveit 26. 10. 2004 17:11
Nový
└ 
Re: reseni existuje ale proc se nepouziva?
Dan Lukes 29. 10. 2004 05:11
Nový
 
└ 
Re: reseni existuje ale proc se nepouziva?
Michal Kára 29. 10. 2004 08:31
Nový
 
 
├ 
Re: reseni existuje ale proc se nepouziva?
Michal Kubeček 29. 10. 2004 12:05
Nový
 
 
│
└ 
Re: reseni existuje ale proc se nepouziva?
Michal Kára 29. 10. 2004 12:18
Nový
 
 
└ 
Re: reseni existuje ale proc se nepouziva?
Dan Lukes 29. 10. 2004 12:23
Nový
 
 
 
└ 
Re: reseni existuje ale proc se nepouziva?
Michal Kára 29. 10. 2004 13:22
Nový
 
 
 
 
└ 
Re: reseni existuje ale proc se nepouziva?
Dan Lukes 29. 10. 2004 16:23
Nový
SPF?
Dan 26. 10. 2004 12:30
Nový
└ 
Re: SPF?
Michal Kára 26. 10. 2004 14:06
Nový
Asi nepoužívám Windows
J.K. 26. 10. 2004 14:49
Nový
├ 
Re: Asi nepoužívám Windows
Michal Kára 26. 10. 2004 14:57
Nový
└ 
Re: Asi nepoužívám Windows
lamer 26. 10. 2004 15:04
Nový
 
└ 
Re: Asi nepoužívám Windows
J.K. 26. 10. 2004 17:28
Nový
 
 
├ 
Re: Asi nepoužívám Windows
lamer 26. 10. 2004 18:12
Nový
 
 
└ 
Re: Asi nepoužívám Windows
Michal Kára 27. 10. 2004 11:47
Nový
 
 
 
└ 
Re: Asi nepoužívám Windows
lamer 27. 10. 2004 12:22
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem