applied security research
Erik Remmelzwaal - 29 apr 2021

27% .nl domeinen slecht beschermd tegen spoofing

TLDR:

We scanden de DNS records van 1,6 miljoen .nl domeinen en vonden uit:

  1. 9% is rechtstreeks gekoppeld aan Microsoft 365, daarmee is Microsoft veruit de grootste
  2. Google is nr2 en heeft 4% van de domeinen aan zich verbonden, nagenoeg gelijk aan een aantal andere spelers.
  3. Van alle mail-enabled domeinen heeft 27% geen SPF record tegen spoofing

Open-source Marktonderzoek

Om een beeld te krijgen van het marktaandeel van Microsoft Office365 in Nederland besloten we een eigen onderzoekje te draaien. We vermoedden tenslotte al wel dat Microsoft langzamerhand met haar clouddiensten de dominante partij was geworden, maar als je een startup bent en keuzes maakt, wil je soms net iets meer dan een vermoeden. In ons geval was de vraag: moeten we Attic als eerste klaar maken voor Microsoft of voor Google, om met de eerste launch zoveel mogelijk MKB bedrijven te kunnen bedienen.

Nu zijn er niet echt betrouwbare cijfers beschikbaar over gebruik van cloud platforms. Althans ik kon ze niet vinden. Vandaar dat we zelf iets in elkaar bouwden. We wilden daarbij niet graag een dure database met alle Nederlandse bedrijven kopen, maar ons liever baseren op open data.

We besloten dat een controle op DNS configuratie van .nl domeinen een voldoende betrouwbaar beeld moest opleveren over verdeling van de markt. Immers, domeinen die gekoppeld zijn aan Office365, bevatten typisch gezien een DNS configuratie om e-mails gericht aan dat domein bij Microsoft af te laten leveren.

De enige zware kanttekening was dat niet elk Nederlands bedrijf een .nl domein zal hebben. Zoals zolder.io bijvoorbeeld. Maar wij vermoeden dat de verdeling binnen .nl domeinen naar cloudprovider toch een behoorlijk representatief beeld vormt voor de totale populatie. Vooral omdat het ons niet echt te doen is om het exacte marktaandeel maar vooral de verdeling tussen de aanbieders ten opzichte van elkaar.

En omdat we toch DNS aan het controleren waren, besloten we ook nog een paar andere checks uit te voeren. Het geheel leidde tot een aantal interessante inzichten die ik hieronder zal beschrijven. Maar niet voordat ik uiteenzet hoe we het onderzoek precies hebben uitgevoerd.

1,6 miljoen .nl domeinen

Het begon met het verkrijgen van “alle” .nl domeinen. Eigenlijk is er maar 1 club die precies weten welke .nl domeinen bestaan en dat is SIDN. Maar die bieden – mede om privacyredenen – niet de mogelijkheid om al die domeinen als 1 lijst te downloaden.

Als alternatief kwamen we op zonefiles.io. Zij crawlen het internet, een beetje vergelijkbaar met hoe zoekmachines dat doen, en slaan dan op welke domeinen ze tegen komen. In totaal leverde dit een database met 1,6 miljoen domeinen op. Zonefiles zelf geeft al duidelijk aan dat dit zeker niet alle geregistreerde .nl domeinen zijn. Want sommige domeinen worden simpelweg niet (openbaar) gebruikt, hebben geen DNS server, enz. en zijn daarom virtueel onvindbaar voor dit soort crawlers.

Die lijst was tegen betaling te downloaden. Maar wel voor een fractie van de prijs in vergelijk met de kosten van een KvK database, om een voorbeeld te noemen. Dus het onderzoekje kostte nu alsnog geld, maar bleef binnen de perken.

En zo hadden we een lijst met 1,6 miljoen domeinnamen en kon het scannen beginnen.

DNS-scan

DNS is een open protocol en gedistribueerd systeem, dus iedereen kan voor al die 1,6 domeinen het DNS record opvragen. Op de command-line op een Windows computer heel simpel met nslookup. En als je dat 1x kan, dan kan je het ook automatisch 1,6 miljoen keer. Dus Theo bouwde een mooi python scriptje dat door die hele lijst met domeinen loopt en per domein de volgende dingen in een database zet:

  • MX-record. Om uit te vinden waarnaartoe e-mail gericht aan dit domein wordt doorgestuurd
  • SPF-record. Om te bekijken of het domein beschermd is tegen spoofing
  • DMARC-record. Om te zien of het domein ook instructies biedt aan ontvangers hoe om te gaan met gespoofde berichten
  • SOA-record. Om bij een volgende run een betrouwbaar vergelijk te kunnen maken

De code was simpel maar doeltreffend, gebruikmakend van de dnspython library. Hier de functies voor het opvragen van het MX record en het SPF record:

def get_mx(domain):
    try:
        answers = my_resolver.resolve(domain, 'MX')
        records = [str(rdata.exchange) for rdata in answers]
        return ",".join(records)
    except:
        return 'failed'


def get_spf(domain):
    try:
        answers = my_resolver.resolve(domain, 'TXT')
        for rdata in answers:
            if rdata.to_text().startswith('"v=spf1'):
                return rdata.to_text().strip('"')
    except dns.resolver.NoAnswer:
        pass
    except:
        return 'failed'
    return ''

Als DNS server gebruikte Theo een lokaal systeem. Het duurde enkele dagen voordat de complete lijst doorlopen was.

.nl DNS-scan: de resultaten

De resultaten van de scan zijn het beste als een soort drilldown te interpreteren. Wij wilden weten hoeveel van de domeinen gekoppeld zijn aan Microsoft. Dat kunnen we baseren op het MX record. Immers: e-mail gericht aan een dergelijk .nl domein moet afgeleverd worden bij Exchange Online zodat de gebruikers via Outlook het kunnen ontvangen.

Mail Enabled?

Maar voor te kijken naar verdeling van e-mail afleveradres, vond ik het logisch om eerst nog alle domeinen uit te filteren die uberhaupt geen MX record hebben. Die domeinen worden dus niet gebruikt voor e-mail. Mijn redenering daarbij is dat ze dan ook niet het primaire domein van een organisatie zijn en ook niet voor kantoorautomatisering gebruikt worden. Om iets te kunnen zeggen over marktaandeel in onze doelgroep (zakelijke NL klanten) leek het mij logisch om dergelijke domeinen buiten beschouwing te laten.

Van de totaal 1.600.749 domeinen die we scanden, was 1.330.221 (83%) voorzien van een MX record. Alle cijfers hierna zijn afgezet tegen die 1.330.221 mail enabled .nl domeinen.

9% van .nl is gekoppeld aan Microsoft Office365

Een MX record dat verwijst naar “%protection.office.com%” duidt op een koppeling met Microsoft Office365. De query:

select count(1) as cnt from domains where mxrecords like "%protection.outlook.com%" 

Dit betrof 118.671 domeinen. Oftewel 9% van alle mail-enabled .nl domeinen is gekoppeld aan Microsoft 365.

Durf je dan te zeggen dan 9% van alle Nederlandse bedrijven gebruik maakt van Microsoft365? Ja minimaal. Want er zullen ook veel bedrijven zijn die hun e-mail eerst door een anti-spam wasstraat leiden alvorens het naar Microsoft te sturen. Daarnaast zijn er vast ook bedrijven die Microsoft 365 wel gebruiken maar niet voor e-mail.

Maar eerlijk is eerlijk: de analyse die met deze scan beter te maken is, is hoe Microsoft zich verhoudt tot andere partijen. En dan met name Google, want dat is toch wel de grootste concurrent als het gaat om software voor kantoorautomatisering.

4% van .nl is gekoppeld aan Google

De query voor domeinen die aan Google gekoppeld zijn, is vergelijkbaar:

 select count(1) as cnt from domains where mxrecords like "%aspmx.l.google.com%"  

Dit komt neer op 53.380 domeinen. Oftewel 4% van alle mail-enabled .nl domeinen is gekoppeld aan Google Workspace. Wat neerkomt op minder dan de helft van het Microsoft klantenbestand. Een vrij groot verschil.

En het betekent ook dat 87% aan een andere dienst gekoppeld is dan Microsoft of Google.

36% van .nl wordt afgeleverd bij 1 van 10 cloud providers

Vervolgens kan de query omgedraaid worden om een indruk te krijgen welke andere grote aanbieders van e-mail diensten aan .nl domeinen gekoppeld zijn:

select mxrecords,count(1) as cnt from domains where mxrecords not like "%protection.outlook.com%" and mxrecords not like "%aspmx.l.google.com%" group by mxrecords order by cnt desc

Dit levert naast Microsoft en Google de volgende top 10 aan hits op:

AanbiederAandeel (tov mail-enabled .nl)
Microsoft118.671 (8,9%)
Google53.380 (4,0%)
Sonexo52.943 (4,0%)
Mijndomein50.950 (3,8%)
Strato (rzone.de)48.564 (3,7%)
TransIP44.383 (3,3%)
Hostnet40.332 (3,0%)
Yourhosting (yourfilter.nl)31.529 (2,4%)
Argeweb23.667 (1,8%)
Vimexx (spamrelay.zxcs.nl)15.773 (1,2%)

Kortom: e-mail hosting is nog enorm versnipperd. En dat is maar goed ook. Maar binnen die versnippering is Microsoft met 9% inderdaad al een dominante factor te noemen. En dat terwijl Microsoft de Exchange Online service pas sinds 2009 wereldwijd aanbiedt (inmiddels 12 jaar). En het .nl domein toevallig afgelopen week het 35 jarig bestaan viert.

Naar ons gevoel is Microsoft vooral de laatste jaren sinds de introductie van Office365 hard gegroeid, en nog eens extra snel door de adoptie van videobellen in het bijzonder via Teams tijdens de coronapandemie.

We zullen deze scan jaarlijks proberen te herhalen om een trend te kunnen publiceren.

27% van .nl domeinen heeft geen SPF record

En dan om de titel van dit artikel nog maar even te onderbouwen. Zoals gezegd besloten we om, als we dan toch aan het scannen waren, ook te kijken hoe het zat met SPF en DMARC bij die .nl domeinen. Er is de laatste weer veel te doen om spoofing en wie een e-mail domein bezit, zal zelf aan de slag moeten om te voorkomen dat iemand anders zich voordoet als iemand met een e-mailadres binnen dat domein.

Dat begint met het instellen van een SPF record, een DNS onderdeel tegen e-mailspoofing die als standaard opgenomen is in 2004. Er zijn ook alternatieven, maar SPF is langzamerhand wel een soort must-have geworden om te vermijden dat je merk misbruikt wordt EN te vermijden dat je e-mails in spamfolders belanden.

De query:

select count(1) from domains where ( spf = "failed" or spf = "" ) and mxrecords not like "failed"

Het resultaat hiervan is 363.265. Oftewel 27% van mail-enabled .nl domeinen heeft geen SPF record en is dus niet of slecht beschermd tegen spoofing.

Opvallend daarbij was nog wel dat als we deze zelfde query uitvoeren op domeinen die verbonden zijn aan Microsoft, er slechts 3111 resultaten zijn. Oftewel 3% van de domeinen die aan Microsoft zijn gekoppeld, is slecht beschermd tegen spoofing. Dit betekent dat Microsoft kennelijk een succesvolle campagne voert om domeinen van klanten te beschermen tegen spoofing.

96% van .nl domeinen heeft geen DMARC record

DMARC is nog iets ingewikkelder te begrijpen, en voegt nog een extra laag toe aan SPF (en DKIM). Met DMARC geef je namelijk instructies aan ontvangers van e-mails van jou domein, over wat te doen met e-mails die niet valideert kunnen worden tegen het SPF record.

Lees de vorige paragraaf maar een paar keer en als je het dan nog niet begrijpt: don’t worry. Zet gewoon Attic aan dan testen wij of alles goed staat 😉

Blogs

Breda Robotics

Erik Remmelzwaal - 10 mei 2021
Zolder BV is toegetreden tot het netwerk van Breda Robotics. Deze vereniging brengt organisaties bij elkaar die actief zijn rondom robotisering in de regio West-Brabant. Voor Zolder geeft Breda Robotics de mogelijkheid om samen te werken met de robotiseringsindustrie. Te begrijpen hoe die sector precies werk en op welke vlakken cybersecurity kennis kan worden ingezet […] Lees verder

27% .nl domeinen slecht beschermd tegen spoofing

Erik Remmelzwaal - 29 apr 2021
TLDR: We scanden de DNS records van 1,6 miljoen .nl domeinen en vonden uit: 9% is rechtstreeks gekoppeld aan Microsoft 365, daarmee is Microsoft veruit de grootste Google is nr2 en heeft 4% van de domeinen aan zich verbonden, nagenoeg gelijk aan een aantal andere spelers. Van alle mail-enabled domeinen heeft 27% geen SPF record […] Lees verder

Zolder biedt MKB betaalbare en eenvoudige security-app

Zolder B.V. - 12 apr 2021
“Attic voorkomt dat security een luchtbel wordt” Security is bij mkb-bedrijven vaak het ondergeschoven kindje. Ze hebben er de mensen en het budget niet voor. Dat maakt deze doelgroep een aantrekkelijk doelwit voor cybercriminelen. Voor de vier doorgewinterde cybersecurity-experts van start-up Zolder reden om Attic te introduceren. Deze eenvoudige, goedkope en toekomstbestendige app maakt mkb’ers […] Lees verder

Nieuwe Themesong voor Zoldersessions

Erik Remmelzwaal - 13 mrt 2021
Ik vond het tijd worden voor een nieuw liedje voor onze Zoldersessions. Tot nu toe hadden we er een rechtenvrij liedje onder staan, namelijk EVA_失望した, maar wilden toch iets meer 'eigens'. Daar schakelden we Bjørgen van Essen voor in met dit eindresultaat. Dit is hoe dat tot stand kwam. Lees verder

Zolder.App Open Beta

Zolder B.V. - 02 feb 2021
We launched the final beta release to the Google and Apple appstores. Any business running on Microsoft 365 is more than welcome to join. As a beta-tester you will receive a free subscription to the Zolder.App Premium Plan for the remainder of the beta phase, which is scheduled to run through April 30th 2021. Zolder.App […] Lees verder

GGD data is topje van ijsberg

Erik Remmelzwaal - 26 jan 2021
Maandag kwam RTL Nieuws, na onderzoek van Daniël Verlaan, naar buiten met het nieuws dat gestolen data van de GGD online wordt verhandeld door criminelen. Het gaat om data die onderdeel uitmaakt van het bron- en contactonderzoek dat de GGD uitvoert als onderdeel van de bestrijding van Corona/COVID-19. De data bevat gevoelige persoonsgegevens en criminelen […] Lees verder

#CES2021 - We Are Ready!

Erik Remmelzwaal - 06 jan 2021
We are very excited to be part of the #CES2021NL mission! Meet us at CES (Januari 11-14) in our online booth 10609 and see how we solve global challenges with NLTech. Erik Remmelzwaal, Co-Founder & CEO Yes I indeed think we are ready for CES. At this virtual event we will showcase Zolder.App. I am […] Lees verder

Zolder.App Blog 3 - Feedback

Erik Remmelzwaal - 27 nov 2020
Bij het ontwikkelen van een nieuwe dienst, zeker als dit Software-as-a-Service betreft, is feedback vanuit (potentiële) afnemers cruciaal. In het geval van Zolder.App is de doelgroep het MKB. We zijn al gelijk na lancering van het merk Zolder gestart met het vinden van MKB-ers die als tester wilden helpen. Oproep 19-apr-2020 Dit leidde tot best […] Lees verder

Azure App Consent Policies

Rik van Duijn - 11 nov 2020
OAuth consent phishing has been on the rise for a while now. Unsurprisingly, Microsoft has gradually introduced measures to protect from this type of attack. Latest: Risk-Based Step-Up Consent. Lees verder

Honeytokens using Azure Keyvaults

