SplunkLive : Retour sur le Boss of the SOC

Temps de lecture : 5 minutes

En marge de son SplunkLive! annuel qui se tenait à la Maison de la Mutualité mardi 27 mars dernier, Splunk proposait, pour la première fois à Paris, son épreuve Boss of the SOC lancée à l’occasion de Splunk .conf2016.

Le concept est simple, faire s’affronter une dizaine d’équipes de 4 personnes autour de scénarios d’attaques réelles à investiguer via Splunk.

Chaque participant disposait pour cela d’une instance Splunk AWS pourvue d’un jeu de données comprenant les traces des attaques ainsi que le bruit de fond à travers une vingtaine de types de données – évènements Windows, Sysmon, et modifications du registre pour les endpoints, logs de firewalls réseau et applicatif, de sondes de détection/prévention d’intrusion, de scanners de vulnérabilités et captures de flux pour la partie infrastructure.

Cette masse d’informations cachait deux infections, l’une par trojan et l’autre par ransomware, dont il fallait déceler les traces au détour d’une trentaine de questions mêlant recherches Splunk et OSINT (Open Source Intelligence).

À la manière d’un CTF Blue Team, les réponses, soumises via une App Splunk dédiée, pouvaient rapporter un bonus de points variable mais aussi être sanctionnées d’une pénalité cela afin d’éviter tout passage en force. Il était aussi possible d’acquérir des indices en cas de blocage sur une question.

Pour pimenter la session, la progression des équipes est Splunkée et projetée en temps réel. Nous suivons donc le scenario mis en place, et sommes amenés à résoudre les problèmes posés en nous inspirant de certaines ressources pratiques.

L’App Splunk Security Essentials for Ransomware rassemble une dizaine de cas d’utilisation prêts à l’emploi pour détecter les effets d’une infection par ransomware et suivre la progression des actions menées pour en réduire les risques.

L’un de ces cas d’usage consiste à se baser sur les données recueillies par un scanner de vulnérabilités pour identifier les serveurs vulnérables à la faille de Windows SMB Server exploitée.

index="botsv1" sourcetype="nessus:scan" hotsname="192.168.250.20" signature="*SMB*"
| bukcet _time span=1d
| stats values(signature) by _time, netbios-name, hostname

Les ransomwares ont la particularité de placer sur chaque système infecté des instructions permettant à la victime de payer la rançon dans le but de déchiffrer les fichiers touchés. Les noms de ces fichiers diffèrent d’un ransomware à l’autre mais l’ensemble a été regroupé dans une table de correspondance dans un cas d’usage dédié permettant là aussi de remonter les traces de l’infection.

index="botsv1" sourcetype="stream:smb" [| inputlookup ransomware_notes_lookup | rename ransomware_notes as filename | eval filename="*" . filename | table filename]
| bucket _time span=1d
| stats values(filename) as filesWritten by _time src

Pour identifier les fichiers chiffrés par le ransomware, nous pouvions nous plonger dans les données  Windows Sysmon qui fournissent, entres autres informations clés, l’horodatage de la création des fichiers. En nous appuyant sur l’article Detecting Ransomware Attacks with Splunk, nous pouvions construire une recherche visant à trouver les fichiers créés en masse dans un intervalle de temps très court.

index="botsv1" sourcetype="xmlwineventlog:microsoft-windows-sysmon/operational" EventDescription="File Create Time"
| streamstats time_window=1m count(EventDescription) AS "new_files"
| search new_files>10
| timechart count

Ces quelques exemples permettent de mettre en lumière l’un des intérêts majeurs de l’épreuve qui est de manipuler différents types de données sur des investigations réalistes et, chemin faisant, de repérer parmi ces sources celles qui sont indispensables sur toute plateforme Splunk pour bénéficier de la visibilité recherchée.

Les créateurs de l’épreuve ont par ailleurs eu l’excellente idée de proposer leur jeu de données en libre accès ce qui peut faciliter la mise en place d’alertes sur son SIEM.

C’est par exemple le cas pour Florian Roth qui utilise ce set de données pour tester des règles de détection converties d’un format ouvert en recherches Splunk.

L’alerte ci-dessous permet par exemple de détecter le lancement de l’invite de commande depuis Microsoft Office.

index="botsv1" sourcetype="*wineventlog:microsoft-windows-sysmon/operational" (EventCode="1" (ParentImage="*\\WINWORD.EXE" OR ParentImage="*\\EXCEL.EXE) Image="*\\cmd.exe")
| table _time host user Image ParentImage CommandLine

Si vous souhaitez vous mesurer à l’épreuve, il vous faudra probablement attendre le prochain SplunkLive! mais il est aussi possible d’organiser l’événement au sein de votre entreprise. Pour cela, n’hésitez pas à nous contacter.

En attendant, une nouvelle version de l’épreuve semble être en préparation !

Commentaires :

A lire également sur le sujet :