Turbinia 是一個用於部署、管理和運行分散式取證工作負載的開源框架。它旨在自動運行常見的取證處理工具(即 Plaso、TSK、字串等),以幫助處理雲端中的證據,擴展大量證據的處理,並透過盡可能並行處理來減少回應時間。
Turbinia 由客戶端、伺服器和工作人員的不同元件組成。這些元件可以在雲端、本機電腦上運行,或作為兩者的混合運行。 Turbinia 用戶端向 Turbinia 伺服器發出處理證據的請求。 Turbinia 伺服器會根據這些傳入的使用者請求建立邏輯作業,從而建立並安排工作人員執行的取證處理任務。如果可能的話,要處理的證據將按作業分開,並且可以創建許多任務來並行處理證據。一名或多名工作人員連續運行以處理來自伺服器的任務。任務創建或發現的任何新證據都將反饋到 Turbinia 進行進一步處理。
目前,從客戶端到伺服器的通訊是透過 Kombu 訊息傳遞完成的。 Worker 實作使用 Celery 進行任務排程。
Turbinia 的主要文件可以在這裡找到。您還可以在此處了解有關架構及其工作原理的更多資訊。
Turbinia 目前處於 Alpha 版本。
這裡有一個安裝指南。
初始安裝和配置後運行的基本步驟是:
使用turbiniactl server
指令啟動 Turbinia 伺服器元件
如果使用 Celery,請使用turbiniactl api_server
指令啟動 Turbinia API 伺服器元件
使用turbiniactl celeryworker
啟動一名或多名 Turbinia 工作人員
透過 pip install turbinia-client
安裝pip install turbinia-client
使用turbinia-client submit ${evidencetype}
從 turbinia 用戶端發送要處理的證據
使用turbinia-client status
檢查正在執行的任務的狀態
turbinia-client 可用於透過 API 伺服器元件與 Turbinia 進行交互,以下是基本用法:
$ 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
文件頁面以取得詳細的使用者指南。
您也可以使用 API 庫直接從 Python 與 Turbinia 互動。我們在這裡提供一些範例
主要文檔
安裝
它是如何運作的
操作細節
Turbinia 用戶端 CLI 工具
Turbinia API 伺服器
Turbinia Python API 函式庫
為 Turbinia 做出貢獻
開發新任務
常問問題
偵錯和常見錯誤
使用 Docker 執行作業
這不是谷歌的官方產品(實驗性的或其他的),它只是碰巧歸谷歌所有的程式碼。