Zatočte se spamem (2)

Není žádnou novinkou, že velkou část e-mailových zpráv, které se v dnešní době rozesílají, tvoří spam. Samotný protokol SMTP totiž umožňuje nastavit libovolnou e-mailovou adresu odesílatele. Toho se často zneužívá nejen v případě spamu a phishingu, ale například také při podvodech, při nichž se pachatel vydává za někoho, kým není.

Zatočte se spamem (2)


DKIM (DomainKeys Identified Mail), popsaný ve standardu RFC 6376, validuje obsah zprávy. Tato metoda ověření těla zprávy umožňuje ověřit pravost odesílatele. Zajímavé je, že DKIM nebyl původně zamýšlený jako nástroj proti spamu, přesto v boji proti tomuto nešvaru pomáhá.

Pokud by došlo k plošnému nasazení této metody, donutila by odesílatele spamu spojit obsah zprávy se skutečnou zdrojovou doménou. V hlavičce zprávy se v případě použití technologie DKIM objeví položka DKIM – Signature.

Příjemce zprávy se následně dotazuje na doménu odesílatele a ověřuje, zda se podpis ve zprávě shoduje s veřejným klíčem uloženým v DNS záznamu domény odesílatele.

Z toho vyplývají dva procesy, které jsou součástí služby MTA (Mail Transfer Agent). Jde o podepsání zprávy na straně odesílatele a její následující ověření na straně příjemce.

Pro implementaci DKIM je třeba vygenerovat jeden pár klíčů. Soukromý klíč se uloží na e-mailovém serveru odesílatele a bude sloužit k podepisování zpráv. Do DNS záznamů se pak přidá TXT RR záznam obsahující nastavení DKIM a samotný veřejný klíč.

 

Implementace DKIM

Pokud chcete kontrolovat DKIM záznamy u příchozí pošty, je třeba tuto kontrolu na e-mailovém serveru nastavit. Jestliže používáte SpamAssasin pro povolení kontroly DKIM záznamů na příchozí poště, stačí v souboru local.pre zrušit zakomentování řádku.

loadplugin Mail::SpamAssassin::Plugin::DKIM

Zároveň je ale třeba nainstalovat balíček Perl skriptů, které budou sloužit jako DKIMProxy.

apt-get install libmail-dkim-perl

Dále je u DKIM nutné definovat politiku pro odchozí (DKIMproxy.out) i příchozí (DKIMproxy.in) zprávy. Výchozí skóre pro označení podepsaných zpráv je poměrně nízké, protože odesílatelé spamu si mohou teoreticky zaregistrovat vlastní doménu a v ní DKIM implementovat.

V praxi však to není zcela běžné, protože v okamžiku, kdy začne odesílatel spamu zprávy podepisovat, víme jistě, že odesílatelem byla daná doména, a můžeme tedy příjem pošty z této domény zablokovat.

DKIM Proxy byl primárně určený pro Postfix, měl by ale fungovat i s jinými e-mailovými servery. Více o fungování a možných nastaveních najdete přímo v manuálu DKIMProxy.

Další možností je OpenDKIM, který implementuje jak službu DKIM, tak aplikaci na bázi „milter“ (mail-filter), jež pracuje jako plug-in ve všech MTA, které jsou schopné ji rozpoznat.

Pokud server příjemce kontrolu DKIM nevykonává, část hlavičky s DKIM podpisem se ignoruje a zpráva se přijme. Implementace DKIM tedy příjemce zpráv nijak neomezí – naopak si může být jist, že se doména odesílatele ověří.

Vzhledem k tomu, že jde o kontrolu DNS záznamů, je vhodné implementovat zároveň i DNSSEC, který zajistí správnost záznamů získaných z DNS, čímž zvyšuje důvěryhodnost celého systému.

Autorka pracuje jako bezpečnostní analytička ve sdružení CZ.NIC a je členkou národního bezpečnostního týmu CSIRT.CZ.

 

Tento příspěvek vyšel v Security Worldu 4/2014

Úvodní foto: © HaywireMedia - Fotolia.com










Komentáře