Met een database vol IoC's wil je uiteraard aan de slag om deze nuttig in te zetten voor detectie of blokkade. Het exporteren van IoC's kan via het MISP portaal (bijvoorbeeld per event of via de webclient: https://misp.surfcert.nl/servers/rest) of, wat meer gebruikelijk is, via de API.
1. Maak een aparte Auth key aan voor API access
Als je voor eigen doeleinden de API wilt gebruiken kun je uiteraard de AUTH key gebruiken die aan je account is gebonden. Voor doelsystemen is het echter beter om een aparte AUTH key aan te maken.
Klik vervolgens onderaan de pagina op 'Auth keys', en klik op 'Add Authentication key'.
Geef de auth key een juiste beschrijving voor welk doelsysteem het gebruikt gaat worden, en vink de 'Read only' aan als er enkel IoC's geexporteerd gaan worden.
'Allowed IP's' mag leeggelaten worden gezien dat op een ander niveau geregeld is binnen MISP. Zet eventueel een 'Expiration' date op de auth key.
Klik tenslotte op 'Submit' om de auth key te genereren.
2. Gebruik de REST cliënt en exporteer de gewenste set aan IoC's voor het doelsysteem
Afhankelijk voor welk doelsysteem je de IoC's wilt gaan gebruiken ga je vervolgens aan de slag met het bouwen van een query. Het MISP portaal heeft hiervoor een handige webclient waarmee je kan experimenteren: https://misp.surfcert.nl/servers/rest
Kies vervolgens rechts bovenin bij de 'Query Builder' voor het type: 'attributes' > 'restSearch'.
Er verschijnt nu een template met alle mogelijke opties die gebruikt kunnen worden in de query. Om daadwerkelijk de resultaten te zien van de query zet dan een vinkje bij de "Show result" optie.
Bij deze screenshot zijn alleen een paar opties gebruikt om de query te testen: niet ouder dan 30 dagen en de IDS flag moet aan staan.
Wanneer je de query uitvoert zie je de output en hoe de API call uitgevoerd kan worden met CURL of met PyMISP.
3. Voorbeelden van het exporteren van IoC's voor doelsystemen
Een export kan je simpel houden of heel gedetailleerd filteren op verschillende attributen. Om simpel te beginnen kan men met een paar attributen al aan de slag, bijv:
Om specifieker te filteren op bepaalde type IoC's kan men o.a. deze attributen gebruiken:
Tags
Voor elk event is het de bedoeling dat er in ieder geval een TLP markering wordt opgenomen in een TAG. Alle NCSC events hebben ook een specifieke TAG die het NCSC bepaald. Deze kunnen gebruikt worden om een meer specifieke query te bouwen:
"tags": "optional",
tag
Omschrijving
ncsc-nl-ndn:feed=\"exceptional\"
Actuele dreiging met potentieel hoge impact
ncsc-nl-ndn:feed=\"selected\"
Mogelijk getarget op nederland of specifieke sectoren, dreigingen met bijzondere interesse vanuit het NCSC
ncsc-nl-ndn:feed=\"generic\"
Meer generieke dreigingsinformatie
tlp:amber
TLP Amber
tlp:green
TLP Green
tlp:white
TLP White
Threat level
Aan elk event wordt een 'threat level' toegekend, de mogelijke opties om hier op te filteren is als volgt: