DMARC for flere domæner og parkering

Teknisk indlæg - det anbefales at høre noget muntert for at holde humøret højt, som eksempelvis JONNY HEFTY & JØDEN - Kom igen , evt. den anden udgave som jeg også elsker KOM IGEN Aalborg remix Den har jeg sikkert brugt før, men altså vi har også snakket om DMARC før!

Kom Igen! DMARC er vigtigt og det er et fedt nummer.

Hvis man ikke er til reggae, så kan en alternativ The Marvelettes - Please Mr. Postman (1961) måske virke. Update: Teh Elders fra the internet har bedt om tilføjelse af Elvis Presley - Return To Sender så hermed done :-D

Nå men i slutningen af Marts fik vi email fra NHN, nyhetsbrev fra Norsk Helsenett - hvor jeg bed mærke i:

Nytt fra HelseCERT: Stopper mer enn 450.000 falske e-poster hver uke Ved hjelp av DMARC kan virksomheter stoppe falske e-poster. Bare i løpet av den siste uken har virksomheter som har tatt i bruk DMARC i helsesektoren stoppet over 450.000 falske e-poster forsøkt sendt i deres navn. Slik forfalskning gjøres i dag av kriminelle som misbruker domene til utsending av blant annet direktørsvindel, ondsinnet kode og andre typer spam.
DMARC er en teknologi som kan blokkere uautorisert e-post og hindre misbruk av egne domener.

Wow. Det er aligevel et højt tal!

Da jeg så læste videre linkede de så til egen informasjonsside https://www.nhn.no/tema/sikkerhet/HelseCERT/Sider/DMARC.aspx

KORT BESKRIVELSE AV DMARC DMARC er i all hovedsak tre ting:
Beskyttelse av egne domener mot e-postforfalskning Blokkering av forfalsket e-post fra andres domener Automatisk rapportering av forfalsket e-post til eieren av domenet

Det vidste jeg godt, og jeg bruger selv DMARC, men ahem, gør virksomheden?! Det gjorde vi ikke! og værre, vi har et antal domæner som ikke er i brug endnu, som patientsky.at

SPF og DMARC for non-email domæner

Så hvad gør man så, jeg søgte og prøvede at finde ud af hvordan vi fik enablet det, på aktive og mere inaktive domæner - dem som der ikke sendes email fra endnu. Da jeg så havde RTFM'et lidt sendte jeg en høflig email til en af de danske eksperter i DMARC, Henrik Schack som altid er flink til at svare på spørgsmål omkring DMARC. Han er en guttermand!

Så med hjælp fra Henrik Schack i "BIND format":

@          IN TXT "v=spf1 -all"
_dmarc IN TXT "v=DMARC1; p=reject; ..."

Disse to fortæller aktivt, dette domæne bruges IKKE til email. Dejligt. Så er der styr på den del! Det giver lidt ro i maven at der afvises allerede før vi bruger det. Så kan vi nemlig være restriktive når vi tager dem i brug!

SPF og DMARC på aktive domæner

Hvordan aktiverer man email sikkerhed, uden at der afvises email som skal frem?

Her er DMARC så dejlig at der findes en monitor mode, hvor man kan bede om at der sendes rapporter til en bestemt email adresse med DMARC rapporter.

Så et hurtigt alias, dmarc@domæne.tld så kan man slå DMARC til. Her vist med mit private domæne:

kramse.org descriptive text "v=spf1 a mx mx:kramse.dk ~all"
_dmarc.kramse.org descriptive text "v=DMARC1\; p=none\; rua=mailto:dmarc@kramse.org\; ruf=mailto:dmarc@kramse.org"

Specielt policy er interessant, som kan sættes til: "none", "quarantine", or "reject". "none" bruges til at indsamle feedback uden at afvise email. Mere om det sidste kan læses på https://dmarc.org/wiki/FAQ#s_10

