Turbinia ist ein Open-Source-Framework für die Bereitstellung, Verwaltung und Ausführung verteilter forensischer Arbeitslasten. Ziel ist es, die Ausführung gängiger forensischer Verarbeitungstools (z. B. Plaso, TSK, Strings usw.) zu automatisieren, um die Verarbeitung von Beweismitteln in der Cloud zu unterstützen, die Verarbeitung großer Beweismengen zu skalieren und die Reaktionszeit durch Parallelisierung der Verarbeitung, wo möglich, zu verkürzen.
Turbinia besteht aus verschiedenen Komponenten für den Client, den Server und die Arbeiter. Diese Komponenten können in der Cloud, auf lokalen Maschinen oder als Hybrid aus beidem ausgeführt werden. Der Turbinia-Client sendet Anfragen zur Beweisverarbeitung an den Turbinia-Server. Der Turbinia-Server erstellt aus diesen eingehenden Benutzeranfragen logische Jobs, die forensische Verarbeitungsaufgaben erstellen und planen, die von den Arbeitern ausgeführt werden sollen. Die zu verarbeitenden Beweise werden nach Möglichkeit auf die Jobs aufgeteilt, und es können viele Aufgaben erstellt werden, um die Beweise parallel zu verarbeiten. Ein oder mehrere Worker laufen kontinuierlich, um Aufgaben vom Server zu verarbeiten. Alle neuen Beweise, die durch die Aufgaben erstellt oder entdeckt werden, werden zur weiteren Verarbeitung an Turbinia zurückgesendet.
Die Kommunikation vom Client zum Server erfolgt derzeit über Kombu-Messaging. Die Worker-Implementierung verwendet Celery für die Aufgabenplanung.
Die Hauptdokumentation für Turbinia finden Sie hier. Mehr über die Architektur und ihre Funktionsweise erfahren Sie hier.
Turbinia befindet sich derzeit in der Alpha-Version.
Eine Installationsanleitung gibt es hier.
Die grundlegenden Schritte, um nach der Erstinstallation und Konfiguration alles zum Laufen zu bringen, sind:
Starten Sie die Turbinia-Serverkomponente mit dem Befehl turbiniactl server
Starten Sie die Turbinia-API-Serverkomponente mit dem Befehl turbiniactl api_server
wenn Sie Celery verwenden
Starten Sie einen oder mehrere Turbinia-Arbeiter mit turbiniactl celeryworker
Installieren Sie turbinia-client
über pip install turbinia-client
Senden Sie zu verarbeitende Beweise vom Turbinia-Client mit turbinia-client submit ${evidencetype}
Überprüfen Sie den Status laufender Aufgaben mit turbinia-client status
turbinia-client kann für die Interaktion mit Turbinia über die API-Serverkomponente verwendet werden. Hier ist die grundlegende Verwendung:
$ turbinia-client -h Usage: turbinia-client [OPTIONS] COMMAND [ARGS]... Turbinia API command-line tool (turbinia-client). *** *** * * *** ****** * * ** * * ** ,* ******* * ******** * * * * * * %%%%%% %%%%%% %%%%%%%%%%%%%%% %%%%%% %%%%%%%%%%%%%%%%%%%%% %%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ** ******* %% %% *************** %% (%%%%%%%%%%%%%%%%%%% ***** ** %%%%% %%%%%%%%%%%%%%% %%%%%%%%%% %% ** *** %%% %% %% %%% %%%%, %%% %%% %%% %%%%% %%% %%% %% %%% %%% %%% (%% %%% %%% %%% %%% %% %%/ %% %%% %%% %%% %%%%%%%% %%% %%% %%% %%% %%% %%% %% %%% %%% %%% %%% %%% %%% %%%%% %%% %%%%% %% %%% %% %%% %%%%% This command-line tool interacts with Turbinia's API server. You can specify the API server location in ~/.turbinia_api_config.json Options: -c, --config_instance TEXT A Turbinia instance configuration name. [default: (dynamic)] -p, --config_path TEXT Path to the .turbinia_api_config.json file.. [default: (dynamic)] -h, --help Show this message and exit. Commands: config Get Turbinia configuration. evidence Get or upload Turbinia evidence. jobs Get a list of enabled Turbinia jobs. result Get Turbinia request or task results. status Get Turbinia request or task status. submit Submit new requests to the Turbinia API server.
Eine ausführliche Bedienungsanleitung finden Sie auf der Dokumentationsseite turbinia-client
.
Sie können auch direkt von Python aus mit Turbinia interagieren, indem Sie die API-Bibliothek verwenden. Wir stellen hier einige Beispiele vor
Hauptdokumentation
Installation
Wie es funktioniert
Betriebsdetails
Turbinia-Client-CLI-Tool
Turbinia API-Server
Turbinia Python API-Bibliothek
Beitrag zu Turbinia
Neue Aufgaben entwickeln
FAQ
Debugging und häufige Fehler
Verwenden von Docker zum Ausführen von Jobs
Dies ist kein offizielles Google-Produkt (experimentell oder anderweitig), es handelt sich lediglich um Code, der zufällig Eigentum von Google ist.