Biztonság Szakszó

DMARC

Szerző: · 8 perc olvasás · Frissítve:
DMARC - Biztonság (szakszó) a tudástárban
DMARC - Biztonság | eClick GEO-audit tudástár

A DMARC (Domain-based Message Authentication, Reporting and Conformance) egy DNS-ben közzétett szabály, amely megmondja a fogadó levelezőrendszereknek, mit tegyenek a nevedben küldött levéllel, ha az megbukik a hitelesítésen. A rekord egyszerre házirend és jelentéskérés: dönt a hamis levelek sorsáról, és visszajelzést kér arról, ki küld a domainedről.

Hogyan működik

A beállítás egyetlen TXT rekord a _dmarc.pelda.hu néven. Három dolgot tartalmaz:

  • a házirendet: p=none, p=quarantine vagy p=reject,
  • a jelentések gyűjtőcímét: rua=mailto:...,
  • a szigorúsági kapcsolókat: adkim=, aspf=, sp=.

A fogadó szerver először megnézi, átment-e a levél SPF (Sender Policy Framework) vagy DKIM (DomainKeys Identified Mail) ellenőrzésen. Ez önmagában kevés lenne. A DMARC azt is megköveteli, hogy a hitelesített domain egyezzen a From: fejlécben látható domainnel. Ezt hívják igazításnak (alignment). Ha nincs egyezés, életbe lép a házirend.

Mit old meg, amit a másik kettő nem

Az SPF a küldő szerver IP-címét ellenőrzi. A DKIM kriptográfiai aláírást tesz a levélre. Egyik sem foglalkozik azzal, mi áll a felhasználónak megjelenő feladó mezőben. Egy támadó küldhet levelet a saját szerveréről, saját érvényes SPF-fel, a te címedet írva feladónak. A DMARC pontosan ezt a rést zárja be. A három elem együtt alkot működő láncot, ezt részletesen az E-mail-hitelesítés: SPF, DKIM, DMARC cikk bontja ki.

A jelentés, amit mindenki kihagy

A rua címre naponta érkeznek XML formátumú összesítő jelentések a nagy levelezőszolgáltatóktól. Ezekből derül ki, mely rendszerek küldenek a nevedben. Enélkül vakon szigorítasz. A riportokban rendszeresen látunk p=reject házirendet rua cím nélkül. Az ilyen beállítás véd, de nem tudod, mit tiltasz ki vele.

Számít-e a keresőknek

A DMARC nem rangsorolási tényező, és egy nyelvi modell sem látja, mert DNS-ben él, nem a HTML-ben. Az automatizált állapotfelmérők viszont nézik. Olcsó, objektív jelzés arról, hogy a domaint valaki karbantartja.

Röviden: a DMARC mondja meg, mi történjen azzal a levéllel, amely a te domainedet írja feladónak, de nem tőled jön.

Miért fontos

Kézbesíthetőség

A nagy levelezőszolgáltatók 2024 óta elvárják a tömeges küldőktől a DMARC-rekordot. A napi több ezer levelet küldő domainek esetében a hiánya kézbesítési hibát vagy spam-mappát jelent. Ez közvetlenül érinti a hírlevelet, a rendelés-visszaigazolást és a jelszó-emlékeztetőt.

Csalás a nevedben

DMARC nélkül a domained szabadon hamisítható. A tipikus eset: a partnered a te nevedben kap levelet módosított bankszámlaszámmal. A kár az ügyfélnél keletkezik, a bizalom nálad vész el.

Amit a beállítás megmutat

A jelentésekből kiderül, hány rendszer küld a domainedről. A magyar KKV-oldalak többségén ez a lista hosszabb, mint amire a tulajdonos számít: számlázó, CRM, régi webhosting, kolléga saját eszköze. A domain higiéniája a weboldal-biztonság része, nem külön feladat.

Kikre vonatkozik

  • Minden domain, amelyről levél megy ki. Webshop, KKV-honlap, egyszemélyes vállalkozás egyaránt.
  • Nem küldő és parkolt domainek. Ezekre is kell rekord, p=reject házirenddel. A használaton kívüli domain a legkényelmesebb célpont.
  • Tömeges küldők. Napi több ezer levélnél a szolgáltatók ma már megkövetelik a beállítást.
  • Aldomainek. Az sp= kapcsoló külön szabályt ad nekik. Ha a staging vagy a hírlevél-aldomain más rendszerből küld, ezt előre rendezd.

