Merge pull request #669 from Yamato-Security/TimesketchCompatibility
Timesketch compatibility
@@ -1,8 +1,14 @@
|
||||
# 変更点
|
||||
|
||||
## v1.5.1 [2022/08/20]
|
||||
|
||||
**改善:**
|
||||
|
||||
- TimesketchにインポートできるCSV形式を出力するプロファイルを追加して、v1.5.1を再リリースした。 (#668) (@YamatoSecurity)
|
||||
|
||||
## v1.5.1 [2022/08/19]
|
||||
|
||||
**Bug Fixes:**
|
||||
**バグ修正:**
|
||||
|
||||
- Critical, medium、lowレベルのアラートはカラーで出力されていなかった。 (#663) (@fukusuket)
|
||||
- `-f`で存在しないevtxファイルが指定された場合は、Hayabusaがクラッシュしていた。 (#664) (@fukusuket)
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
# Changes
|
||||
|
||||
## v1.5.1 [2022/08/20]
|
||||
|
||||
**Enhancements:**
|
||||
|
||||
- Re-released v1.5.1 with an updated output profile that is compatible with Timesketch. (#668) (@YamatoSecurity)
|
||||
|
||||
## v1.5.1 [2022/08/19]
|
||||
|
||||
**Bug Fixes:**
|
||||
|
||||
BIN
README-1.5.1.pdf
@@ -21,7 +21,7 @@
|
||||
|
||||
# Hayabusa について
|
||||
|
||||
Hayabusaは、日本の[Yamato Security](https://yamatosecurity.connpass.com/)グループによって作られた**Windowsイベントログのファストフォレンジックタイムライン生成**および**スレットハンティングツール**です。 Hayabusaは日本語で[「ハヤブサ」](https://en.wikipedia.org/wiki/Peregrine_falcon)を意味し、ハヤブサが世界で最も速く、狩猟(hunting)に優れ、とても訓練しやすい動物であることから選ばれました。[Rust](https://www.rust-lang.org/) で開発され、マルチスレッドに対応し、可能な限り高速に動作するよう配慮されています。[Sigma](https://github.com/SigmaHQ/Sigma)ルールをHayabusaルール形式に変換する[ツール](https://github.com/Yamato-Security/hayabusa-rules/tree/main/tools/sigmac)も提供しています。Hayabusaの検知ルールもSigmaと同様にYML形式であり、カスタマイズ性や拡張性に優れます。稼働中のシステムで実行してライブ調査することも、複数のシステムからログを収集してオフライン調査することも可能です。また、 [Velociraptor](https://docs.velociraptor.app/)と[Hayabusa artifact](https://docs.velociraptor.app/exchange/artifacts/pages/windows.eventlogs.hayabusa/)を用いることで企業向けの広範囲なスレットハンティングとインシデントレスポンスにも活用できます。出力は一つのCSVタイムラインにまとめられ、Excel、[Timeline Explorer](https://ericzimmerman.github.io/#!index.md)、[Elastic Stack](doc/ElasticStackImport/ElasticStackImport-Japanese.md)等で簡単に分析できるようになります。
|
||||
Hayabusaは、日本の[Yamato Security](https://yamatosecurity.connpass.com/)グループによって作られた**Windowsイベントログのファストフォレンジックタイムライン生成**および**スレットハンティングツール**です。 Hayabusaは日本語で[「ハヤブサ」](https://en.wikipedia.org/wiki/Peregrine_falcon)を意味し、ハヤブサが世界で最も速く、狩猟(hunting)に優れ、とても訓練しやすい動物であることから選ばれました。[Rust](https://www.rust-lang.org/) で開発され、マルチスレッドに対応し、可能な限り高速に動作するよう配慮されています。[Sigma](https://github.com/SigmaHQ/Sigma)ルールをHayabusaルール形式に変換する[ツール](https://github.com/Yamato-Security/hayabusa-rules/tree/main/tools/sigmac)も提供しています。Hayabusaの検知ルールもSigmaと同様にYML形式であり、カスタマイズ性や拡張性に優れます。稼働中のシステムで実行してライブ調査することも、複数のシステムからログを収集してオフライン調査することも可能です。また、 [Velociraptor](https://docs.velociraptor.app/)と[Hayabusa artifact](https://docs.velociraptor.app/exchange/artifacts/pages/windows.eventlogs.hayabusa/)を用いることで企業向けの広範囲なスレットハンティングとインシデントレスポンスにも活用できます。出力は一つのCSVタイムラインにまとめられ、Excel、[Timeline Explorer](https://ericzimmerman.github.io/#!index.md)、[Elastic Stack](doc/ElasticStackImport/ElasticStackImport-Japanese.md)、[Timesketch](https://timesketch.org/)等で簡単に分析できるようになります。
|
||||
|
||||
## 目次
|
||||
|
||||
@@ -39,6 +39,7 @@ Hayabusaは、日本の[Yamato Security](https://yamatosecurity.connpass.com/)
|
||||
- [Timeline Explorerでの解析](#timeline-explorerでの解析)
|
||||
- [Criticalアラートのフィルタリングとコンピュータごとのグルーピング](#criticalアラートのフィルタリングとコンピュータごとのグルーピング)
|
||||
- [Elastic Stackダッシュボードでの解析](#elastic-stackダッシュボードでの解析)
|
||||
- [Timesketchでの解析](#timesketchでの解析)
|
||||
- [タイムラインのサンプル結果](#タイムラインのサンプル結果)
|
||||
- [特徴&機能](#特徴機能)
|
||||
- [ダウンロード](#ダウンロード)
|
||||
@@ -69,6 +70,7 @@ Hayabusaは、日本の[Yamato Security](https://yamatosecurity.connpass.com/)
|
||||
- [3. `verbose`プロファイルの出力](#3-verboseプロファイルの出力)
|
||||
- [4. `verbose-all-field-info`プロファイルの出力](#4-verbose-all-field-infoプロファイルの出力)
|
||||
- [5. `verbose-details-and-all-field-info`プロファイルの出力](#5-verbose-details-and-all-field-infoプロファイルの出力)
|
||||
- [6. `timesketch`プロファイルの出力](#6-timesketchプロファイルの出力)
|
||||
- [プロファイルの比較](#プロファイルの比較)
|
||||
- [Profile Field Aliases](#profile-field-aliases)
|
||||
- [Levelの省略](#levelの省略)
|
||||
@@ -100,7 +102,7 @@ Hayabusaは、日本の[Yamato Security](https://yamatosecurity.connpass.com/)
|
||||
|
||||
### スレット(脅威)ハンティングと企業向けの広範囲なDFIR
|
||||
|
||||
Hayabusaには現在、2300以上のSigmaルールと130以上のHayabusa検知ルールがあり、定期的にルールが追加されています。
|
||||
Hayabusaには現在、2600以上のSigmaルールと130以上のHayabusa検知ルールがあり、定期的にルールが追加されています。
|
||||
[Velociraptor](https://docs.velociraptor.app/)の[Hayabusa artifact](https://docs.velociraptor.app/exchange/artifacts/pages/windows.eventlogs.hayabusa/)を用いることで企業向けの広範囲なスレットハンティングだけでなくDFIR(デジタルフォレンジックとインシデントレスポンス)にも無料で利用することが可能です。この2つのオープンソースを組み合わせることで、SIEMが設定されていない環境でも実質的に遡及してSIEMを再現することができます。具体的な方法は[Eric Capuano](https://twitter.com/eric_capuano)の[こちら](https://www.youtube.com/watch?v=Q1IoGX--814)の動画で学ぶことができます。
|
||||
最終的な目標はインシデントレスポンスや定期的なスレットハンティングのために、HayabusaエージェントをすべてのWindows端末にインストールして、中央サーバーにアラートを返す仕組みを作ることです。
|
||||
|
||||
@@ -149,6 +151,10 @@ Hayabusaは従来のWindowsイベントログ分析解析と比較して、分
|
||||
|
||||

|
||||
|
||||
## Timesketchでの解析
|
||||
|
||||

|
||||
|
||||
# タイムラインのサンプル結果
|
||||
|
||||
CSVのタイムライン結果のサンプルは[こちら](https://github.com/Yamato-Security/hayabusa/tree/main/sample-results)で確認できます。
|
||||
@@ -157,6 +163,8 @@ CSVのタイムラインをExcelやTimeline Explorerで分析する方法は[こ
|
||||
|
||||
CSVのタイムラインをElastic Stackにインポートする方法は[こちら](doc/ElasticStackImport/ElasticStackImport-Japanese.md)で紹介しています。
|
||||
|
||||
CSVのタイムラインをTimesketchにインポートする方法は[こちら](doc/TimesketchImport/TimesketchImport-Japanese.md)で紹介しています。
|
||||
|
||||
# 特徴&機能
|
||||
|
||||
* クロスプラットフォーム対応: Windows, Linux, macOS。
|
||||
@@ -417,84 +425,84 @@ TIME-FORMAT:
|
||||
|
||||
## 使用例
|
||||
|
||||
* 1つのWindowsイベントログファイルに対してHayabusaを実行します:
|
||||
* 1つのWindowsイベントログファイルに対してHayabusaを実行する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -f eventlog.evtx
|
||||
```
|
||||
|
||||
* `verbose`プロファイルで複数のWindowsイベントログファイルのあるsample-evtxディレクトリに対して、Hayabusaを実行します:
|
||||
* `verbose`プロファイルで複数のWindowsイベントログファイルのあるsample-evtxディレクトリに対して、Hayabusaを実行する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx -P verbose
|
||||
```
|
||||
|
||||
* 全てのフィールド情報も含めて1つのCSVファイルにエクスポートして、Excel、Timeline Explorer、Elastic Stack等でさらに分析することができます(注意: `verbose-details-and-all-field-info`プロファイルを使すると、出力するファイルのサイズがとても大きくなります!):
|
||||
* 全てのフィールド情報も含めて1つのCSVファイルにエクスポートして、Excel、Timeline Explorer、Elastic Stack等でさらに分析することができる(注意: `verbose-details-and-all-field-info`プロファイルを使すると、出力するファイルのサイズがとても大きくなる!):
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx -o results.csv -P `verbose-details-and-all-field-info`
|
||||
```
|
||||
|
||||
* Hayabusaルールのみを実行します(デフォルトでは`-r .\rules`にあるすべてのルールが利用されます):
|
||||
* Hayabusaルールのみを実行する(デフォルトでは`-r .\rules`にあるすべてのルールが利用される):
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx -r .\rules\hayabusa -o results.csv
|
||||
```
|
||||
|
||||
* Windowsでデフォルトで有効になっているログに対してのみ、Hayabusaルールを実行します:
|
||||
* Windowsでデフォルトで有効になっているログに対してのみ、Hayabusaルールを実行する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx -r .\rules\hayabusa\default -o results.csv
|
||||
```
|
||||
|
||||
* Sysmonログに対してのみHayabusaルールを実行します:
|
||||
* Sysmonログに対してのみHayabusaルールを実行する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx -r .\rules\hayabusa\sysmon -o results.csv
|
||||
```
|
||||
|
||||
* Sigmaルールのみを実行します:
|
||||
* Sigmaルールのみを実行する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx -r .\rules\sigma -o results.csv
|
||||
```
|
||||
|
||||
* 廃棄(deprecated)されたルール(`status`が`deprecated`になっているルール)とノイジールール(`.\rules\config\noisy_rules.txt`にルールIDが書かれているルール)を有効にします:
|
||||
* 廃棄(deprecated)されたルール(`status`が`deprecated`になっているルール)とノイジールール(`.\rules\config\noisy_rules.txt`にルールIDが書かれているルール)を有効にする:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx --enable-deprecated-rules --enable-noisy-rules -o results.csv
|
||||
```
|
||||
|
||||
* ログオン情報を分析するルールのみを実行し、UTCタイムゾーンで出力します:
|
||||
* ログオン情報を分析するルールのみを実行し、UTCタイムゾーンで出力する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx -r .\rules\hayabusa\default\events\Security\Logons -U -o results.csv
|
||||
```
|
||||
|
||||
* 起動中のWindows端末上で実行し(Administrator権限が必要)、アラート(悪意のある可能性のある動作)のみを検知します:
|
||||
* 起動中のWindows端末上で実行し(Administrator権限が必要)、アラート(悪意のある可能性のある動作)のみを検知する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -l -m low
|
||||
```
|
||||
|
||||
* criticalレベルのアラートからピボットキーワードの一覧を作成します(結果は結果毎に`keywords-Ip Address.txt`や`keywords-Users.txt`等に出力されます):
|
||||
* criticalレベルのアラートからピボットキーワードの一覧を作成する(結果は結果毎に`keywords-Ip Address.txt`や`keywords-Users.txt`等に出力される):
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -l -m critical -p -o keywords
|
||||
```
|
||||
|
||||
* イベントIDの統計情報を出力します:
|
||||
* イベントIDの統計情報を出力する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -f Security.evtx -s
|
||||
```
|
||||
* ログオンサマリを出力します:
|
||||
* ログオンサマリを出力する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -L -f Security.evtx -s
|
||||
```
|
||||
|
||||
* 詳細なメッセージを出力します(処理に時間がかかるファイル、パースエラー等を特定するのに便利):
|
||||
* 詳細なメッセージを出力する(処理に時間がかかるファイル、パースエラー等を特定するのに便利):
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d .\hayabusa-sample-evtx -v
|
||||
@@ -515,6 +523,12 @@ Checking target evtx FilePath: "./hayabusa-sample-evtx/YamatoSecurity/T1218.004_
|
||||
5 / 509 [=>------------------------------------------------------------------------------------------------------------------------------------------] 0.98 % 1s
|
||||
```
|
||||
|
||||
* 結果を[Timesketch](https://timesketch.org/)にインポートできるCSV形式に保存する:
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d ../hayabusa-sample-evtx --RFC-3339 -o timesketch-import.csv -P timesketch -U
|
||||
```
|
||||
|
||||
* エラーログの出力をさせないようにする:
|
||||
デフォルトでは、Hayabusaはエラーメッセージをエラーログに保存します。
|
||||
エラーメッセージを保存したくない場合は、`-Q`を追加してください。
|
||||
@@ -590,6 +604,12 @@ Hayabusaの`config/profiles.yaml`設定ファイルでは、5つのプロフ
|
||||
|
||||
`%Timestamp%`, `%Computer%`, `%Channel%`, `%EventID%`, `%Level%`, `%MitreTactics`, `%MitreTags%`, `%OtherTags%`, `%RecordID%`, `%RuleTitle%`, `%Details%`, `%RuleFile%`, `%EvtxFile%`, `%AllFieldInfo%`
|
||||
|
||||
### 6. `timesketch`プロファイルの出力
|
||||
|
||||
[Timesketch](https://timesketch.org/)にインポートできる`verbose`プロファイル。
|
||||
|
||||
`%Timestamp%`, `hayabusa`, `%RuleTitle%`, `%Computer%`, `%Channel%`, `%EventID%`, `%Level%`, `%MitreTactics`, `%MitreTags%`, `%OtherTags%`, `%RecordID%`, `%Details%`, `%RuleFile%`, `%EvtxFile%`
|
||||
|
||||
### プロファイルの比較
|
||||
|
||||
以下のベンチマークは、2018年製のマックブックプロ上で7.5GBのEVTXデータに対して実施されました。
|
||||
@@ -599,6 +619,7 @@ Hayabusaの`config/profiles.yaml`設定ファイルでは、5つのプロフ
|
||||
| minimal | 16分18秒 | 690 MB |
|
||||
| standard | 16分23秒 | 710 MB |
|
||||
| verbose | 17分 | 990 MB |
|
||||
| timesketch | 17分 | 1015 MB |
|
||||
| verbose-all-field-info | 16分50秒 | 1.6 GB |
|
||||
| verbose-details-and-all-field-info | 17分12秒 | 2.1 GB |
|
||||
|
||||
|
||||
25
README.md
@@ -20,7 +20,7 @@
|
||||
|
||||
# About Hayabusa
|
||||
|
||||
Hayabusa is a **Windows event log fast forensics timeline generator** and **threat hunting tool** created by the [Yamato Security](https://yamatosecurity.connpass.com/) group in Japan. Hayabusa means ["peregrine falcon"](https://en.wikipedia.org/wiki/Peregrine_falcon") in Japanese and was chosen as peregrine falcons are the fastest animal in the world, great at hunting and highly trainable. It is written in [Rust](https://www.rust-lang.org/) and supports multi-threading in order to be as fast as possible. We have provided a [tool](https://github.com/Yamato-Security/hayabusa-rules/tree/main/tools/sigmac) to convert [Sigma](https://github.com/SigmaHQ/sigma) rules into Hayabusa rule format. The Sigma-compatible Hayabusa detection rules are written in YML in order to be as easily customizable and extensible as possible. Hayabusa can be run either on single running systems for live analysis, by gathering logs from single or multiple systems for offline analysis, or by running the [Hayabusa artifact](https://docs.velociraptor.app/exchange/artifacts/pages/windows.eventlogs.hayabusa/) with [Velociraptor](https://docs.velociraptor.app/) for enterprise-wide threat hunting and incident response. The output will be consolidated into a single CSV timeline for easy analysis in Excel, [Timeline Explorer](https://ericzimmerman.github.io/#!index.md), or [Elastic Stack](doc/ElasticStackImport/ElasticStackImport-English.md).
|
||||
Hayabusa is a **Windows event log fast forensics timeline generator** and **threat hunting tool** created by the [Yamato Security](https://yamatosecurity.connpass.com/) group in Japan. Hayabusa means ["peregrine falcon"](https://en.wikipedia.org/wiki/Peregrine_falcon") in Japanese and was chosen as peregrine falcons are the fastest animal in the world, great at hunting and highly trainable. It is written in [Rust](https://www.rust-lang.org/) and supports multi-threading in order to be as fast as possible. We have provided a [tool](https://github.com/Yamato-Security/hayabusa-rules/tree/main/tools/sigmac) to convert [Sigma](https://github.com/SigmaHQ/sigma) rules into Hayabusa rule format. The Sigma-compatible Hayabusa detection rules are written in YML in order to be as easily customizable and extensible as possible. Hayabusa can be run either on single running systems for live analysis, by gathering logs from single or multiple systems for offline analysis, or by running the [Hayabusa artifact](https://docs.velociraptor.app/exchange/artifacts/pages/windows.eventlogs.hayabusa/) with [Velociraptor](https://docs.velociraptor.app/) for enterprise-wide threat hunting and incident response. The output will be consolidated into a single CSV timeline for easy analysis in Excel, [Timeline Explorer](https://ericzimmerman.github.io/#!index.md), [Elastic Stack](doc/ElasticStackImport/ElasticStackImport-English.md), [Timesketch](https://timesketch.org/), etc...
|
||||
|
||||
## Table of Contents
|
||||
|
||||
@@ -38,6 +38,7 @@ Hayabusa is a **Windows event log fast forensics timeline generator** and **thre
|
||||
- [Analysis in Timeline Explorer](#analysis-in-timeline-explorer)
|
||||
- [Critical Alert Filtering and Computer Grouping in Timeline Explorer](#critical-alert-filtering-and-computer-grouping-in-timeline-explorer)
|
||||
- [Analysis with the Elastic Stack Dashboard](#analysis-with-the-elastic-stack-dashboard)
|
||||
- [Analysis in Timesketch](#analysis-in-timesketch)
|
||||
- [Analyzing Sample Timeline Results](#analyzing-sample-timeline-results)
|
||||
- [Features](#features)
|
||||
- [Downloads](#downloads)
|
||||
@@ -67,6 +68,7 @@ Hayabusa is a **Windows event log fast forensics timeline generator** and **thre
|
||||
- [3. `verbose` profile output](#3-verbose-profile-output)
|
||||
- [4. `verbose-all-field-info` profile output](#4-verbose-all-field-info-profile-output)
|
||||
- [5. `verbose-details-and-all-field-info` profile output](#5-verbose-details-and-all-field-info-profile-output)
|
||||
- [6. `timesketch` profile output](#6-timesketch-profile-output)
|
||||
- [Profile Comparison](#profile-comparison)
|
||||
- [Profile Field Aliases](#profile-field-aliases)
|
||||
- [Level Abbrevations](#level-abbrevations)
|
||||
@@ -98,7 +100,7 @@ Hayabusa is a **Windows event log fast forensics timeline generator** and **thre
|
||||
|
||||
### Threat Hunting and Enterprise-wide DFIR
|
||||
|
||||
Hayabusa currently has over 2400 Sigma rules and over 130 Hayabusa built-in detection rules with more rules being added regularly. It can be used for enterprise-wide proactive threat hunting as well as DFIR (Digital Forensics and Incident Response) for free with [Velociraptor](https://docs.velociraptor.app/)'s [Hayabusa artifact](https://docs.velociraptor.app/exchange/artifacts/pages/windows.eventlogs.hayabusa/). By combining these two open-source tools, you can essentially retroactively reproduce a SIEM when there is no SIEM setup in the environment. You can learn about how to do this by watching [Eric Capuano](https://twitter.com/eric_capuano)'s Velociraptor walkthrough [here](https://www.youtube.com/watch?v=Q1IoGX--814).
|
||||
Hayabusa currently has over 2600 Sigma rules and over 130 Hayabusa built-in detection rules with more rules being added regularly. It can be used for enterprise-wide proactive threat hunting as well as DFIR (Digital Forensics and Incident Response) for free with [Velociraptor](https://docs.velociraptor.app/)'s [Hayabusa artifact](https://docs.velociraptor.app/exchange/artifacts/pages/windows.eventlogs.hayabusa/). By combining these two open-source tools, you can essentially retroactively reproduce a SIEM when there is no SIEM setup in the environment. You can learn about how to do this by watching [Eric Capuano](https://twitter.com/eric_capuano)'s Velociraptor walkthrough [here](https://www.youtube.com/watch?v=Q1IoGX--814).
|
||||
|
||||
### Fast Forensics Timeline Generation
|
||||
|
||||
@@ -141,6 +143,10 @@ Hayabusa hopes to let analysts get 80% of their work done in 20% of the time whe
|
||||
|
||||

|
||||
|
||||
## Analysis in Timesketch
|
||||
|
||||

|
||||
|
||||
# Analyzing Sample Timeline Results
|
||||
|
||||
You can check out a sample CSV timeline [here](https://github.com/Yamato-Security/hayabusa/tree/main/sample-results).
|
||||
@@ -149,6 +155,8 @@ You can learn how to analyze CSV timelines in Excel and Timeline Explorer [here]
|
||||
|
||||
You can learn how to import CSV files into Elastic Stack [here](doc/ElasticStackImport/ElasticStackImport-English.md).
|
||||
|
||||
You can learn how to import CSV files into Timesketch [here](doc/TimesketchImport/TimesketchImport-English.md).
|
||||
|
||||
# Features
|
||||
|
||||
* Cross-platform support: Windows, Linux, macOS.
|
||||
@@ -508,6 +516,12 @@ Checking target evtx FilePath: "./hayabusa-sample-evtx/YamatoSecurity/T1218.004_
|
||||
5 / 509 [=>------------------------------------------------------------------------------------------------------------------------------------------] 0.98 % 1s
|
||||
```
|
||||
|
||||
* Output to a CSV format compatible to import into [Timesketch](https://timesketch.org/):
|
||||
|
||||
```bash
|
||||
hayabusa-1.5.1-win-x64.exe -d ../hayabusa-sample-evtx --RFC-3339 -o timesketch-import.csv -P timesketch -U
|
||||
```
|
||||
|
||||
* Quiet error mode:
|
||||
By default, hayabusa will save error messages to error log files.
|
||||
If you do not want to save error messages, please add `-Q`.
|
||||
@@ -584,6 +598,12 @@ Instead of outputting the minimal `details` information, all field information i
|
||||
|
||||
`%Timestamp%`, `%Computer%`, `%Channel%`, `%EventID%`, `%Level%`, `%MitreTactics`, `%MitreTags%`, `%OtherTags%`, `%RecordID%`, `%RuleTitle%`, `%Details%`, `%RuleFile%`, `%EvtxFile%`, `%AllFieldInfo%`
|
||||
|
||||
### 6. `timesketch` profile output
|
||||
|
||||
The `verbose` profile that is compatible with importing into [Timesketch](https://timesketch.org/).
|
||||
|
||||
`%Timestamp%`, `hayabusa`, `%RuleTitle%`, `%Computer%`, `%Channel%`, `%EventID%`, `%Level%`, `%MitreTactics`, `%MitreTags%`, `%OtherTags%`, `%RecordID%`, `%Details%`, `%RuleFile%`, `%EvtxFile%`
|
||||
|
||||
### Profile Comparison
|
||||
|
||||
The following benchmarks were conducted on a 2018 MBP with 7.5GB of evtx data.
|
||||
@@ -593,6 +613,7 @@ The following benchmarks were conducted on a 2018 MBP with 7.5GB of evtx data.
|
||||
| minimal | 16 minutes 18 seconds | 690 MB |
|
||||
| standard | 16 minutes 23 seconds | 710 MB |
|
||||
| verbose | 17 minutes | 990 MB |
|
||||
| timesketch | 17 minutes | 1015 MB |
|
||||
| verbose-all-field-info | 16 minutes 50 seconds | 1.6 GB |
|
||||
| verbose-details-and-all-field-info | 17 minutes 12 seconds | 2.1 GB |
|
||||
|
||||
|
||||
@@ -66,4 +66,22 @@ verbose-details-and-all-field-info:
|
||||
Details: "%Details%"
|
||||
RuleFile: "%RuleFile%"
|
||||
EvtxFile: "%EvtxFile%"
|
||||
AllFieldInfo: "%RecordInformation%"
|
||||
|
||||
#Output that is compatible to import the CSV into Timesketch
|
||||
timesketch:
|
||||
datetime: "%Timestamp%"
|
||||
timestamp_desc: "hayabusa"
|
||||
message: "%RuleTitle%"
|
||||
Computer: "%Computer%"
|
||||
Channel: "%Channel%"
|
||||
EventID: "%EventID%"
|
||||
Level: "%Level%"
|
||||
MitreTactics: "%MitreTactics%"
|
||||
MitreTags: "%MitreTags%"
|
||||
OtherTags: "%OtherTags%"
|
||||
RecordID: "%RecordID%"
|
||||
Details: "%Details%"
|
||||
RuleFile: "%RuleFile%"
|
||||
EvtxFile: "%EvtxFile%"
|
||||
AllFieldInfo: "%RecordInformation%"
|
||||
BIN
doc/TimesketchImport/01-TimesketchLogin.png
Normal file
|
After Width: | Height: | Size: 69 KiB |
BIN
doc/TimesketchImport/02-NewInvestigation.png
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
doc/TimesketchImport/03-TimesketchTimeline.png
Normal file
|
After Width: | Height: | Size: 307 KiB |
BIN
doc/TimesketchImport/04-TimelineWithColumns.png
Normal file
|
After Width: | Height: | Size: 508 KiB |
BIN
doc/TimesketchImport/05-FieldInformation.png
Normal file
|
After Width: | Height: | Size: 298 KiB |
BIN
doc/TimesketchImport/06-MarkingEvents.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
80
doc/TimesketchImport/TimesketchImport-English.md
Normal file
@@ -0,0 +1,80 @@
|
||||
# Importing Hayabusa Results Into Timesketch
|
||||
|
||||
## About
|
||||
|
||||
"[Timesketch](https://timesketch.org/) is an open-source tool for collaborative forensic timeline analysis. Using sketches you and your collaborators can easily organize your timelines and analyze them all at the same time. Add meaning to your raw data with rich annotations, comments, tags and stars."
|
||||
|
||||
|
||||
## Installing
|
||||
|
||||
We recommend using the Ubuntu 22.04 LTS Server edition.
|
||||
You can download it [here](https://ubuntu.com/download/server).
|
||||
Choose the minimal install when setting it up.
|
||||
You won't have `ifconfig` available, so install it with `sudo apt install net-tools`.
|
||||
|
||||
After that, follow the install instructions [here](https://timesketch.org/guides/admin/install/):
|
||||
|
||||
``` bash
|
||||
sudo apt install docker-compose
|
||||
curl -s -O https://raw.githubusercontent.com/google/timesketch/master/contrib/deploy_timesketch.sh
|
||||
chmod 755 deploy_timesketch.sh
|
||||
cd /opt
|
||||
sudo ~/deploy_timesketch.sh
|
||||
cd timesketch
|
||||
sudo docker-compose up -d
|
||||
sudo docker-compose exec timesketch-web tsctl create-user <USERNAME>
|
||||
```
|
||||
|
||||
## Prepared VM
|
||||
|
||||
We have pre-built a demo VM that you can use against the 2022 DEF CON 30 [OpenSOC](https://opensoc.io/) DFIR Challenge evidence hosted by [Recon InfoSec](https://www.reconinfosec.com/). (The evidence has already been imported.)
|
||||
You can download it [here](https://www.dropbox.com/s/3be3s5c2r22ux2z/Prebuilt-Timesketch.ova?dl=0).
|
||||
You can find the other evidence for this challenge [here](https://docs.google.com/document/d/1XM4Gfdojt8fCn_9B8JKk9bcUTXZc0_hzWRUH4mEr7dw/mobilebasic) and questions [here](https://docs.google.com/spreadsheets/d/1vKn8BgABuJsqH5WhhS9ebIGTBG4aoP-StINRi18abo4/htmlview).
|
||||
|
||||
The username for the VM is `user` and password is `password`.
|
||||
|
||||
## Logging in
|
||||
|
||||
Find out the IP address with `ifconfig` and open it with a web browser.
|
||||
You will be redirected to a login page as shown below:
|
||||
|
||||

|
||||
|
||||
Log in with the docker-compose user credentials you used when adding a user.
|
||||
|
||||
## Create a new sketch
|
||||
|
||||
Click on `New investiation` and create a name for the new sketch:
|
||||
|
||||

|
||||
|
||||
## Upload timeline
|
||||
|
||||
Click `Upload timeline` and upload a CSV file that you created with the following command:
|
||||
|
||||
`hayabusa-1.5.1-win-x64.exe -d ../hayabusa-sample-evtx --RFC-3339 -o timesketch-import.csv -P timesketch -U`
|
||||
|
||||
You can add `-m low` if you just want alerts and not include Windows events.
|
||||
|
||||
## Analyzing results
|
||||
|
||||
You should get the following screen:
|
||||
|
||||

|
||||
|
||||
By default, only the UTC timestamp and alert rule title will be displayed so click `Customize columns` to add more fields.
|
||||
|
||||
> Warning: In the current version, there is a bug in that a new column will be blank. Please add another column (and then delete it afterwards if not needed) to display new columns.
|
||||
|
||||
You can also filter on fields in the searchbox, such as `Level: crit` to only show critical alerts.
|
||||
|
||||
|
||||

|
||||
|
||||
If you click on an event, you can see all of the field information:
|
||||
|
||||

|
||||
|
||||
With the three icons to the left of the alert title, you can star events of interest, search +- 5 minutes to see the context of an event and add labels.
|
||||
|
||||

|
||||
80
doc/TimesketchImport/TimesketchImport-Japanese.md
Normal file
@@ -0,0 +1,80 @@
|
||||
# TimesketchにHayabusa結果をインポートする方法
|
||||
|
||||
## Timesketchについて
|
||||
|
||||
"[Timesketch](https://timesketch.org/)は、フォレンジックタイムラインの共同解析のためのオープンソースツールです。スケッチを使うことで、あなたとあなたの共同作業者は、簡単にタイムラインを整理し、同時に分析することができます。リッチなアノテーション、コメント、タグ、スターで生データに意味を持たせることができます。"
|
||||
|
||||
|
||||
## インストール
|
||||
|
||||
Ubuntu 22.04 LTS Serverエディションの使用を推奨します。
|
||||
[こちら](https://ubuntu.com/download/server)からダウンロードできます。
|
||||
セットアップ時にミニマルインストールを選択してください。
|
||||
`ifconfig`はインストールされていないので、`sudo apt install net-tools`でインストールしてください。
|
||||
|
||||
その後、インストール手順[こちら](https://timesketch.org/guides/admin/install/)に従ってください:
|
||||
|
||||
``` bash
|
||||
sudo apt install docker-compose
|
||||
curl -s -O https://raw.githubusercontent.com/google/timesketch/master/contrib/deploy_timesketch.sh
|
||||
chmod 755 deploy_timesketch.sh
|
||||
cd /opt
|
||||
sudo ~/deploy_timesketch.sh
|
||||
cd timesketch
|
||||
sudo docker-compose up -d
|
||||
sudo docker-compose exec timesketch-web tsctl create-user <USERNAME>
|
||||
```
|
||||
|
||||
## 準備されたVM
|
||||
|
||||
[Recon InfoSec](https://www.reconinfosec.com/)主催の2022年のDEF CON 30 [OpenSOC](https://opensoc.io/) DFIR Challengeのエビデンスに対して使用できるデモ用VMを事前に構築しています。 (エビデンスは既にインポート済み。)
|
||||
[こちら](https://www.dropbox.com/s/3be3s5c2r22ux2z/Prebuilt-Timesketch.ova?dl=0)からダウンロードできます。
|
||||
このチャレンジの他のエビデンスは[こちら](https://docs.google.com/document/d/1XM4Gfdojt8fCn_9B8JKk9bcUTXZc0_hzWRUH4mEr7dw/mobilebasic)からダウンロードできます。
|
||||
問題は[こちら](https://docs.google.com/spreadsheets/d/1vKn8BgABuJsqH5WhhS9ebIGTBG4aoP-StINRi18abo4/htmlview)からダウンロードできます。
|
||||
|
||||
VMのユーザ名は`user`。パスワードは`password`。
|
||||
|
||||
## ログイン
|
||||
|
||||
`ifconfig`でIPアドレスを調べ、Webブラウザで開いてください。
|
||||
以下のようなログインページに移動されます:
|
||||
|
||||

|
||||
|
||||
docker-composeコマンドで作成したユーザの認証情報でログインしてください。
|
||||
|
||||
## 新しいsketch作成
|
||||
|
||||
`New investiation`をクリックし、新しいスケッチに名前を付けます。
|
||||
|
||||

|
||||
|
||||
## タイムラインのアップロード
|
||||
|
||||
`Upload timeline`をクリックし、以下のコマンドで作成したCSVファイルをアップロードします:
|
||||
|
||||
`hayabusa-1.5.1-win-x64.exe -d ../hayabusa-sample-evtx --RFC-3339 -o timesketch-import.csv -P timesketch -U`
|
||||
|
||||
Windowsのイベントを含めず、アラートだけでよい場合は、`-m low`を追加することができます。
|
||||
|
||||
## 結果の解析
|
||||
|
||||
以下のような画面が表示されるはずです:
|
||||
|
||||

|
||||
|
||||
デフォルトでは、UTCタイムスタンプとアラートルールのタイトル名のみが表示されますので、`Customize columns`をクリックし、他のフィールドを追加してください。
|
||||
|
||||
> 注意: 現在のバージョンでは、新しいカラムが空白になってしまうというバグがあります。新しいカラムを表示するには、別のカラムをまず追加してください(必要なければ後で削除してください。)
|
||||
|
||||
以下のように検索ボックスで`Level: crit`等を入力することで、クリティカルなアラートのみを表示させるようにフィルタリングできます。
|
||||
|
||||

|
||||
|
||||
イベントをクリックすると、すべてのフィールド情報を見ることができます:
|
||||
|
||||

|
||||
|
||||
アラートタイトルの左側にある3つのアイコンを使って、興味のあるイベントにスターをつけたり、イベントの文脈を見るために+-5分検索したり、ラベルを追加したりすることが可能です。
|
||||
|
||||

|
||||
BIN
screenshots/TimesketchAnalysis.png
Normal file
|
After Width: | Height: | Size: 402 KiB |