DMARC

DMARC je standard pro ověřování e-mailů, který stojí nad SPF a DKIM. Přidává dvě věci, které ani jeden z nich sám neposkytuje: požadavek, aby se ověřená doména shodovala s doménou, kterou člověk skutečně vidí, a pokyn, který přijímajícím serverům říká, co dělat se zprávou, jež neprojde.

Co je DMARC

DMARC je zkratka pro Domain-based Message Authentication, Reporting and Conformance. Publikuje se jako DNS TXT záznam na subdoméně _dmarc pod chráněnou doménou a přijímající poštovní servery ho čtou při vyhodnocování příchozí zprávy.

Minimální záznam vypadá takto, jako jeden řádek textu:

v=DMARC1; p=none; rua=mailto:dmarc@example.com; adkim=s; aspf=s

  • v=DMARC1 určuje verzi. Musí být první a kromě politiky je to jediná povinná značka.
  • p=none je politika, tedy co má příjemce udělat se zprávou, která neprojde. Hodnoty jsou none, quarantine a reject.
  • rua=mailto:... je adresa, kam chodí souhrnné reporty. Bez ní vynucujete politiku naslepo.
  • adkim=s a aspf=s nastavují přísné zarovnání pro DKIM a SPF. Výchozí hodnota je u obou r, tedy volné zarovnání.
  • pct=, sp= a ruf= jsou další značky, na které narazíte: postupné nasazení v procentech, samostatná politika pro subdomény a adresa pro forenzní reporty.

DMARC sám o sobě nic neověřuje. Přebírá výsledky SPF záznamu a DKIM, zkontroluje zarovnání a poté uplatní politiku. Právě proto DMARC záznam na doméně bez funkčního SPF a DKIM nezmůže vůbec nic.

Jak to příjemce vyhodnocuje

Když zpráva dorazí, přijímající server projde krátkou posloupností. Když jí rozumíte, víte přesně, kde se během nasazení může rozbít legitimní pošta.

  1. Vyhodnotí SPF vůči doméně v obálce zprávy a ověří případné DKIM podpisy.
  2. Vytáhne doménu z viditelné hlavičky From, tedy z té, kterou čte příjemce.
  3. Zkontroluje zarovnání: shoduje se doména ověřená přes SPF nebo doména, která podepsala DKIM, s doménou z From?
  4. Projde-li a je zarovnané alespoň jedno ze SPF nebo DKIM, DMARC projde. Stačí jedno z nich.
  5. Neprojde-li ani jedno, DMARC selže a příjemce uplatní publikovanou politiku: doručit, dát do karantény, nebo odmítnout.
  6. Výsledek si tak jako tak poznamená a zahrne ho do nejbližšího souhrnného reportu na adresu rua.

Zarovnání je to, na čem skutečně záleží

Zarovnání je pojem, který lidé přeskakují, a právě proto špatně chápou, co jim DMARC přináší. SPF ověřuje odesílatele v obálce zprávy, tedy adresu použitou v SMTP komunikaci, kterou příjemce nikdy nevidí. Nic v SPF nevyžaduje, aby měla tato adresa jakýkoli vztah k hlavičce From zobrazené v poštovním klientovi.

Útočník si tedy může zaregistrovat vlastní doménu, publikovat pro ni zcela platný SPF záznam, poslat poštu, která SPF čistě projde, a do viditelné hlavičky From nastavit vaši doménu. SPF projde. Příjemce vidí vaše jméno. Z pohledu SPF není technicky nic v nepořádku, protože SPF se na hlavičku, kterou čte člověk, nikdy nedívalo.

DMARC tuto mezeru uzavírá tím, že vyžaduje shodu ověřené domény s viditelnou doménou z From. Volné zarovnání (výchozí r) přijímá shodu na úrovni organizační domény, takže mail.example.com se zarovná s example.com. Přísné zarovnání (s) vyžaduje přesnou shodu. Volné je správnou volbou pro většinu firem; přísné se vyplatí, když máte pod kontrolou všechny odesílatele a chcete zabránit tomu, aby se proti vám dala použít kompromitovaná subdoména.

Tři úrovně politiky

PolitikaCo příjemce uděláK čemu slouží
p=noneDoručí zprávu běžným způsobem a nahlásí výsledek.Jen monitorování. Nechrání nikoho; existuje proto, abyste před vynucováním našli vlastní odesílatele.
p=quarantineDoručí do spamu nebo nevyžádané pošty.Přechodný krok. Selhání se uživatelům zviditelní, aniž by se zprávy úplně ztratily.
p=rejectOdmítne zprávu už při SMTP komunikaci, takže se nikdy nedoručí.Cílový stav. Jediné nastavení, které skutečně zastaví podvržení vaší domény.

Souhrnné reporty

Na adresu rua chodí souhrnné reporty ve formátu XML, obvykle denně, od každého příjemce, který zpracoval poštu tvářící se jako z vaší domény. Každý report obsahuje zdrojové IP adresy, počty zpráv a výsledky SPF a DKIM pro každou z nich.

Přesně kvůli tomu existuje fáze monitorování. Téměř každá firma posílá legitimní poštu z většího počtu zdrojů, než si kdokoli pamatuje: CRM, fakturační systém, náborová platforma, marketingový nástroj, který si někdo z jiného oddělení zřídil sám, upozornění ze serveru, na který se rok nikdo nepřihlásil. Skočíte-li rovnou na p=reject, tyto systémy objevíte přes lidi, kterým přestane chodit pošta.

Surové XML z DMARC se ve větším objemu číst nedá. Použijte nástroj na analýzu reportů - bezplatné úrovně na jednu doménu bohatě stačí - a několik týdnů reporty jen čtěte, než cokoli změníte. Forenzní reporty (ruf) jsou v praxi mnohem méně užitečné: mnoho příjemců je neposílá vůbec a ti, kdo ano, mohou přiložit obsah zprávy, což s sebou nese další povinnosti při jeho zpracování.

Nasazení, které vám nerozbije poštu

  1. Zmapujte každý systém, který posílá poštu za vaši doménu. Zeptejte se přímo financí, personalistiky a marketingu, nespoléhejte na to, že IT o všem ví - právě systémy, o kterých IT neví, se rozbijí jako první.
  2. Nastavte pro každého takového odesílatele správné SPF a DKIM. DKIM je tu důležitější než SPF, protože přežije přeposlání.
  3. Publikujte p=none s adresou rua a počkejte. U domény s jakýmkoli objemem jsou reálné dva až čtyři týdny.
  4. Čtěte reporty a opravujte, co v nich najdete. Opakujte, dokud nezůstanou jen selhání, která rozpoznáte jako podvržení, ne jako vlastní systémy.
  5. Přejděte na p=quarantine, případně s pct=10 a postupně zvyšujte, aby se chyba dotkla zlomku pošty místo veškeré.
  6. Přejděte na p=reject, až karanténa poběží čistě. Teprve potom zvažte zpřísnění adkim a aspf na s.
  7. Nastavte i sp=reject, aby nešlo podvrhnout subdomény, které nepoužíváte - nepoužívaná subdoména bez politiky jsou otevřené dveře.

Reporty čtěte i po dosažení vynucování. Nová služba přidaná za půl roku selže potichu a prvním signálem bude kolega, kterému nechodí pošta.

Co DMARC nezastaví

DMARC na p=reject ukončí přímé podvržení přesně vaší domény. To je opravdu velký zisk a práce se vyplatí. Zároveň je to celý rozsah toho, co dělá, a znát tuto hranici je důležité, protože útočníci se prostě přesunou na cesty, které nepokrývá.

  • Zaměnitelné domény. Zpráva z exarnple.com projde vlastním DMARC bez problémů. Vaše politika nemá na cizí doménu žádný vliv.
  • Podvržení zobrazovaného jména. Nastavit si jako jméno odesílatele vašeho jednatele a poslat to z bezplatné schránky není selhání DMARC, protože doména v From skutečně patří tomu poskytovateli.
  • Kompromitované legitimní účty. Pošta odeslaná ze skutečné, prolomené schránky je ověřená i zarovnaná, protože ji opravdu posílá vaše doména.
  • Cokoli mimo e-mail - SMS, telefonáty, chatovací platformy, QR kódy.
  • Ochranu příchozí pošty obecně. DMARC na vaší doméně chrání příjemce před poštou podvrženou vaším jménem. Zda jste chráněni před cizí podvrženou poštou, závisí na tom, jak přísně jejich politiky vynucuje vaše vlastní brána.

Poslední bod si zaslouží poznámku o vyděračských e-mailech, protože vyvolávají spoustu vylekaných dotazů: zprávy tvářící se, že přišly z vlastního účtu oběti jako důkaz průniku, jsou téměř vždy obyčejné podvržení, tedy přesně to, co doména bez vynucovaného DMARC umožňuje. Co s takovou zprávou dělat, popisuje heslo vyděračský e-mail s mým heslem. A protože nic z toho neřeší uživatele, který předá údaje proxy serveru, DMARC nepomůže proti AiTM phishingu, jakmile je zpráva doručena - opatření, která nastupují tam, kde ověřování končí, popisuje článek phishingový test zaměstnanců.

Časté otázky

Potřebuji k fungování DMARC i SPF, i DKIM?

Formálně ne - DMARC projde, projde-li a je zarovnané alespoň jedno z nich. V praxi ale chcete obojí. SPF se rozbije při přeposílání pošty, protože přeposílající server není ve vašem záznamu, kdežto DKIM podpis přeposlání přežije neporušený. Máte-li jen SPF, přeposlaná legitimní pošta po zavedení vynucování selže.

Stačí p=none?

Ne. p=none říká příjemcům, aby neúspěšnou poštu stejně doručili, takže neposkytuje žádnou ochranu. Je to správná první fáze, protože vytváří reporty, díky nimž najdete vlastní odesílatele, ale je to fáze k projití, ne k usazení.

Zastaví DMARC phishing mířený na moji firmu?

Zastaví útočníky, kteří podvrhují přesně vaši doménu, čímž chrání spíš vaše zákazníky a partnery než vlastní zaměstnance. Phishing ze zaměnitelných domén, z bezplatných schránek s podvrženým jménem odesílatele nebo od kompromitované třetí strany zůstává nedotčen, protože ani jeden z nich vaši politiku neporuší.

Co se stane s poštou z domény, která nemá DMARC záznam vůbec?

Doručí se podle vlastních pravidel příjemce a neexistuje politika, která by komukoli řekla, aby padělky odmítal. Právě proto obyčejné podvržení odesílatele stále tak dobře funguje, a proto by nepoužívaná subdoména měla mít výslovné sp=reject.

Jak dlouho trvá přechod na p=reject?

U malé firmy s pár odesílajícími systémy několik týdnů. U větší, kde mají jednotlivá oddělení vlastní nezmapované služby, je reálných několik měsíců. Čas nespotřebují změny v DNS, které trvají minuty, ale hledání odesílatelů v souhrnných reportech.

Další krok

Chcete měřit svůj program phishingových simulací a školení?

Domluvte si demo a podívejte se, jak PhishGun podpoří simulace, školení, reportování i podklady pro audit.