Nem oldja meg a levélszemét-szűrést általában, és nem véd a hasonló nevű domainekről (pe1da.hu) érkező levelek ellen. Az oldalon kiírt nyílt szöveges e-mail cím begyűjtése szintén külön kérdés.

Hogyan ellenőrzöd

Lépések

  1. Kérdezd le a rekordot parancssorból: dig +short TXT _dmarc.pelda.hu. Windowson: nslookup -type=TXT _dmarc.pelda.hu.
  2. Nézd meg, pontosan egy sor jön-e vissza, és v=DMARC1 kezdettel indul-e.
  3. Olvasd ki a p= értéket. Ez a tényleges védelmi szint.
  4. Ellenőrizd, van-e rua= cím, és hogy az a postafiók létezik-e.
  5. Küldj egy levelet magadnak egy külső fiókba. Nyisd meg az eredeti üzenetet, és keresd az Authentication-Results fejlécet.
  6. Nagyobb forgalomnál nézd meg a Google Postmaster Tools felületét is.

Jó jel

  • Egyetlen érvényes rekord a _dmarc néven.
  • A fejlécben dmarc=pass szerepel, header.from a saját domaineddel.
  • Van működő rua cím, és valaki nézi is a jelentéseket.
  • A házirend legalább quarantine.

Rossz jel

  • Nincs találat a _dmarc néven.
  • Két vagy több DMARC rekord ugyanazon a néven.
  • p=none évek óta, jelentéskérés nélkül.
  • A fejlécben dmarc=fail vagy dmarc=none.

Mit néz ebből a riport

Az audit lekéri a _dmarc TXT rekordot, és megnézi, létezik-e. Ha van, a házirendet is olvassa: a p=none gyengébb eredményt hoz, mint a quarantine vagy a reject. A riport külön jelzi, ha több rekord van, vagy ha hiányzik a rua cím.

Hogyan javítod

Minden rendszernél közös sorrend

  1. Gyűjtsd össze, mely szolgáltatások küldenek a nevedben.
  2. Állítsd be előbb az SPF (Sender Policy Framework) és a DKIM (DomainKeys Identified Mail) rekordokat mindegyikre.
  3. Vedd fel a DMARC rekordot p=none házirenddel és rua címmel.
  4. Olvasd a jelentéseket legalább 2-4 hétig.
  5. Ha minden jogos küldő átmegy, lépj p=quarantine, majd p=reject szintre.

WordPress

A beépített wp_mail() a szerver PHP levélküldőjét használja, ami ritkán igazodik a domainhez. Tegyél be egy SMTP-bővítményt, és küldj a saját postafiókodon vagy egy tranzakciós szolgáltatón keresztül. A küldő címe egyezzen a domaineddel. A WooCommerce rendelési levelei ugyanezen az úton mennek, ezért ezeket külön teszteld.

Shopify

A küldő e-mail címet a bolt beállításaiban hitelesíteni kell. A felület megadja a DNS-bejegyzéseket, amelyeket a domain szolgáltatódnál kell felvenni. Amíg ez hiányzik, a rendszer saját domainről küld a te neved helyett. A DMARC rekordot ettől függetlenül te teszed be.

Unas és Shoprenter

Az adminban állítsd be a saját domaines feladó címet. Vedd fel a szolgáltató által megadott SPF-kiegészítést és DKIM bejegyzést a DNS-ben. Csak ezután szigoríts a házirenden, különben a rendelés-visszaigazolások tűnnek el.

Egyedi fejlesztés

A From: fejléc domainje egyezzen az aláíró domainnel. Ne küldj levelet az alkalmazásszerver alapértelmezett címéről. A Reply-To mezővel oldd meg, ha más címre kéred a választ. A visszapattanó leveleket külön boríték-domainen kezeld, és figyelj az aspf=r laza igazításra.