Så omkostningen ved at slå monitor mode til er lille. Dog anbefalede Henrik Schack mig at anvende en DMARC rapporterings service, fordi rapporterne er XML format :-D og yderligere

Derudover skal man passe lidt på med at få sendt forensics rapporter (ruf) til eget mailsystem, Microsoft kan sende ganske store mængder data i tilfælde hvor et domæne misbruges kraftigt.

og så er det jeres tur, kom igang! Sæt DMARC i monitor mode, det er det mindste I kan gøre!

Jeg bruger forøvrigt dmarcians værktøjer til at checke min opsætning https://dmarcian.com/

DKIM

og så var der lige DKIM :-D

Jeg havde set vi havde DKIM allerede, men havde ikke checket det virkede. Det endte med at vi lavede nye DKIM nøgler hos Salesforce og Google Mail, Authenticate email with DKIMGenerate the domain key

Det giver dejligt lange records, som hverken GratisDNS eller AWS Route 53 er særligt glade for, Faktisk er det ikke deres skyld idet der er max på 255 tegn i DNS records. Se RFC1035 og RFC 4408 section 3.1.3 for mere info, h/t til Signout for de specifikke referencer.

Nå men så kan man dele op i mindre bidder "part1" "part2" osv. Selvom GratisDNS interface så ikke lige ville have den første " og den sidste". Så hvis I bruger GDNS, så er det sådan her:

GratisDNS interface med DKIM pastet uden citationstegn foran og bagved

Jeg kunne herefter checke med host/dig og check med https://www.mail-tester.com/spf-dkim-check viser også en 2048-bit key :-)

DKIM check billede af DKIM record

På AWS Route 53 kunne jeg nøjes med at paste hele record, og lave " først og sidst med et space midt i med " "

Update fredag 11:40, input fra Schack. Der er nogle libraries som driller hvis der mangler space i DKIM record:

Ifølge DKIM standarden er det tilladt men ikke krævet at have whitespace omkring de forskellige parametre i publickey'en
Prøv eventuelt at tilføje et mellemrum efter k=rsa, således
v=DKIM1; k=rsa;p=MIIBIjANBgkqhkiG9
bliver til 
v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9

Det har jeg netop tilføjet på vores. Update slut.

Rapporterne fra DMARC

Der findes steder man kan checke sine indstillinger, jeg brugte blandt andet

Resourceforbrug

Hvor meget tid har jeg brugt?

Relativt få timer, spredt over nogle dage. De primære dele var:

  • OK fra C-niveau - op til CEO, han sagde hurtigt OK
  • Indsamling af domænenavne
  • Skrivning af SPF og DMARC records, bonus med dem for parkerede domæner!
  • Skrivning af informationsmail sendt til en gruppe, "Vi slår det her til, hvis problemer sig til"
  • Opdatering af DKIM keys, postmaster personen i Oslo, som snakkede med Salesforce guruen, som resulterede i DKIM records
  • Opdage at der var problemer med lange TXT records på både AWS Route53 og GratisDNS :-D
  • IRC med de flinke DNS rødder i EFNet/#gratisdns, stort tak til dem
  • opdatering af records
  • ... ventetid
  • Check efterfølgende
  • Skrivning af blogindlæg, undervejs

PS What is "External Destination Verification"?

Så kom der også lige en anden krølle på da jeg checkede domænerne med DMARCIAN: https://dmarcian.com/dmarc-inspector/pasientsky.no "Warning regarding this record: Missing authorization for External Destination."

Selvfølgelig, What is "External Destination Verification"?

ahhh, man må ikke bare spamme DMARC rapporter til andre domæner, makes sense :-D

Det kan man løse ved at sende til email adresser indenfor samme domæne, men jeg valgte at tilføje den anbefalede record:

pasientsky.no._report._dmarc.patientsky.com TXT v=DMARC1

Søg også på DMARC på version2.dk der er flere gode artikler som https://www.version2.dk/artikel/dmarc-advarer-dig-baade-mod-phishing-gle...

