
Автоматизация и масштабирование инструментов цифровой криминалистики
Примечание: Turbinia больше не будет разрабатывать новые функции и находится в режиме поддержки. Пользователям рекомендуется обратить внимание на OpenRelik.
Turbinia — это фреймворк с открытым исходным кодом для развертывания, управления и выполнения распределенных криминалистических задач. Он предназначен для автоматизации запуска распространенных инструментов криминалистической обработки (например, Plaso, TSK, strings и т.д.), чтобы помочь в обработке доказательств в облаке, масштабировании обработки больших объемов доказательств и сокращении времени реагирования за счет параллельной обработки, где это возможно.
Turbinia состоит из различных компонентов: клиента, сервера и рабочих узлов. Эти компоненты могут быть запущены в облаке, на локальных машинах или в гибридном режиме. Клиент Turbinia отправляет запросы на обработку доказательств на сервер Turbinia. Сервер Turbinia создает логические задания из этих входящих пользовательских запросов, которые создают и планируют задачи криминалистической обработки для выполнения рабочими узлами. Обрабатываемые доказательства будут разделены заданиями, когда это возможно, и может быть создано множество задач для параллельной обработки доказательств. Один или несколько рабочих узлов непрерывно работают для обработки задач с сервера. Любые новые доказательства, созданные или обнаруженные в ходе выполнения задач, будут переданы обратно в Turbinia для дальнейшей обработки.
Связь от клиента к серверу в настоящее время осуществляется с помощью обмена сообщениями Kombu. Реализация рабочего узла использует Celery для планирования задач.
Основная документация по Turbinia доступна здесь. Вы также можете узнать больше об архитектуре и принципах работы здесь.
В настоящее время Turbinia находится в статусе альфа-версии.
Руководство по установке находится здесь.
Основные шаги для запуска после первоначальной установки и настройки:
turbiniactl serverturbiniactl api_server при использовании Celeryturbiniactl celeryworkerturbinia-client через pip install turbinia-clientturbinia-client submit ${evidencetype}turbinia-client statusturbinia-client можно использовать для взаимодействия с Turbinia через компонент сервера API. Вот базовое использование:
$ 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.
Ознакомьтесь с документацией turbinia-client на странице для получения подробного руководства пользователя.
Вы также можете взаимодействовать с Turbinia напрямую из Python, используя библиотеку API. Примеры приведены здесь.
Это не является официальным продуктом Google (экспериментальным или иным), это просто код, который принадлежит Google.