Initial triage of Windows Event logs. This is beta quality software.
Please look into maps/ (which contains Layer 1 maps)
Parse events (C:\evtx_compromised_machine\*.evtx) from single host to default Excel format (also generate chart)
EvtxHussar.exe -o C:\evtxhussar_results C:\evtx_compromised_machine
Parse events (C:\evtx_many_machines\*\*.evtx) from many machines recursively saving them with JSONL format
EvtxHussar.exe -f jsonl -r -o C:\evtxhussar_results C:\evtx_many_machines
Parse only 2 files (Security.evtx and System.evtx) and save them with CSV format
EvtxHussar.exe -f csv -o C:\evtxhussar_results C:\evtx_compromised_machine\Security.evtx C:\evtx_compromised_machine\System.evtx
Parse events with 100 workers (1 worker = 1 Evtx file handled) Default: 30
EvtxHussar.exe -w 100 -r -o C:\evtxhussar_results C:\evtx_many_machines
Parse with custom maps relevant to incident
EvtxHussar.exe -m C:\incident_specific_maps -r -o C:\evtxhussar_results C:\evtx_many_machines
Parse only with selected Layer2 maps e.g. PowerShellUniversal,PowerShellScriptBlock
EvtxHussar.exe --includeonly PowerShellUniversal,PowerShellScriptBlock -r -o C:\evtxhussar_results C:\evtx_many_machines
Parse with all Layer2 maps but exclude e.g. FirewallUniversal
EvtxHussar.exe --excludeonly FirewallUniversal -r -o C:\evtxhussar_results C:\evtx_many_machines
Generate chart only
EvtxHussar.exe --includeonly ChartOnly -r -o C:\evtxhussar_results C:\evtx_many_machines
Parse events only (disable chart generation)
EvtxHussar.exe -c none -r -o C:\evtxhussar_results C:\evtx_many_machines
https://docs.velociraptor.app/exchange/artifacts/pages/windows.eventlogs.evtxhussar/
:memo: https://atos.net/en/lp/securitydive/how-to-accelerate-analysis-of-windows-event-logs
Usage: EvtxHussar [--recursive] [--output_dir OUTPUT_DIR] [--format FORMAT] [--workers WORKERS] [--maps MAPS] [--templates TEMPLATES] [--includeonly INCLUDEONLY] [--excludeonly EXCLUDEONLY] [--chart CHART] [--scriptblockxor] [--debug] [INPUT_EVTX_PATHS [INPUT_EVTX_PATHS ...]]
Positional arguments:
INPUT_EVTX_PATHS Path(s) to .evtx files or directories containing these files (can be mixed)
Options:
--recursive, -r Recursive traversal for any input directories. [default: false]
--output_dir OUTPUT_DIR, -o OUTPUT_DIR
Reports will be saved in this directory (if doesn't exists it will be created)
--format FORMAT, -f FORMAT
Output data in one of the formats: Csv,JSON,JSONL,Excel [default: Excel]
--workers WORKERS, -w WORKERS
Max concurrent workers (.evtx opened) [default: 30]
--maps MAPS, -m MAPS Custom directory with maps/ (Default: program directory)
--templates TEMPLATES, -t TEMPLATES
Directory with Apache Echarts template (Default: program directory)
--includeonly INCLUDEONLY, -i INCLUDEONLY
Include only Layer2 maps present on the list comma separated (Name taken from YAML) [default: {[]}]
--excludeonly EXCLUDEONLY, -e EXCLUDEONLY
Start with all Layer2 maps and exclude only maps present on the comma separated list (Name taken from YAML) [default: {[]}]
--chart CHART, -c CHART
Generate frequency chart of all .evtx files (Not only the ones supported by maps). Valid values: html,none [default: html]
--scriptblockxor, -x Apply XOR on reconstructed PS ScriptBlocks with key 'Y' (0x59) to prevent deletion by AV [default: false]
--debug, -d Be more verbose [default: false]
--help, -h display this help and exit
--version display version and exit