Releases: Yamato-Security/hayabusa
Releases · Yamato-Security/hayabusa
Release list
v3.1.1 🦅
3.1.1 [2025/03/12] - Laksa Release
Enhancements:
- Updated Rust edition to 2024. (@fukusuket)
- Added OS information to the
computer-metricscommand. (#1629) (@fukusuket)
Bug Fixes:
- The number of
expandrules was not being properly displayed on the terminal. (#1598) (@fukusuket) - Rules without the
statusfield defined would be loaded even if you specifiedstatus: test, stable, etc... in the Scan Wizard. (#1602) (@fukusuket) expandrules were being loaded without configuration. (#1606) (@fukusuket)- Detecting double Base64 encoding was not working properly with the
extract-base64command. (#1607) (@fukusuket) - The terminal text would sometimes turn red after an error message. (#1610) (@fukusuket)
- The progress bar would not display when
-doption was used but-owas not used for some commands. (#1617) (@fukusuket) - The
pivot-keywords-listcommand was broken. (#1619) (@fukusuket) - Field data mapping was not working when
detailswas not defined. (#1614) (@fukusuket) - When the
detailsfield was not set, duplicate data was outputted to both theDetailscolumn andExtraFieldInfocolumn. Now it is just outputted to theDetailscolumn. (#1623) (@fukusuket)
改善:
- Rustエディションを2024に更新した。(@fukusuket)
computer-metricsコマンドにOS情報を追加した。 (#1629) (@fukusuket)
バグ修正:
expandルールの数がターミナルに正しく表示されていなかった。 (#1598) (@fukusuket)statusフィールドが定義されていないルールは、スキャンウィザードでstatus: test, stableなどを指定しても読み込まれた。(#1602) (@fukusuket)expandルールが設定なしでロードされていた。 (#1606) (@fukusuket)extract-base64コマンドでダブルBase64エンコーディングの検出が正しく動作していなかった。 (#1607) (@fukusuket)- エラーメッセージの後、端末の文字が赤くなることがあった。 (#1610) (@fukusuket)
- いくつかのコマンドで
-dオプションが使用され、-oオプションが使用されなかった場合、プログレスバーが表示されなかった。 (#1617) (@fukusuket) pivot-keywords-listコマンドが壊れていた。(#1619) (@fukusuket)detailsが未定義の場合、フィールドデータマッピングが正常に機能しなかった。 (#1614) (@fukusuket)detailsフィールドが設定されていない場合、Details列とExtraFieldInfo列の両方に重複したデータが出力されていた。現在はDetails列だけに出力される。 (#1623) (@fukusuket)
v3.1.0 🦅
3.1.0 [2025/2/22] - Ninja Day Release
New Features:
-X, --remove-duplicate-detectionsoption toeid-metricsandlogon-summarycommands. (#1552) (@fukusuket)- New "Emergency Alerts" and severity level adjustment based on critical systems. Add a list of the computer names of critical systems (Ex: Domain Controllers, File Servers, etc...) to
config/critical_systems.txtand all of the alerts abovelowwill be adjusted one higher. That is,lowwill becomemedium,mediumwill becomehigh, etc...criticalalerts will become newemergencyalerts. (#1551) (@fukusuket) - New
config-critical-systemscommand to automatically find domain controllers and file servers to add to the./config/critical_systems.txtfile. (#1570) (@fukusuket) - Added a
-S, --tab-separatoroption in thecsv-timeline,searchandlog-metricscommands to separate field information by tabs. (#1587) (@fukusuket)
Enhancements:
- Added
--timeline-start/--timeline-endoptions to thesearchcommand. (#1543) (@fukuseket) - Significantly improved the speed of the
logon-summarycommand with channel filtering. (#1544) (@fukusuket) - The
extract-base64command now also works onPowerShell Classic EID 400events. (#1549) (@fukusuket) - The
extract-base64command now also scans PowerShell Core logs as well. (#1558) (@fukusuket) - The
extract-base64command now also scansSystem 7045(Service Creation) events. (#1583) (@fukusuket) searchcommand uses much less memory and is faster as it does not sort results by default now. You can sort results like before with the new-s, --sortoption. (#1475) (@hach1yon)
Bug Fixes:
- An unneeded file was being created with
logon-summaryandpivot-keywords-listcommands. (#1553) (@fukusuket) - MITRE tactics JSON output was not consistent for a few rules. (#1573) (@fukusuket)
- Rule authors would not be outputted to the HTML report in version
v3.0.x. (#1571) (@fukusuket) - The rule file name for correlation rules would not be outputted in the JSON timeline when the live response encoded rules were used. (#1572) (@fukusuket)
- The
level-tuningcommand was not working. (#1584) (@fukusuket)
Other:
- The
-s, --sort-eventsoptions have been renamed to-s, --sort. (@YamatoSecurity) - Added the
RuleIDto all profiles exceptminimal. (@YamatoSecurity) - Code refactoring: use default trait to reduce unnecessary initialization codes in StoredStatic. (#1588) (@fukusuket)
新機能:
eid-metricsとlogon-summaryコマンドに-X, --remove-duplicate-detectionsオプションを追加した。 (#1552) (@fukusuket)- 新しい「緊急アラート 」と重要なシステムに基づく重大度レベルの調整。
config/critical_systems.txtに重要なシステム(例: ドメインコントローラ、ファイルサーバ等々)のコンピュータ名のリストを追加すると、low以上のすべてのアラートが1つ高く調整される。つまり、lowはmediumに、mediumはhighに、criticalアラートは新しいemergencyアラートになる。 (#1551) (@fukusuket) ./config/critical_systems.txtファイルに追加するドメインコントローラーとファイルサーバーを自動的に見つけるconfig-critical-systemsコマンドを追加した。 (#1570) (@fukusuket)csv-timeline、search、log-metricsコマンドに、フィールド情報をタブで区切る-S, --tab-separatorオプションを追加した。 (#1587) (@fukusuket)
改善:
searchコマンドに--timeline-start/--timeline-endオプションを追加した。 (#1543) (@fukuseket)- チャンネルフィルタリングで
logon-summaryコマンドの速度を大幅に改善した。 (#1544) (@fukusuket) extract-base64コマンドがPowerShell Classic EID 400イベントも対象するようになった。 (#1549) (@fukusuket)extract-base64コマンドがPowerShell Coreログにも対応した。 (#1558) (@fukusuket)extract-base64コマンドがSystem 7045(サービス作成)イベントにも対応した。 (#1583) (@fukusuket)searchコマンドは、デフォルトでは結果をソートしないので、メモリ使用量が大幅に減り、より高速になった。新しい-s, --sortオプションを使えば、以前と同じように結果をソートできる。(#1475) (@hach1yon)
バグ修正:
logon-summaryとpivot-keywords-listコマンドが不要なファイルを出力していた。 (#1553) (@fukusuket)- JSON出力では、いくつかのルールでMITRE戦術の一貫性がなかった。 (#1573) (@fukusuket)
- バージョンv3.0.x`ではルール作者情報がHTMLレポートに出力されていなかった。 (#1571) (@fukusuket)
- ライブ調査用のエンコードされたルールが使用されている場合、相関ルールのルールファイル名がJSONタイムラインに出力されていなかった。 (#1572) (@fukusuket)
level-tuningコマンドが正しく動いていなかった。 (#1584) (@fukusuket)
その他:
-s, --sort-eventsオプションが-s, --sortに名前変更された。 (@YamatoSecurity)minimal以外のプロファイルにRuleIDを追加した。 (@YamatoSecurity)- コードのリファクタリング: StoredStaticの不要な初期化コードを減らすためにデフォルトのtraitを使用することにした。 (#1588) (@fukusuket)
v3.0.1 🦅
Note: Re-uploaded packages with the latest rules on December 31st, 2024.
3.0.1 [2024/12/29] - 3rd Year Anniversary Release
Bug Fixes:
- Hayabusa would fail in rule parse checking on the backend with
expandrules. (#1537) (@fukusuket)
バグ修正:
- Hayabusaはバックエンドで
expandルールのパースチェックに失敗していた。 (#1537) (@fukusuket)
v3.0.0 🦅
3.0.0 [2024/12/25] - 3rd Year Anniversary Release
New Features:
- New
extract-base64command to extract and decode base64 strings from events. (#1512) (@fukusuket) - New
expand-listcommand to output placeholder names used for rules with theexpandmodifier. (#1513) (@fukuseket) - Support for
expandfield modifiers. (#1434) (@fukusuket) - Support for Temporal Proximity (
temporal) correlation rules. (#1446) (@fukusuket) - Support for Temporal Ordered Proximity (
temporal_ordered) correlation rules. (#1447) (@fukusuket)
Enhancements:
- Log file size added to
log-metricscommand. (#1528) (@fukusuket)
Bug Fixes:
- Sorting with
csv-timelinewas not done perfectly when record IDs were outputted. (#1519) (@fukusuket) -J, --JSON-inputwould only accept.jsonfiles, not.jsonlfiles so now both are supported. (#1530) (@fukusuket)
新機能:
- Base64文字列を抽出して、デコードする
extract-base64コマンドを追加した。(#1512) (@fukusuket) expand修飾子が入っているルールで使用されるプレースホルダー名を出力するexpand-listコマンドを追加した。(#1513) (@fukuseket)expandフィールド修飾子に対応した。 (#1434) (@fukusuket)- Temporal Proximity(
temporal)の相関ルールに対応した。 (#1446) (@fukusuket) - Temporal Ordered Proximity (
temporal_ordered) の相関ルールに対応した。 (#1447) (@fukusuket)
改善:
log-metricsコマンドにファイルサイズを追加した。 (#1528) (@fukusuket)
バグ修正:
- レコードIDが出力されるとき、
csv-timelineによるソートが完璧に行われなかった。 (#1519) (@fukusuket) J, --JSON-inputは、.jsonファイルしか対応していなかったので、.jsonlファイルにも対応した。 (#1530) (@fukusuket)
v2.19.0 🦅
2.19.0 [2024/11/26] "Every Day Is A Good Day Release"
New Features:
- Support for the
gt,gte,lt,ltefield modifiers. (#1433) (@fukusuket) - New
log-metricscommand to get information about.evtxfiles. (computer names, event count, first timestamp, last timestamp, channels, providers) (#1474) (@fukusuket) - New
-b, --disable-abbreviationsoptions for the following commands to disableChannelandProviderabbreviations for when you want to check the original values. (#1485) (@fukusuket)csv-timelinejson-timelineeid-metricslog-metricssearch
- Support for
utf16/utf16be/utf16le/widefield modifiers to be used with thebase64offset|containsfield modifier. (#1432) (@fukusuket)utf16|base64offset|containsutf16be|base64offset|containsutf16le|base64offset|containswide|base64offset|contains
Enhancements:
- Updated the
yaml-rustcrate toyaml-rust2. (#461) (@YamatoSecurity) windashcharacters are now being dynamically read fromrules/config/windash_characters.txt. (#1440) (@fukusuket)logon-summarycommand now displays logon information from RDP events. Note: Hayabusa will output more detailed information when saving to a file. (#1468) (@fukusuket)- The colors were updated to make it easier to read. (#1480) (@YamatoSecurity)
- Added start and finish messages of the day. (#1492) (@fukusuket)
- New color scheme added to output. (#1491) (@fukusuket)
- File size is now displayed next to the file name under the progress bar. (#1471) (@fukusuket)
Bug Fixes:
logon-summarycommand would sometimes crash with corrupted logs. (#1477) (@fukusuket)- Some results would be displayed after the progress bar when outputting results to the terminal with
csv-timelineandjson-timeline. (#1459) (@fukusuket) - The detailed field value results in aggregation rule alerts were not sorted so
csv-timelineandjson-timelinewould not output completely exact results each time. (#1466) (@fukusuket) - Updated
hayabusa-evtxcrate to0.8.12. (@YamatoSecurity) logon-summaryandeid-metricswould sometimes output multiple progress bars. #1479 (@fukusuket)- The progress bar has been removed when outputting to terminal and not sorting events as is unneeded. #1508 (@fukusuket)
Other:
- The
--timeline-offsetoption has been renamed to--time-offset. (#1490) (@YamatoSecurity)
新機能:
gt、gte、lt、lteのフィールドモディファイアに対応した。(#1433) (@fukusuket)- 新しい
log-metricsコマンドで.evtxファイルの情報を取得できるようになった。(コンピュータ名、イベント数、最初のタイムスタンプ、最後のタイムスタンプ、チャネル、プロバイダ) (#1474) (@fukusuket) - 以下のコマンドに
ChannelとProviderの略称を無効にする-b, --disable-abbreviationsオプションを追加した。元の値を確認したい時に便利。 (#1485) (@fukusuket)csv-timelinejson-timelineeid-metricslog-metricssearch
utf16/utf16be/utf16le/wideフィールドモディファイアがbase64offset|containsフィールドモディファイアと一緒に使えるようになった。 (#1432) (@fukusuket)utf16|base64offset|containsutf16be|base64offset|containsutf16le|base64offset|containswide|base64offset|contains
改善:
yaml-rustクレートをyaml-rust2に更新した。(#461) (@YamatoSecurity)windash文字が、rules/config/windash_characters.txtから動的に読み込まれるようになった。(#1440) (@fukusuket)logon-summaryコマンドがRDPイベントからのログオン情報を表示するようになった。注意: ファイルに保存する場合、Hayabusaはより詳細な情報を出力する。(#1468) (@fukusuket)- 見やすくなるように色を更新した。 (#1480) (@YamatoSecurity)
- 実行開始と終了のメッセージを出力するようにした。 (#1492) (@fukusuket)
- 出力に新しい配色を追加した。 (#1491) (@fukusuket)
- ファイルサイズがプログレスバーの下のファイル名の横に表示されるようになった。 (#1471) (@fukusuket)
バグ修正:
- logon-summary`コマンドが破損したログでクラッシュすることがあった。(#1477) (@fukusuket)
csv-timelineとjson-timelineコマンドで、結果をターミナルに出力すると、プログレスバーの後にいくつかの結果が表示されていた。(#1459) (@fukusuket)- 集計ルールのアラートの詳細フィールド値の結果がソートされていないため、
csv-timelineとjson-timelineは、毎回完全に正確な結果を出力しなかった。 (#1466) (@fukusuket) hayabusa-evtxクレートをバージョン0.8.12に更新した。(@YamatoSecurity)logon-summaryとeid-metricsが複数のプログレスバーを出力することがあった。 #1479 (@fukusuket)- ターミナルに出力し、イベントをソートしない場合、プログレスバーは不要なため削除された。 #1508 (@fukusuket)
その他:
timeline-offsetオプションは、--time-offsetに名前変更された。 (#1490) (@YamatoSecurity)
v2.18.0 🦅
2.18.0 [2024/10/23] "Sector Release"
New Features:
- Support for the
fieldrefmodifier (alias to theequalsfieldmodifier). (#1409) (@hitenkoku) - The
fieldref|endswithmodifier was created as an alias toendswithfieldto replace it in the future. (#1437) (@fukusuket) - Support for
fieldref|startswithandfieldref|containsmodifiers. (#1439) (@fukusuket) - Support for XOR encoded rules to minimize files put on the system as well as bypass anti-virus products that give false positives on rules. (#1419) (@fukusuket)
- We will include packages in the Releases page that are already configured to use this. If you wanted to manually configure this though, download encoded_rules.yml and place it in the Hayabusa's root folder. This file is created from the rules in the hayabusa-rules repository and is automatically updated anytime there is a rule update. Delete all of the files inside the
rulesfolder except for theconfigdirectory as those files are not yet contained in a single file. - Note: The report generated by the
-Hoption cannot create a link to the rule (only the rule name is outputted.) rules/configconfig files are now loaded from a single file rules_config_files.txt to reduce the number of files needed to be stored on a target system for live response. (#1420) (@fukusuket)
- We will include packages in the Releases page that are already configured to use this. If you wanted to manually configure this though, download encoded_rules.yml and place it in the Hayabusa's root folder. This file is created from the rules in the hayabusa-rules repository and is automatically updated anytime there is a rule update. Delete all of the files inside the
Bug Fixes:
- Unneeded line breaks when using
-oin thesearchcommand. (#1425) (@fukusuket) - Sigma correlation rules required the
group-byfield but now it is optional. (#1442) (@fukusuket) - Hayabusa will give an error message if the rules referenced by a correlation rule are not found. (#1444) (@fukusuket)
- Field information was not being outputted when the
all-field-infoprofiles were used. (#1450) (@fukusuket)
Other:
- License is changed from GPL-3.0 to AGPL-3.0. (@YamatoSecurity)
新機能:
fieldrefモディファイア(equalsfieldモディファイアのエリアス)に対応した。(#1409) (@hitenkoku)fieldref|startswithとfieldref|containsモディファイアに対応した。 (#1439) (@fukusuket)fieldref|endswithモディファイアは、endswithfieldをリプレースするためのエイリアスとして作成された。(#1437) (@fukusuket)- XORエンコードされたルールをサポートし、端末に置かれるファイルを最小限に抑えるとともに、ルールに過検知するアンチウイルス製品を回避する。(#1419) (@fukusuket)
- リリースページで、この機能を設定済みのパッケージを含める予定。手動で設定したい場合は、encoded_rules.ymlをダウンロードして、Hayabusaのルートフォルダに置いてください。このファイルは、hayabusa-rulesリポジトリ内のルールから作成されており、ルールが更新されるたびに自動的にアップデートされる。configディレクトリ以外のrulesフォルダ内のファイルは、まだ単一ファイルに含まれていないので削除してください。
- 注意: -Hオプションで生成されるレポートは、ルールへのリンクを作成せず、ルール名だけが出力される。
rules/configの設定ファイルが単一のファイルrules_config_files.txtからロードされるようになり、ライブ調査のためにターゲットシステムに保存する必要があるファイル数が減った。(#1420) (@fukusuket)
バグ修正:
searchコマンドの-oオプションを使用した際に不要な改行が出力されていた。(#1425) (@fukusuket)- Sigma相関ルールの
group-byフィールドは、必須だったが任意に変えた。(#1442) (@fukusuket) - Hayabusaは、相関ルールで参照されているルールが見つからない場合、エラーメッセージを表示するようにした。 (#1444) (@fukusuket)
all-field-infoプロファイルを使用した場合、フィールド情報が出力されなかった。 (#1450) (@fukusuket)
その他:
- ライセンスをGPL-3.0からAGPL-3.0に変えた。(@YamatoSecurity)
v2.17.0 🦅
2.17.0 [2024/08/23] "HITCON Release"
Note: the hayabusa-2.17.0-win-x64-embedded-config.zip binary has its config files embedded into the binary to reduce the number of files. This is intended for when Hayabusa is used for live analysis or used with Velociraptor.
New Features:
- Support for the Sigma V2
|re:submodifers. (#1399) (@fukusuket)- Reference: https://github.com/SigmaHQ/sigma-specification/blob/main/appendix/sigma-modifiers-appendix.md
|re|i:: (insensitive) disable case-sensitive matching.|re|m:: (multi-line) match across multiple lines.^/$match the start/end of line.|re|s:: (single-line) the dot character (.) matches all characters, including the newline character.
- Reference: https://github.com/SigmaHQ/sigma-specification/blob/main/appendix/sigma-modifiers-appendix.md
- Support for the Sigma V2
|exists:modifier. (#1400) (@hitenkoku) - Support for the Sigma V2
|cased:modifier. (#1401) (@hitenkoku)
Enhancements:
- Support for the newer version 0.6.x
cidr-utilscrate. (#1366) (@hitenkoku) - Added support for Sigma correlation rule's
namelookup. (#1363) (@fukusuket) - Enabled low memory mode by default.
-s, --low-memory-modeis now-s, --sort-events- Sort events before outputting results. (warning: this uses much more memory!). (#1361) (@hitenkoku)- Note: you need to enable sorting in order to use
-R, --remove-duplicate-dataand-X, --remove-duplicate-detections.
- Note: you need to enable sorting in order to use
- Sigma correlation reference rules now do not output alerts by default. You can enable them by adding
generate: trueto the rule. (#1367) (@fukusuket) Datafields are now displayed as indexed strings instead of as allDatafields or in an array for JSON. (#1371) (@fukusuket)- Before:
"Data": ["17514", "Multiprocessor Free", "Service Pack 1"] - After:
"Data[3]": "17514", "Data[4]": "Multiprocessor Free", "Data[5]": "Service Pack 1"
- Before:
- The configuration files in the
configfolder are now also embedded in the binary to reduce the number of files in the release package. (#1370) (@hitenkoku)- Note: you will not be able to run the
set-default-profilecommand without theconfigdirectory files as it relies onconfig/default_profile.yaml.
- Note: you will not be able to run the
- Aggregation rule alerts now show
ChannelandEventIDinformation even when there are multiple results. (#1342) (@fukusuket) - In the JSON timeline, when there is no information in the
Detailsfield, we changed the default output of"-"to{}in order to make parsing easier. (#1386) (@hitenkoku) - Added support for the
–(en dash),—(em dash), and―(horizontal bar) characters for thewindashmodifier to prevent signature bypass. (#1392) (@hitenkoku) - Updated the MITRE ATT&CK tags to support Sigma version 2 format. (Ex:
defense_evasion=>defense-evasion) (@fukusuket) - Updated the
evtxcrate to the latest for enhancements and bug fixes.
Bug Fixes:
- Sigma correlation rule count was not showing up in
Events with hits. (#1373) (@fukusuket) - Correlation rule count was not showing up in
Events with hits. (#1374) (@fukusuket) - Aggregation condition rule count was not showing up in
Events with hits. (#1375) (@fukusuket) - In rare cases, the list of rule authors would not be displayed to the terminal. (#1383) (@fukusuket)
新機能:
- Sigma V2の
|re:のサブモディファイアに対応した。 submodifers. (#1399) (@fukusuket)- 参考: https://github.com/SigmaHQ/sigma-specification/blob/main/appendix/sigma-modifiers-appendix.md
|re|i:: (insensitive) 大文字小文字を区別しないマッチングを無効にする。|re|m:: (multi-line) 複数行にまたがってマッチする。^/$は行頭/行末にマッチする。|re|s:: (single-line) ドット文字 (.) は改行文字を含むすべての文字にマッチする。
- 参考: https://github.com/SigmaHQ/sigma-specification/blob/main/appendix/sigma-modifiers-appendix.md
- Sigma V2の
|exists:モディファイアに対応した。 (#1400) (@hitenkoku) - Sigma V2の
|cased:モディファイアに対応した。 (#1401) (@hitenkoku)
改善:
cidr-utilsクレートを新バージョン0.6.xに対応した。 (#1366) (@hitenkoku)- Sigma相関ルールの
nameルックアップに対応した。 (#1363) (@fukusuket) - デフォルトで低メモリモードを有効にした。
-s, --low-memory-modeは、-s, --sort-events- 出力/保存する前に結果をソートする。(注意: より多くのメモリを消費する。)(#1361) (@hitenkoku)- 注意:
-R, --remove-duplicate-dataまたは-X, --remove-duplicate-detectionsを使用するには、ソートを有効にする必要がある。
- 注意:
- Sigma相関ルールが参照しているルールは、デフォルトで結果を出力しないようにした。ルールに
generate: trueを指定すると、出力される。 (#1367) (@fukusuket) Dataフィールドは、すべてDataフィールドとして、またはJSONの配列としてではなく、インデックス化された文字列として表示されるようになった。(#1371) (@fukusuket)- 前:
"Data": ["17514", "Multiprocessor Free", "Service Pack 1"] - 後:
"Data[3]": "17514", "Data[4]": "Multiprocessor Free", "Data[5]": "Service Pack 1"
- 前:
- リリースパッケージのファイル数を減らすために、
configフォルダ内の設定ファイルもバイナリに埋め込まれるようにした。 (#1370) (@hitenkoku)- 注意:
set-default-profileコマンドは、config/default_profile.yamlに依存しているので、configディレクトリファイルがないと実行できない。
- 注意:
- 集計ルールのアラートに、複数の結果がある場合でも
ChannelとEventIDの情報が表示されるようにした。 (#1342) (@fukusuket) - JSONタイムラインで
Detailsフィールドに情報がない場合、JSONがパースしやすくなるように、デフォルトで出力される"-"を{}に変更した。(#1386) (@hitenkoku) - シグネチャーバイパスを防ぐため、
-(エンダッシュ)、-(エムダッシュ)、―(水平バー) 文字をwindash修飾子でサポートするようにした。(#1392) (@hitenkoku) - MITRE ATT&CKタグをSigmaバージョン2の形式に対応させた。(例:
defense_evasion=>defense-evasion) (@fukusuket) evtxクレートを最新のものに更新し、機能改善とバグ修正を行った。
バグ修正:
- Sigmaの相関ルールのカウントが
Events with hitsに表示されていなかった。(#1373) (@fukusuket) - 相関ルールのカウントが
Events with hitsに表示されていなかった。(#1374) (@fukusuket) - 集計ルールのカウントが
Events with hitsに表示されていなかった。(#1375) (@fukusuket) - まれに、ルール作成者の一覧が表示されないことがあった。 (#1383) (@fukusuket)
v2.16.1
This release is the same as v2.16.0 with updated rules as of August 2nd, 2024. We are re-releasing just the Windows packages because Windows defender was giving false positive alerts on certain rules. We have temporarily removed those rules so you should not receive false positives on rules anymore. If you do, please create a GitHub issue and tell us the path of the offending rules.
v2.16.0 🦅
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
Channelfield in.evtxfile and.ymlrule. For example, ifSecurity.evtxwas being scanned, then only rules that haveChannel: Securitydefined will be used against this file. In our benchmarks, this usually gives a speed benefit of around 20% when scanning singleevtxfiles but can give up a 10x speed performance depending on the file. If you think there are multiple channels being used in a single.evtxfile or you want to use rules that do not have theChannelfield defined in order to scan all.evtxfiles regardless of the channel, then you can turn off this filtering with the-A, --enable-all-rulesoption incsv-timelineandjson-timeline. (#1317) (@fukusuket)- Currently, the only two detection rules that do not have
Channeldefined and are intended to scan all.evtxfiles are the following:
- Currently, the only two detection rules that do not have
- By default now,
.evtxfiles 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 forChannel: Securitythen 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.evtxfiles regardless of channel, then you can turn off this filtering with the-a, --scan-all-evtx-filesoption incsv-timelineandjson-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-inputand also specify-Aor-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, --directoryoption. (#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 >= 2Also, 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_Namefield in field data mapping files (rules/config/data_mapping/*.yaml) as well as support forData[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" }
- Before:
新機能:
- デフォルトでは、
.evtxファイルに適用可能なルールのみ有効になる。これは、.evtxファイルと.ymlルールのChannelフィールドに基づく。例えば、Security.evtxがスキャンされている場合、Channel: Securityが定義されているルールのみがこのファイルに対して使用される。ベンチマークでは、単一のevtxファイルをスキャンする場合、パフォーマンスが約20%向上される。1つの.evtxファイルで複数のチャネルが使用されている場合や、チャネルが定義されていないルールを使用して、チャネルに関係なくすべての.evtxファイルをスキャンしたい場合は、csv-timelineとjson-timelineの-A、--enable-all-rulesオプションでこのフィルタリングをオフにすることができる。(#1317)(@fukusuket)- 現在のところ、
Channelが定義されておらず、すべての.evtxファイルをスキャンすることを意図している検知ルールは以下の2つだけ:
- 現在のところ、
- デフォルトでは、適用可能なルールを持つ
.evtxファイルのみ読み込む。たとえば、さまざまなイベントログのディレクトリをスキャンしている場合でも、Channel: Securityを探すルールのみを有効にした場合、HayabusaはSecurity以外のすべてのイベントログを無視します。ベンチマークでは、通常のスキャンで約10%、単一のルールでスキャンする場合は最大60%以上のパフォーマンス向上が得られる。チャネルに関係なくすべての.evtxファイルを読み込みたい場合は、csv-timelineとjson-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" }
- 以前:
v2.15.0 🦅
2024/06/05 Update
- I updated the detections rules so that they do not include two rules that cause false positives for Windows Defender for the Windows 65 bit package:
hayabusa-2.15.0-win-x64-r2.zip(@YamatoSecurity)
2.15.0 [2024/04/20] "Sonic Release"
Enhancements:
- Added support for
windashfield modifier (ex.|contains|windash:,|contains|all|windash:) in sigma rules. (#1319) (@hitenkoku)- https://sigmahq.io/docs/basics/modifiers.html#windash
- Note: currently on the backend we convert the use of
windashin rules so they are compatibile with previous versions of Hayabusa, however, around the end of May we will start to keep the use ofwindashas-is so please update to this version before then or else you will recieve rule parsing errors if you update rules.
Bug Fixes:
-Tdetection frequency timeline was not usable in version 2.14.0. (#1322) (@fukusuket)- Fixed
windashnot working when there is a wildcard. (#1327) (@hitenkoku)
改善:
- Sigmaルールの
windashフィールド修飾子 (例:|contains|windash:と|contains|all|windash:)に対応した。 (#1319) (@hitenkoku)- https://sigmahq.io/docs/basics/modifiers.html#windash
- 注意: 現在、バックエンドでは、以前のバージョンのHayabusaと互換性があるようにルール内の
windashの使用を変換しているが、5月末ごろには、windashの使用をそのままにする予定なので、それまでにこのバージョンにアップデートしてください。
バグ修正:
- バージョン2.14.0では、
-Tの検知頻度タイムライン出力は使用できなかった。 (#1322) (@fukusuket) windashでワイルドカードが利用できない問題を修正した。 (#1327) (@hitenkoku)