Gyakori hibák

  • Örökös p=none - a megfigyelő mód nem tilt le semmit, csak a nyugalom érzését adja.
  • Két DMARC rekord egy néven - a fogadó ilyenkor egyiket sem alkalmazza, a védelem nullára esik.
  • Rekord a domain gyökerében - a _dmarc alnév kötelező, e nélkül a bejegyzés láthatatlan.
  • Hiányzó vagy olvasatlan rua - jelentés nélkül nem tudod, kit zársz ki a szigorítással.
  • Külső jelentéscím felhatalmazás nélkül - idegen domainre csak akkor mennek a jelentések, ha ott is van engedélyező rekord.
  • Elfelejtett küldőrendszer - a számlázó vagy a CRM levelei p=reject után némán eltűnnek.
  • Szigorú igazítás átgondolatlanul - az aspf=s megbuktatja a legtöbb külső levelezőszolgáltatót.

Technikai példa

Induló rekord megfigyeléshez, majd az éles, szigorú változat:

; első lépés: mérés, tiltás nélkül
_dmarc.pelda.hu.  3600  IN  TXT  "v=DMARC1; p=none; rua=mailto:dmarc@pelda.hu; adkim=r; aspf=r"

; cél állapot néhány hét jelentés után
_dmarc.pelda.hu.  3600  IN  TXT  "v=DMARC1; p=reject; sp=reject; rua=mailto:dmarc@pelda.hu; adkim=s; aspf=s"

; nem küldő, parkolt domain
_dmarc.regi-domain.hu.  3600  IN  TXT  "v=DMARC1; p=reject; rua=mailto:dmarc@pelda.hu"

Ellenőrzés parancssorból, és amit egy beérkezett levél fejlécében látnod kell:

dig +short TXT _dmarc.pelda.hu
# "v=DMARC1; p=quarantine; rua=mailto:dmarc@pelda.hu"

# Authentication-Results fejléc egy sikeres levélnél:
# spf=pass (google.com: domain of hirlevel@pelda.hu ...)
# dkim=pass header.d=pelda.hu
# dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=pelda.hu

A header.from=pelda.hu a kulcs: az igazítás erre a domainre vonatkozik.

Gyakori kérdések

Elég, ha van SPF és DKIM, kell még DMARC is?
Kell. Az SPF és a DKIM nem ellenőrzi a felhasználónak megjelenő feladó mezőt. A DMARC köti össze a hitelesítést a látható From: domainnel, és ez dönti el, hogy egy hamis levél kézbesüljön-e. E nélkül a másik kettő önmagában nem véd a névvel való visszaélés ellen.
Miért kockázatos azonnal p=reject értékkel indítani?
Mert a legtöbb cég nem tudja fejből, hány rendszer küld a nevében. A számlázó, a CRM és a régi tárhely levelei egyik napról a másikra eltűnhetnek. Indulj p=none házirenddel, olvasd a jelentéseket pár hétig, és csak utána szigoríts. A lépcsőzetes bevezetés néhány hét, nem hónapok kérdése.
Javítja a DMARC a Google-rangsorolást?
Nem, közvetlenül nem. DNS-rekord, a keresőrobot nem használja rangsorolási jelzésként. A kézbesíthetőséget viszont érdemben javítja, és a legtöbb technikai audit alapkövetelménynek tekinti. Közvetve a márkád védelmét szolgálja, mert nehezebb a nevedben csalni.
Mit kezdjek a DMARC jelentésekkel, ha nem tudom olvasni az XML-t?
A nyers XML valóban nem emberi olvasásra készült. Használj jelentésfeldolgozó szolgáltatást, amely grafikonná alakítja a napi adatokat. Kisebb domainnél a heti egyszeri átnézés is elég. A lényeg, hogy lásd, mely IP-címekről megy levél a nevedben.
Olyan domainre is kell, amelyről soha nem küldünk levelet?
Igen, sőt ott a legegyszerűbb. Tegyél be egy p=reject házirendet, és nem kell mérlegelned a jogos küldőket. A nem használt domainek különösen vonzó célpontok, mert senki nem figyeli őket. Ez néhány perc munka domainenként.

Források

Kapcsolódó fogalmak

A te oldaladon hogy áll a(z) „DMARC”?

Futtass egy SEO-auditot: pontszám, fejlesztői ítélet, a leggyorsabb javítások, és minden tételhez bizonyíték.

Ingyenes SEO-audit indítása