Relateret indhold

Henrik Kramshøjs billede
Henrik Kramshøj er internet-samurai. Han elsker netværkspakker tcpdump, wireshark, BackTrack, Metasploit og andre hackerværktøjer og blogger om sikkerhed, netværk og unix.

Kommentarer (11)

Jacob Rasmussen

Når du sætter DKIM op, skal selve mailserveren jo være med i setuppet.
Hvad bruger folk derude, som add-on til Exchange, for at signere udgående mails med DKIM, samt til at validere indgående mails?

Peter Holm Jensen

1) jeg holder meget af "The Marvelettes - Please Mr. Postman (1961)" så den nupper jeg.
2) For os der befinder sig på den nederste del af the learning curve for mail, hvor får vi os lige et koncentreret boost for at komme et godt stykke op over midten.

Henrik Kramshøj Blogger

2) For os der befinder sig på den nederste del af the learning curve for mail, hvor får vi os lige et koncentreret boost for at komme et godt stykke op over midten.

enig, det er et stort problem. Faktisk også noget jeg selv oplever :-D Jeg har egen mailserver, men må ofte spørge folk som Henrik Schack, Tykling og andre om hjælp - fordi det ER komplekst. Til andre ting som multicast og QoS/Class of Service måtte jeg også for nyligt spørge andre til råds i DKNOG.

Vi læser en masse kapitler i gode bøger men der er intet som slår erfaring. Så start med at sætte dig et mål: jeg vil prøve at køre min egen mailserver for et par domæner, evt. et helt nyt domæne :-D Dernæst find hvad du kan af manualer og introduktion. Jeg havde stor glæde af http://www.postfix-book.com/ men den er nok lidt outdated nu.

Så afsætter du noget samlet tid, det kunne være i sommerferien på Thecamp.dk eller https://bornhack.dk/bornhack-2017/ - shameless plug I know, men vi tjener ikke på det. I den uge sørger du for at kommunikere med andre om emnet, hvilket er nemt hvis man siddder i Bregninge/på Bornholm og kan snakke 24/7 med andre flinke folk.

Det plejer at give et booost i indlæringen, så man selv kan fortsætte når man kommer hjem. Det var præcis hvad Jette http://nerdgirl.dk/ gjorde for nu en del år siden :-)

Faktisk skal jeg sidde her i påsken med gode venner og hugge løs på min egen ToDoliste - se http://nwwc.dk for actionbillede.

Lasse Mølgaard

Hmm... Nu er det lidt for mange år siden jeg sidst legede med mailman, men jeg vil mene i tænker en lille smule forkert.

Først og fremmest vi snakker om: http://www.list.org ikke sandt?

Mailman er blot at betragte som en SMTP klient. DMARC er en ren SMTP server ting.

Min angrebsvinkel vil være at sætte mailman til at bruge en SMTP smarthost. Det er muligt at få mailman til at autentifice sig selv med brugernavn og password, når den skal sende emails, men opsætningen er lidt forskellig alt efter hvilken version man bruger af mailman.

Uanset hvad er det smarthosten som skal vi skal kigge på, når vi laver DMARC records. Hvis den er hostet externt, så er vi ude i noget 3rd party.

Her har Microsoft gjort sig nogle tanker:

https://blogs.msdn.microsoft.com/tzink/2015/03/13/how-to-align-with-spf-and-dmarc-for-your-domain-if-you-use-a-lot-of-3rd-parties-to-send-email-as-you/

Jeg syntes selv det var langt mere tricky at holde styr med DKIM signerede mails, når de kom kom fra autoriserede brugere, mens den verificere DKIM signaturer, når servere sendte mails til min server.

Især når den samme server også vasker mails i Clamav, SpamAssassin og PostGrey.

Det krævede at jeg satte mig ned med et stykke papir og tegnede forløbet igennem min mailservers regler. :-)

Log ind eller opret en konto for at skrive kommentarer