
Führen Sie Hayabusa im Bulk-Modus über einen Ordner mit KAPE-Sammlungen aus, ein Durchlauf pro Host, mit Berichten pro Host und einem hostübergreifenden Triage-Dashboard
Ein PowerShell-Wrapper, der Hayabusa über einen Ordner mit KAPE-Sammlungen laufen lässt, einen Durchlauf pro Host, und die Ergebnisse in einer einzigen hostübergreifenden Triage-Ansicht zusammenführt.
Hayabusa akzeptiert bereits ein ganzes Verzeichnis mit -d, und seine HTML-Zusammenfassung schlüsselt die Ergebnisse nach Computer auf. Ein Ordner mit KAPE-Sammlungen hinterlässt dennoch zwei Aufgaben, die von Hand erledigt werden müssen. Jede ZIP muss entpackt und jedes Disk-Image eingebunden werden, bevor Hayabusa es lesen kann, und ein Durchlauf über alle zusammen liefert eine kombinierte Ausgabe, ohne eigenen Bericht oder eigene Timeline für jeden Host. Genau das übernimmt dieses Tool. Richte es auf einen Ordner mit einem Eintrag pro Host, und du erhältst für jeden Host Hayabusas HTML-Alarmbericht, eine CSV-Timeline und ein Log, plus ein Dashboard, das zeigt, welche Hosts am schlimmsten betroffen sind und welche Regeln wo ausgelöst haben.
Vollständige Nutzungsreferenz: docs/USAGE.md
Das Dashboard nach einem Durchlauf über acht Hosts, mit der Severity-Untergrenze bei medium:

Die Konsole während desselben Durchlaufs:

Computer-Feld, sodass lose Ausgabe, die KAPE nach einem Laufwerk benannt hat, trotzdem unter dem richtigen Host landet.Pre-Release. Es wurde unter Windows gegen echte Hayabusa 4.1.0- und KAPE-Images und -ZIPs ausgeführt, und die Testsuite läuft in CI unter Windows PowerShell 5.1, PowerShell 7 unter Windows und PowerShell 7 unter Linux. Zwei Verhaltensweisen benötigen noch die passenden Beweismittel zur Bestätigung, aufgeführt unter Not yet confirmed on Windows. Prüfe diese Liste, bevor du dich in einem Bericht auf eine davon verlässt.
hayabusa.exe update-rules einmal zu Beginn des Engagements aus und lass die Regeln bis zum Abschluss unangetastet, damit jeder Host gegen denselben Satz geprüft wird.Klone das Repository oder lade es als ZIP von GitHub herunter und entpacke es:
git clone https://github.com/rorywag/Hayabusa-Bulk-Runner.git
Behalte den lib-Ordner neben den beiden Skripten, da sie alles daraus laden. Windows markiert Dateien aus einer heruntergeladenen ZIP als aus dem Internet stammend. Die unten gezeigte Execution Policy im Process-Scope erlaubt sie bereits, sodass nichts entsperrt werden muss.
.\Invoke-BulkHayabusa.ps1 -InputRoot D:\Cases\Case01\KAPE -OutputRoot D:\Cases\Case01\Output -HayabusaPath D:\Tools\hayabusa\hayabusa.exe
Es gibt während des Laufs eine Zeile pro Host aus, dann eine kurze Zusammenfassung und wo nachzusehen ist:
[1/4] DC01 ... Completed, 12 detections
[2/4] FS02 ... Completed, 6 detections
WARNING: [3/4] WS03 ... Failed: Hayabusa exited with code 2. See D:\Cases\Case01\Output\WS03\WS03_hayabusa.log. No CSV was written.
[4/4] WS04 ... skipped, already Completed
Done: 3 processed, 2 completed, 0 completed with errors, 1 failed, 1 skipped.
Output is in D:\Cases\Case01\Output. Open triage_dashboard.html there to start triage.
In einem frischen PowerShell-Fenster kann das Skript durch die Execution Policy blockiert werden. Dies erlaubt es nur für dieses Fenster und ändert nichts auf dem Rechner:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\Invoke-BulkHayabusa.ps1 -Help oder -h gibt eine kurze Nutzungszusammenfassung aus. Die vollständige Parameterliste, ausgearbeitete Beispiele, das Eingabe- und Ausgabemodell und die Engagement-Konfiguration findest du in docs/USAGE.md.
Die Beweismittel werden ausschließlich gelesen.
OutputRoot\_diff ein, mit dem Beweis-Image als übergeordnetes Element. Windows spielt das Journal in das Kind ab, und das übergeordnete Element wird nur gelesen, geprüft an KAPE-Ausgabe mit demselben Hash des übergeordneten Elements vorher und nachher.OutputRoot\_work entpackt. Die ZIP selbst wird nur gelesen._work-, _mnt- und _diff-Ordner, plus den vorherigen Bericht und die Timeline eines Hosts, unmittelbar bevor dieser Host erneut ausgeführt wird. Wenn ein Aushängen fehlschlägt, bleibt alles danach an Ort und Stelle, und die Fehlermeldung sagt, was noch vorhanden ist.docs/USAGE.md behandelt den Rest: