Mitre Att&ck Framework Hands-on
In de vorige post hebben we goed gekeken naar het Mitre Att&ck Framework en zoals je kon lezen is het een uitgebreid framework met veel diepgang. Maar hoe moet je als organisatie nou aan de slag gaan met het Mitre Att&ck Framework? In deze post een deep-dive in het Mitre Att&ck framework. Laten we eens lekker aan de slag gaan.
Mitre Att&ck Voorbereiding
Het antwoord op de vraag wat je als organisatie uit het framework wilt halen is misschien cliché, maar “dat hangt ervan af”. Wat wil je “uit” het framework halen en wat voor soort organisatie ben je? Omdat elke organisatie een andere set activa en bedrijfsprocessen heeft, zijn de specifieke risico's die aan elke tactiek zijn verbonden, uniek voor elke organisatie. Zo is het risico op “exfiltratie” namelijk veel hoger bij een organisatie met veel intellectueel eigendom en gevoelige gegevens. En is impact weer een belangrijke factor bij organisaties waarbij 100% uptime een belangrijke factor is.
Het is dus belangrijk om na te denken over de risico's van elk van de tactieken in de matrices. Misschien is het raadzaam om klein te beginnen. Wanneer je als organisatie ook werkt met ICS apparatuur dan is het wellicht zinvol om het framework als eerste op die omgeving te plotten. Dit framework is wat kleiner en makkelijker te gebruiken dan het grote enterprise framework. Maar wanneer je het enterprise framework wilt gebruiken kan het ook zeer waardevol zijn om je in eerste instantie te focussen op 1 doelstelling zoals b.v. het voorkomen van “initial access”. Op die manier kun je snel inzicht krijgen en op een effectieve manier prioriteit geven aan defensieve maatregelen en deze onderbouwen.
Omdat doelstellingen vaak behaald worden door het inzetten en combineren van meerdere technieken is het meestal best-practice om sterke beveiliging te implementeren tegen verschillende (high-risk) technieken dan om zwakke beveiligingen toe te passen tegen alle tactieken. Dit concept kan vooral handig zijn wanneer bescherming tegen sommige technieken duidelijk duurder is dan andere.
Naast het per tactiek bekijken van beveiligingsprioriteiten kunnen organisaties het Mitre Att&ck framework gebruiken om na te denken over de dekking van hun beveiligingstools t.o.v. “de kroonjuwelen”. Wat zijn de kroonjuwelen van de organisatie? Welke technieken worden gebruikt om deze te ondermijnen en zijn de huidige beveiligingstools dekkend of zitten er gaten in de verdediging?
Daarnaast geeft het framework een goed overzicht van beveiligingsvlakken. Zijn al deze vlakken meegenomen in de beveiligingsstrategie of zitten er nog gaten in de verdediging? Waar overlappen beveiligingsproducten elkaar?
Andersom kan het framework ook prima ingezet worden nadat een cyberincident heeft plaatsgevonden. Wanneer je weet wat er gebeurt is zijn er een aantal zaken die ingekleurd moeten worden. Wanneer data exfiltratie heeft plaatsgevonden is het zaak om de gebruikte techniek te achterhalen en om te kijken welke mitigaties getroffen moeten worden. Ook is het belangrijk om te kijken hoe de “data exfiltratie” plaats heeft kunnen vinden? Hoe is “initial access” verkregen? En is er “persistence” op een van de systemen? Is er naast exfiltratie ook nog lateral movement geweest etc. Op die manier helpt de matrix om alles inzichtelijk te krijgen, de juiste mitigerende maatregelen te nemen en om niets te vergeten.
Mitre Att&ck Navigator
Een belangrijke tool binnen het framework is de Mitre Att&ck Navigator (https://mitre-attack.github.io/attack-navigator/). De Att&ck Navigator is een web-based tool voor het annoteren en verkennen van de Att&ck matrices. De navigator kan worden gebruikt om de defensieve dekking te bepalen, red/blue teamplanning, de frequentie van gedetecteerde technieken en nog veel meer te visualiseren. Draai je de navigator liever lokaal, dat kan. Download hem dan vanuit de Mitre GitHub repository: https://github.com/mitre-attack/attack-navigator/. Wil je het werken met de matrix automatiseren dan kun je hiervoor de speciale Mitre Python tools gebruiken: https://github.com/mitre-attack/mitreattack-python.
De Mitre Matrices kennen allemaal interactieve varianten. Uiteraard, wanneer je de voorkeur geeft aan Excel om de matrices te bekijken en te bewerken dan kun je deze gemakkelijk downloaden v.a. https://attack.mitre.org/resources/working-with-attack/. Maar de navigator tool maakt het werken met de matrices een stuk makkelijker en intuïtiever.
Zowel de Enterprise, Mobile en ICS matrices hebben een interactieve variant. Er zijn zelfs verschillende interactieve varianten voor de verschillende versies van het framework:
Deze interactieve varianten geven je een makkelijk interface waarop je eventuele overeenkomsten kunt zien, informatie kunt zoeken en extraheren en waarop je je eigen omgeving of use-case op kunt plotten om b.v. de “gaten in de huidige cybersecurity” inzichtelijk te maken.
Maar wat is nu de navigator precies? De navigator is een tool welke in de basis werkt met layers en bouwblokken uit het framework. Wanneer je de navigator gaat gebruiken heb je 2 dingen nodig:
- Het doel, dus wat je wilt uitwerken of inzichtelijk wilt maken
- De juiste matrix
Nadat je de juiste matrix gekozen hebt kun je aan de slag om je doel uit te werken. In dit voorbeeld gebruiken we de ICS versie van het Framework. We kunnen b.v. heel makkelijk inzichtelijk maken met welke technieken bepaalde “thread groups” werken:
Wanneer een “thread-group” actief is binnen een bepaalde branche kan het zaak zijn om eerst de beveiliging op deze punten te controleren. Wanneer de angst bestaat op specifieke malicious software kan uiteraard hetzelfde worden gedaan.
Of wanneer je de mitigation maatregelen naloopt kun je meteen zien op welke vlakken deze dekking bieden:
Uiteraard is het heel goed mogelijk om zelf verschillende technieken aan te klikken en om een titel en omschrijving toe te voegen:
En uiteraard kunnen we deze matrices weer exporteren naar verschillende andere formaten zoals JSON, Excel en SVG’s (afbeeldingen). JSON files kunnen ook weer ingelezen worden in de navigator dus op die manier kunnen we een bestaande layout later ook weer bewerken wanneer er b.v. updates zijn. En ook kunnen we de matrix gemakkelijk aanpassen zodat we alleen te zien krijgen wat voor ons van toepassing is. Wanneer we b.v. geen “Date Historioan” en geen “Human-Machine Interfaces” in ons netwerk hebben dan is het ook niet nodig om daarvoor de specifieke technieken te zien in de matrix:
We kunnen eventueel de lay-out aanpassen om nog makkelijker inzicht te krijgen in onze huidige selectie. Bijvoorbeeld:
De Navigator maakt het ook gemakkelijk om comments toe te voegen of om kleuren aan te passen.
Het is ook prima mogelijk om nieuwe tabs / layers te maken. Laten we een nieuwe layer gaan maken met alle gebruikte technieken van de HEXANE APT group.
En we geven al deze technieken een hoge score van 1 op een schaal van 1-10 zodat deze rood zijn.
En dan gaan we nog een nieuwe APT toevoegen. We kiezen voor ALLANITE welke we een score van 5 geven (dus minder hoog) op een schaal van 1-10:
En laten we alle selecties op onze actuele defensieve maatregelen eens een scorerange geven van 0-10 met een score van 10 zodat deze groen worden:
Wanneer we nu een nieuwe tab maken kunnen we al deze layers combineren door te kiezen voor “Create Layer from other layers”.
En dan maken we en nieuwe view om al deze 3 layers te combineren.
Onze nieuwe view ziet er als volgt uit:
In dit overzicht zien we duidelijk welke gaten we hebben in onze beveiliging m.b.t. de HEXANE en ALLANITE APT groups. Wanneer we met de muis over een methode gaan zien we de score:
Deze score heeft een waarde van 6. Dit is dus een methode waar zowel Hexane als Allanite gebruik van maken EN we hebben hier geen security mechanisme voor in-place. De groene heeft een score van 16. Dit betekend ook dat Hexane als Allanite hier gebruik van maken maar dat hiervoor WEL beveiliging in-place is:
Op deze manier helpt de thread-intel van Mitre samen met het framework ervoor dat je je eigen omgeving of scenario kunt plotten op de matrix om zodoende een duidelijk overzicht te genereren.
Tot slot
Zoals je ziet is het Mitre Att&ck Framework ontzettend veelzijdig en beschik het over de juiste Intuïtieve tooling om er veel zinvolle informatie uit te halen. Alles begint met de juiste usecases. Wat wil je zelf uit het framework halen? Wanneer je even bezig bent zul je merken dat het allemaal heel gemakkelijk werkt en dat je snel thuis bent in de tooling en de opzet van het framework. Ga zelf eens aan de slag met het framework en ik weet zeker dat je er snel zinvolle (managements)rapportage uit kunt halen. Heel veel succes!
Jarno Baselier