
msticpy v3.0.2
Microsoft Threat Intelligence Sicherheitstools
MSTIC Jupyter und Python-Sicherheitstools
Microsoft Threat Intelligence Python-Sicherheitstools.
msticpy ist eine Bibliothek für InfoSec-Untersuchungen und -Jagd in Jupyter Notebooks. Sie bietet Funktionen zum:
- Abfragen von Protokolldaten aus mehreren Quellen
- Anreichern der Daten mit Bedrohungsinformationen, Geolokationen und Azure-Ressourcendaten
- Extrahieren von Aktivitätsindikatoren (IoA) aus Protokollen und Entpacken codierter Daten
- Durchführen anspruchsvoller Analysen wie Erkennung anomaler Sitzungen und Zeitreihenzerlegung
- Visualisieren von Daten mittels interaktiver Zeitleisten, Prozessbäume und mehrdimensionaler Morph-Diagramme
Es enthält auch einige zeitsparende Notebook-Werkzeuge wie Widgets zum Festlegen von Abfragezeitgrenzen, Auswählen und Anzeigen von Elementen aus Listen und Konfigurieren der Notebook-Umgebung.

Das msticpy-Paket wurde ursprünglich zur Unterstützung von Jupyter Notebooks für Microsoft Sentinel entwickelt. Obwohl Azure Sentinel immer noch ein großer Schwerpunkt unserer Arbeit ist, erweitern wir die Datenabfrage-/Erfassungskomponenten, um Protokolldaten aus anderen Quellen zu ziehen (derzeit werden Splunk, Microsoft Defender for Endpoint und Microsoft Graph unterstützt, aber wir arbeiten aktiv an der Unterstützung von Daten anderer SIEM-Plattformen). Die meisten Komponenten können auch mit Daten aus beliebigen Quellen verwendet werden. Pandas DataFrames werden als universelles Ein- und Ausgabeformat fast aller Komponenten verwendet. Es gibt auch einen Datenanbieter, der die Verarbeitung von Daten aus lokalen CSV-Dateien und eingelegten DataFrames erleichtert.
Das Paket adressiert drei zentrale Bedürfnisse für Sicherheitsermittler und -Jäger:
- Erfassen und Anreichern von Daten
- Analysieren von Daten
- Visualisieren von Daten
Wir freuen uns über Feedback, Fehlerberichte, Vorschläge für neue Funktionen und Beiträge.
Installation
Für die Kerninstallation:
pip install msticpy
oder für den neuesten Entwicklungsbuild
pip install git+https://github.com/microsoft/msticpy
Aktualisierung
Um msticpy auf die neueste öffentliche Nicht-Beta-Version zu aktualisieren, führen Sie Folgendes aus:
pip install --upgrade msticpy
Hinweis: Es ist empfehlenswert, Ihre msticpyconfig.yaml zu kopieren und außerhalb Ihres msticpy-Ordners auf der Festplatte zu speichern und in einer Umgebungsvariablen zu referenzieren. Dies verhindert, dass Sie Ihre Konfigurationen jedes Mal verlieren, wenn Sie Ihre msticpy-Installation aktualisieren.
Dokumentation
Die vollständige Dokumentation finden Sie auf ReadTheDocs
Beispiel-Notebooks für viele der Module befinden sich im docs/notebooks-Ordner und in begleitenden Notebooks.
Sie können auch die am Ende dieses Dokuments referenzierten Beispiel-Notebooks durchsuchen, um einige der Funktionen im Kontext zu sehen. Sie können einige der Paketfunktionen in dieser interaktiven Demo auf mybinder.org ausprobieren.
Protokolldatenerfassung
QueryProvider ist eine erweiterbare Abfragebibliothek, die auf Microsoft Sentinel/Log Analytics, Microsoft XDR, Splunk, OData und andere Protokolldatenquellen abzielt. Es bietet auch spezielle Unterstützung für Mordor-Datensätze und die Verwendung lokaler Daten.
Integrierte parametrisierte Abfragen ermöglichen das Ausführen komplexer Abfragen mit einem einzigen Funktionsaufruf. Fügen Sie Ihre eigenen Abfragen mit einem einfachen YAML-Schema hinzu.
Datenanreicherung
Threat Intelligence-Anbieter
Die TILookup-Klasse kann IoCs über mehrere TI-Anbieter hinweg nachschlagen. Integrierte Anbieter sind AlienVault OTX, IBM XForce, VirusTotal und Azure Sentinel.
Die Eingabe kann ein einzelner IoC-Beobachtungswert oder ein pandas DataFrame sein, das mehrere Beobachtungswerte enthält. Je nach Anbieter benötigen Sie möglicherweise ein Konto und einen API-Schlüssel. Einige Anbieter erzwingen auch Drosselung (insbesondere für kostenlose Stufen), was die Durchführung von Massenabfragen beeinträchtigen könnte.
TIProviders und TILookup-Nutzungsnotebook
Geolokationsdaten
Die GeoIP-Nachschlageklassen ermöglichen Ihnen, die Geolokationen von IP-Adressen mit entweder:
- GeoLiteLookup - Maxmind Geolite (siehe https://www.maxmind.com)
- IPStackLookup - IPStack (siehe https://ipstack.com)

GeoIP-Nachschlage und GeoIP-Notebook
Azure-Ressourcendaten, -Speicher und Azure Sentinel API
Das AzureData-Modul enthält Funktionen zum Anreichern von Daten zu Azure-Host-Details mit zusätzlichen Host-Details, die über die Azure-API verfügbar gemacht werden. Das AzureSentinel-Modul ermöglicht Ihnen das Abfragen von Incidents, das Abrufen von Detektor- und Jagdabfragen. AzureBlogStorage ermöglicht Ihnen das Lesen und Schreiben von Daten aus Blob-Speicher.
Azure Resource APIs, Azure Sentinel APIs, Azure Storage
Sicherheitsanalyse
Dieses Unterpaket enthält mehrere Module, die bei Sicherheitsuntersuchungen und -jagden hilfreich sind:
Erkennung anomaler Sequenzen
Erkennen Sie ungewöhnliche Ereignissequenzen in Ihren Office-, Active Directory- oder anderen Protokolldaten. Sie können Sitzungen extrahieren (z. B. Aktivitäten, die vom selben Konto initiiert wurden) und ungewöhnliche Aktivitätssequenzen identifizieren und visualisieren. Zum Beispiel das Erkennen eines Angreifers, der eine E-Mail-Weiterleitungsregel im Postfach einer Person einrichtet.
Anomale Sitzungen und Notebook für anomale Sequenzen
Zeitreihenanalyse
Zeitreihenanalyse ermöglicht es Ihnen, ungewöhnliche Muster in Ihren Protokolldaten unter Berücksichtigung normaler saisonaler Variationen zu identifizieren (z. B. das regelmäßige Auf und Ab von Ereignissen über Tagesstunden, Wochentage usw.). Sowohl Analyse als auch Visualisierung heben ungewöhnliche Verkehrsflüsse oder Ereignisaktivitäten für jeden Datensatz hervor.