Malware-Analyse mit Capa: Schadcode-Fähigkeiten schnell und einfach einschätzen

Seite 2: Gut strukturiert dank MITRE ATT&CK und MBC

Inhaltsverzeichnis

Beim normalen Scan ohne zusätzliche Parameter gliedert Capa die Ergebnisse in mehrere Kästen mit je zwei Spalten. Der oberste Kasten benennt sogenannte "ATT&CK Tactics" mit ihnen zugeordneten "ATT&CK Techniques"; darunter folgt die Kombination "MBC Objective"/"MBC Behavior".

(Bild: Screenshot)

Das ATT&CK-Framework der MITRE Corporation ist ein in Security-Kreisen bekanntes und bewährtes Werkzeug zum einheitlichen Klassifizieren von Angriffsstrategien. So ordnet MITRE beispielweise der ATT&CK Tactic "Persistence" verschiedenste Techniken zu, die Angreifer beziehungsweise von ihnen genutzter Schadcode verwenden, um sich dauerhaft und möglichst unbemerkt auf einem System einzunisten. Diese Techniken sind durchnummeriert; so bezeichnet etwa T1547 den Missbrauch von Autostart-Funktionen, um Schadcode beim nächsten Reboot oder Login mitzustarten.

Die ATT&CK-Datenbank liefert als Online-Nachschlagewerk Hintergrundinformationen zu den von Capa benannten Techniken beziehungsweise Fähigkeiten. Und da Capa penibel der dabei verwendeten Nummerierung folgt, sind Verwechslungen ausgeschlossen.

MBC, der "Malware Behavior Catalog", ist ebenfalls ein Mitre-Projekt: Es soll die vorhandenen ATT&CK-Taktiken für den spezifischen Anwendungsfall der Malware-Analyse erweitern und verfeinern. Der bei GitHub abrufbare MBC mit eigenen, ebenfalls in Capa abgebildeten Nummerierungen verlinkt in seinen Einträgen entsprechend auch wieder auf verwandte ATT&CK-Informationen. Beim Querlesen entsteht somit ein sehr detailliertes Gesamtbild der von Capa entdeckten und aufgelisteten Fähigkeiten.

Capabilities und zugehörige Namespaces stehen am Ende der Ausgabe.

(Bild: Screenshot)

Im letzten Kasten einer Capa-Ausgabe findet man unter der Überschrift "Capabilities" kurze, textuelle Beschreibungen der entdeckten Malware-Fähigkeiten nebst ihrer Häufigkeit im Schadcode (z.B. "set file attributes (8 matches)"). Diese Beschreibung entspricht in der Capa-Regelsyntax dem eindeutigen Bezeichner ("name") der Regel, die den jeweiligen Suchtreffer im Code ausgelöst hat. Gleiches gilt für die zugeordneten "Namespaces" in der zweiten Kastenspalte: Die Entwickler nutzen diese zur hierarchischen Gruppierung der Regeln anhand der aufgespürten Fähigkeiten.

Was in der Theorie kompliziert klingt, erweist sich in der Praxis deutlich zugänglicher: Im separaten Capa Rules-Repository wird die Regelsyntax anhand zahlreicher Beispiele sehr ausführlich erklärt. Und da der Aufbau des Repositories der hierarchischen Namespace-Struktur entspricht, fällt es recht leicht, sich auf Anhieb zurechtzufinden.

Klar strukturiert und gut dokumentiert: Beispielregeln zeigen, wie's geht.

(Bild: github.com/mandiant/capa-rules)

An der Erweiterung der bereits mehrere hundert Regeln umfassenden Sammlung beteiligt sich eine recht aktive Community von Sicherheitsforschern. Das Mandiant-Team ermutigt ausdrücklich dazu, eigene interessante Erkenntnisse aus Malware-Analysen in Regeln umzusetzen und bestenfalls auch zum Repository beizutragen. Von dort aus fließen sie in künftige Capa-Versionen ein.

Sie beeinflussen aber auch, wie ein VirusTotal-Blogpost betont, die Informationen zu Malware-Verhalten und -Fähigkeiten in den Reports des Analyseservices. Denn seit Anfang 2023 sind Capas Scan-Ergebnisse Bestandteil der VT-Ergebnisse im "Behavior"-Reiter.

Wer eigene Regeln für den Hausgebrauch schreiben, aber nicht beitragen möchte, kann diese mit capa -r (Pfadangabe) auch einfach lokal speichern und nutzen.