Skip to content

v2.16.0 🦅

Compare
Choose a tag to compare
@release-drafter release-drafter released this 11 Jun 08:58
· 225 commits to refs/heads/main since this release
efaca57

2.16.0 [2024/06/11] "FIRSTCON24 Release"

New Features:

  • By default now, only rules that are applicable to loaded evtx files will be enabled. This is based on the Channel field in .evtx file and .yml rule. For example, if Security.evtx was being scanned, then only rules that have Channel: Security defined will be used against this file. In our benchmarks, this usually gives a speed benefit of around 20% when scanning single evtx files but can give up a 10x speed performance depending on the file. If you think there are multiple channels being used in a single .evtx file or you want to use rules that do not have the Channel field defined in order to scan all .evtx files regardless of the channel, then you can turn off this filtering with the -A, --enable-all-rules option in csv-timeline and json-timeline. (#1317) (@fukusuket)
  • By default now, .evtx files that have applicable rules will be loaded. So for example, if you are scanning a directory of various event logs but only enable a rule that is looking for Channel: Security then Hayabusa will ignore all non-security event logs. In our benchmarks, this gives a speed benefit of around 10% with normal scans and up to 60%+ performance increase when scanning with a single rule. If you want to load all .evtx files regardless of channel, then you can turn off this filtering with the -a, --scan-all-evtx-files option in csv-timeline and json-timeline. (#1318) (@fukusuket)
  • Note: Channel filtering only works with .evtx files and you will receive an error if you try to load event logs from a JSON file with -J, --json-input and also specify -A or -a. (#1345) (@fukusuket)
  • Support for Sigma Correlation's Event Count. (#1337) (@fukusuket)
  • Support for Sigma Correlation's Value Count. (#1338) (@fukusuket)

Enhancements:

  • You can now specify multiple directories with the -d, --directory option. (#1335) (@hitenkoku)
  • You can now analyze Splunk logs exported from the REST API. (#1083) (@hitenkoku)
  • You can now specify multiple groups with count. Ex: count() by IpAddress,SubStatus,LogonType >= 2 Also, the output has been updated. Ex: [condition] count(TargetUserName) by IpAddress > 3 in timeframe [result] count: 4 TargetUserName:tanaka/Administrator/adsyncadmin/suzuki IpAddress:- timeframe:5m -> Count: 4 ¦ TargetUserName: tanaka/Administrator/adsyncadmin/suzuki ¦ IpAddress: - (#1339) (@fukusuket)
  • Added support for specifying an optional Provider_Name field in field data mapping files (rules/config/data_mapping/*.yaml) as well as support for Data[x] notation. (#1350) (@fukusuket)
  • JSON output in count rules now separates field information. (#1342) (@fukusuket)
    • Before: "Details": "[condition] count() by IpAddress >= 5 in timeframe [result] count:3558 IpAddress:192.168.198.149 timeframe:5m"
    • After: "Details": { "Count": 3558, "IpAddress": "192.168.198.149" }

新機能:

  • デフォルトでは、.evtxファイルに適用可能なルールのみ有効になる。これは、.evtxファイルと.ymlルールのChannelフィールドに基づく。例えば、Security.evtxがスキャンされている場合、Channel: Securityが定義されているルールのみがこのファイルに対して使用される。ベンチマークでは、単一のevtxファイルをスキャンする場合、パフォーマンスが約20%向上される。1つの.evtxファイルで複数のチャネルが使用されている場合や、チャネルが定義されていないルールを使用して、チャネルに関係なくすべての.evtxファイルをスキャンしたい場合は、csv-timelinejson-timeline-A、--enable-all-rules オプションでこのフィルタリングをオフにすることができる。(#1317)(@fukusuket)
    • 現在のところ、Channelが定義されておらず、すべての.evtxファイルをスキャンすることを意図している検知ルールは以下の2つだけ:
  • デフォルトでは、適用可能なルールを持つ.evtxファイルのみ読み込む。たとえば、さまざまなイベントログのディレクトリをスキャンしている場合でも、 Channel: Security を探すルールのみを有効にした場合、HayabusaはSecurity以外のすべてのイベントログを無視します。ベンチマークでは、通常のスキャンで約10%、単一のルールでスキャンする場合は最大60%以上のパフォーマンス向上が得られる。チャネルに関係なくすべての.evtxファイルを読み込みたい場合は、csv-timelinejson-timeline-a、--scan-all-evtx-files オプションでこのフィルタリングをオフにすることができる。(#1318) (@fukusuket)
  • 注意: チャンネルフィルタリングは .evtx ファイルにのみ適用され、-J, --json-inputオプションを使用してイベントログをJSONファイルから読み込む際に-Aまたは-aを指定するとエラーが発生する。(#1345) (@fukusuket)
  • Sigma CorrelationのEvent Countに対応した。 (#1337) (@fukusuket)
  • Sigma CorrelationのValue Countに対応した。 (#1338) (@fukusuket)

改善:

  • -d, --directoryオプションで複数のフォルダを指定できるようにした。 (#1335) (@hitenkoku)
  • REST APIからエクスポートされたSplunkログを分析できるようになった。 (#1083) (@hitenkoku)
  • countで複数のグループを指定できるようにした。例: count() by IpAddress,SubStatus,LogonType >= 2。また、出力される結果を更新した。例: [condition] count(TargetUserName) by IpAddress > 3 in timeframe [result] count: 4 TargetUserName:tanaka/Administrator/adsyncadmin/suzuki IpAddress:- timeframe:5m -> Count: 4 ¦ TargetUserName: tanaka/Administrator/adsyncadmin/suzuki ¦ IpAddress: - (#1339) (@fukusuket)
  • フィールドデータマッピングファイル(rules/config/data_mapping/*.yaml)で任意のProvider_Nameフィールドを指定できるようにし、Data[x]表記に対応した。(#1350) (@fukusuket)
  • カウントルールのJSON出力で、フィールド情報が分離されるようになった。 (#1342) (@fukusuket)
    • 以前: "Details": "[condition] count() by IpAddress >= 5 in timeframe [result] count:3558 IpAddress:192.168.198.149 timeframe:5m"
    • 現在: "Details": { "Count": 3558, "IpAddress": "192.168.198.149" }