Rik van Duijn - 15 okt 2020
In 2017 Wesley and I gave a presentation at SHA2017 about honey/pot/tokens. We actually planned on building a fully fledged platform. But never came further then the POC phase of that project. This week we got a product demo from the guys at Thinkst, i’ve always loved this way of thinking: let the attacker come […] Lees verder

Zolder.App Blog 2 - Probleem & Oplossing

Zolder B.V. - 08 okt 2020
Het is best een goed idee om voordat je begint met het bouwen van een product of dienst, te weten welk probleem je ermee gaat oplossen. Voor Zolder.App: we lossen het probleem dat MKB-ers slecht beveiligd zijn op door enterprise-niveau security voor hen toegankelijk te maken. In feite zijn er een aantal problemen die we […] Lees verder

Risk of exposed home automation services

Wesley Neelen - 24 sep 2020
At home, I am automating many things for fun. Currently I am using Home Assistant, an incredibly powerful piece of software for automating your home. Regularly I am combining the home automation experiences with security. Home automation is often related to physical things such as changing lights, moving curtains, opening door locks or turning the […] Lees verder

Zoldersessions Studio Setup

Zolder B.V. - 27 aug 2020
Here is the kitlist which we end up with to record our Zoldersessions 🙂 Audio Input 4x Rode Procaster microphone 4x Triton Audio FetHead Microphone PreAmp 4x YellowTec m!ka Mic Boom Focusrite Scarlett 18i8 3rd gen Audio Output 4x Shure SRH840 Headphone ART HeadAmp 4 headphone amplifier Video Input 2x Sony Handycam main cameras Logitech […] Lees verder

Zolder.App blog 1 - het idee

Erik Remmelzwaal - 27 aug 2020
Op Zolder bouwen wij aan een mobiele app die MKB’ers op een baanbrekende manier moet helpen digitaal weerbaar te zijn. We verwachten in het vierde kwartaal van 2020 de app te kunnen lanceren. In deze blogreeks neem ik je mee in de ontwikkeling van Zolder.App. Eigenlijk was er niet 1 idee, maar is Zolder.App het […] Lees verder

Hacking the traffic light of the future

Wesley Neelen - 06 aug 2020
Nowadays we are connecting everything we can think of to the internet. Usually to make our lives easier or more comfortable. Some of the new upcoming innovations are related to making our traffic smart with the goal to improve safety, comfort and the traffic flow. We dived into this technology to analyze the inner workings and identify potential security risks. Lees verder

Detect lateral movement with Azure Sentinel

Wesley Neelen - 01 jul 2020
Lately we have been setting up a the production network for our Zolder.App service. The network consists of multiple segments separated by a firewall. As an addition we wanted to add monitoring features into the network. If an attacker is in our network, we would like to get a notification. Lees verder

CSBN 2020

Erik Remmelzwaal - 01 jul 2020
Het jaarlijks CSBN is weer beschikbaar. Het Cybersecurity Beeld Nederland, opgemaakt door onze overheid in de hoedanigheid van de NCTV. Aan afkortingen geen gebrek. Dat maakt het gelijk ook heel taaie kost: ingewikkeld om te doorgronden. Je gaat haast denken dat het ook de bedoeling is dat we er niet teveel aandacht aan besteden. Of […] Lees verder

Detecting BEC fraud using Azure Sentinel

Rik van Duijn - 17 jun 2020
Business Email Compromise (BEC) Fraud inflicts the most damage of all types of cybercrime, according to the FBI. How to detect such attacks using Azure Sentinel? Rik shares some actual possibilities. Lees verder

Security-by-design. Zo makkelijk is dat niet

Wesley Neelen - 16 jun 2020
Wesley beschrijft de complexiteit bij het bouwen van een netwerk infrastructuur: kies je voor veiligheid of werkbaarheid? Of is er een optimale mix? Lees verder

Phishing aftercare

Rik van Duijn - 26 mei 2020
This blog is part of our Office 365 attack & defense series. We also maintain a Github page where we share our Office 365 tools and queries. We often get sent phishing emails by family and friends. Not to phish us but because we ask family and friends to forward them to us. Sometimes they […] Lees verder