Turbinia는 분산 포렌식 워크로드를 배포, 관리 및 실행하기 위한 오픈 소스 프레임워크입니다. 일반적인 포렌식 처리 도구(예: Plaso, TSK, 문자열 등)의 실행을 자동화하여 클라우드에서 증거를 처리하고, 대량의 증거 처리를 확장하며, 가능한 경우 처리를 병렬화하여 응답 시간을 단축하기 위한 것입니다.
Turbinia는 클라이언트, 서버 및 작업자를 위한 다양한 구성 요소로 구성됩니다. 이러한 구성 요소는 클라우드, 로컬 컴퓨터 또는 둘의 하이브리드로 실행될 수 있습니다. Turbinia 클라이언트는 Turbinia 서버에 증거 처리를 요청합니다. Turbinia 서버는 이러한 수신 사용자 요청에서 논리적 작업을 생성하여 작업자가 실행할 포렌식 처리 작업을 생성하고 예약합니다. 처리할 증거물은 가능한 경우 작업별로 분할하고, 증거물을 병렬로 처리하기 위해 많은 작업을 생성할 수 있습니다. 하나 이상의 작업자가 지속적으로 실행되어 서버의 작업을 처리합니다. 작업을 통해 생성되거나 발견된 모든 새로운 증거는 추가 처리를 위해 Turbinia로 다시 공급됩니다.
클라이언트에서 서버로의 통신은 현재 Kombu 메시징을 통해 이루어집니다. 작업자 구현에서는 작업 예약을 위해 Celery를 사용합니다.
Turbinia의 주요 문서는 여기에서 찾을 수 있습니다. 여기에서 아키텍처와 작동 방식에 대해 자세히 알아볼 수도 있습니다.
Turbinia는 현재 알파 버전으로 출시되었습니다.
여기에 설치 가이드가 있습니다.
초기 설치 및 구성 후 작업을 실행하는 기본 단계는 다음과 같습니다.
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에 기여
새로운 과제 개발
FAQ
디버깅 및 일반적인 오류
Docker를 사용하여 작업 실행
이것은 공식 Google 제품(실험용이든 아니든)이 아니며 우연히 Google이 소유한 코드일 뿐입니다.