WICHTIG: Diese README und andere Dokumentation sind nicht aktualisiert, um die Änderungen der letzten Beta-Releases widerzuspiegeln (da viele Änderungen stattgefunden haben). All dies wird rechtzeitig aktualisiert, wenn eine stabile Version veröffentlicht wird (siehe Fahrplan bis zum nächsten Release). Du kannst gerne Beta-Releases selbst ausführen und Fragen stellen, falls du Hilfe benötigst.

Was
EDR mit Artefaktsammlung, gesteuert durch Erkennung. Die Erkennungsengine basiert auf einem vorherigen Projekt Gene, das speziell entwickelt wurde, um Windows-Ereignisse mit benutzerdefinierten Regeln abzugleichen.
Was meinst du mit „Artefaktsammlung gesteuert durch Erkennung"?
Es bedeutet, dass ein Alarm direkt eine Sammlung von Artefakten auslösen kann (Datei, Registry, Prozessspeicher). So bist du sicher, dass du die Artefakte so früh wie möglich gesammelt hast (nahezu in Echtzeit).
All diese Arbeit wurde in meiner Freizeit erledigt, in der Hoffnung, dass sie anderen Menschen hilft. Ich hoffe, sie gefällt dir. Sofern ich keine Finanzierung erhalte, um dieses Projekt weiterzuentwickeln, werde ich es auf Best-Effort-Basis weiterentwickeln. Ich werde mein Bestes tun, um Probleme rechtzeitig zu beheben und Updates bereitzustellen. Du kannst gerne Issues eröffnen, um das Projekt zu verbessern und am Leben zu erhalten.
Warum
- Bietet ein Open Source EDR für die Community
- Schafft Transparenz über die Erkennungsregeln, damit Analysten verstehen, warum eine Regel ausgelöst hat
- Bietet leistungsstarke Erkennungsprimitive durch eine flexible Regel-Engine
- Optimiert Incident-Response-Prozesse, indem die Zeit zwischen Erkennung und Artefaktsammlung drastisch reduziert wird
Wie
Hinweis: Der EDR-Agent kann eigenständig betrieben werden (ohne Verbindung zu einem EDR-Manager)
Was du wissen solltest
- Es funktioniert nur unter Windows mit ETW-Logs
- Verlässt sich auf Sysmon für die gesamte schwere Arbeit (Kernel-Komponente)
- Sehr leistungsstarke und anpassbare Erkennungsengine (angetrieben von gene)
- Entwickelt von einem Incident-Responder für alle Incident-Responder mit dem Ziel, ihre Arbeit weniger schmerzhaft zu machen
- Geringe Systemlast -> keine Prozessinjektion
- Kann mit jedem Antivirenprodukt koexistieren (es wird empfohlen, es zusammen mit MS Defender zu betreiben)
- Entwickelt für hohen Durchsatz. Es kann problemlos bis zu 15 Millionen Ereignisse pro Tag pro Endpunkt anreichern und analysieren, ohne die Leistung zu beeinträchtigen. Viel Glück, das mit einem SIEM zu erreichen.
- Leicht integrierbar mit anderen Tools (Splunk, ELK, MISP ...)
- Integriert mit dem ATT&CK-Framework
- Es gibt eine leistungsstarke administrative API zur einfachen Verwaltung großer Installationen (noch keine GUI)
Installation
Voraussetzungen
- Installiere Sysmon
- Konfiguriere Sysmon
- Optimierte Sysmon-Konfigurationen findest du hier
- Das Protokollieren von ProcessCreate und ProcessTerminate ist zwingend erforderlich
- Notiere dir den Pfad zu deiner Sysmon-Binärdatei, da du ihn später benötigst
Hinweis: Die Ereignisfilterung kann zu 100% mit Gene-Regeln durchgeführt werden, also mach dir nicht die Mühe, eine komplizierte Sysmon-Konfiguration zu erstellen.
Empfehlungen vor der Installation
Um das Beste aus WHIDS herauszuholen, solltest du deine Protokollierungsrichtlinie verbessern.
- Aktiviere PowerShell-Modul-Protokollierung
- Überwache die Diensterstellung: gpedit.msc ->
Computerkonfiguration\Windows-Einstellungen\Sicherheitseinstellungen\Erweiterte Überwachungsrichtlinienkonfiguration\Systemüberwachungsrichtlinien\System\Sicherheitssystemerweiterung überwachen -> Aktivieren
- Aktiviere die Dateisystem-Überwachung. Sysmon liefert nur FileCreate-Ereignisse, wenn neue Dateien erstellt werden. Wenn du also andere Zugriffsarten (Lesen, Schreiben, ...) protokollieren möchtest, musst du die FS-Überwachung aktivieren.
- gpedit.msc ->
Computerkonfiguration\Windows-Einstellungen\Sicherheitseinstellungen\Erweiterte Überwachungsrichtlinienkonfiguration\Systemüberwachungsrichtlinien\Objektzugriff\Dateisystem überwachen -> Aktivieren
- Rechtsklick auf einen Ordner -> Eigenschaften -> Sicherheit -> Erweitert -> Überwachung -> Hinzufügen
Hauptbenutzer auswählen (hier den Namen des Benutzers / der Gruppe eintragen, für den/die die Überwachung gelten soll). Setze die Gruppe Jeder ein, wenn du Zugriffe von jedem Benutzer protokollieren möchtest.
Anwenden auf wird verwendet, um den Gültigkeitsbereich dieser Überwachungsrichtlinie ausgehend vom ausgewählten Ordner auszuwählen
Standardberechtigungen wähle die Arten von Zugriffen aus, für die die Protokolle generiert werden sollen
- Bestätigen
- Dateisystem-Überwachungsprotokolle erscheinen im Kanal
Sicherheit
EDR-Endpunktagent (Whids.exe)
Dieser Abschnitt behandelt die Installation des Agents auf dem Endpunkt.
- Lade die neueste WHIDS-Version herunter und entpacke sie von https://github.com/0xrawsec/whids/releases
- Führe
manage.bat als Administrator aus
- Starte die Installation, indem du die entsprechende Option auswählst
- Überprüfe, ob Dateien im Installationsverzeichnis erstellt wurden
- Bearbeite die Konfigurationsdatei, indem du die entsprechende Option in
manage.bat auswählst oder deinen bevorzugten Texteditor verwendest
- Überspringe diesen Schritt, wenn du mit einer Verbindung zu einem Manager arbeitest, da die Regeln automatisch aktualisiert werden. Wenn das Regelverzeichnis leer ist, ist das Tool nutzlos. Stelle also sicher, dass sich einige Gene-Regeln darin befinden. Einige Regeln werden mit WHIDS ausgeliefert, und du wirst gefragt, ob du diese installieren möchtest oder nicht. Wenn du die aktuellsten Regeln haben möchtest, findest du sie hier (nimm die kompilierten).
- Starte die Dienste über die entsprechende Option in
manage.bat oder starte einfach neu (bevorzugte Option, da sonst einige Anreicherungsfelder unvollständig sind, was zu Fehlalarmen führt)
- Wenn du einen Manager konfiguriert hast, vergiss nicht, ihn auszuführen, um Alarme und Dumps zu erhalten
Hinweis: Bei der Installation wird der Sysmon-Dienst als abhängig vom WHIDS-Dienst konfiguriert, sodass wir sicher sind, dass der EDR läuft, bevor Sysmon beginnt, Ereignisse zu generieren.
EDR-Manager
Der EDR-Manager kann auf mehreren Plattformen installiert werden. Vorgefertigte Binärdateien werden für Windows, Linux und Darwin bereitgestellt.
- Erstelle ein TLS-Zertifikat, falls für HTTPS-Verbindungen erforderlich
- Erstelle eine Konfigurationsdatei (es gibt ein Kommandozeilenargument, um eine Basiskonfiguration zu generieren)
- Führe die Binärdatei aus
Konfigurationsbeispiele
Bitte besuche doc/configuration.md
Weitere Dokumentation
Bekannte Probleme
- Funktioniert nicht richtig, wenn es von einer als Netzlaufwerk zugeordneten Netzwerkfreigabe ausgeführt wird (dieser Fall verhindert, dass whids sich selbst identifiziert, und erzeugt somit Rauschen). Beispiel: Wenn
\\vbox\test als Laufwerk Z: gemountet ist, funktioniert das Ausführen von Z:\whids.exe nicht, während \\vbox\test\whids.exe tatsächlich funktionieren würde.
Fahrplan bis zum nächsten Release
Änderungsprotokoll
v1.7
- Neue Administrative HTTP-API mit folgenden Funktionen:
- Endpunkte verwalten (auflisten, erstellen, löschen)
- Grundlegende Statistiken über den Manager abrufen
- Befehle auf Endpunkten ausführen und Ergebnisse abrufen
- Vor der Ausführung können Dateien abgelegt werden, um Binärdateien/Skripte auszuführen, die auf dem Endpunkt nicht vorhanden sind. Abgelegte Dateien werden nach der Befehlsausführung gelöscht.
- Dateien können (nach der Befehlsausführung) abgerufen werden, um die Ergebnisse des Befehls zu erhalten
- Dateien von Endpunkten für forensische Zwecke sammeln
- Endpunkte isolieren / freigeben, indem der gesamte Netzwerkverkehr mit Ausnahme der Kommunikation mit dem Manager eingeschränkt wird
- Endpunktprotokolle abfragen
- Endpunktalarme abfragen
- Auf einen Zeitstempel pivoten und Protokolle/Alarme um diesen Zeitpunkt herum abrufen
- Auf Endpunktberichte zugreifen
- Bewertung (relativ zu jeder Umgebung) ermöglicht das Sortieren von Endpunkten und das Erkennen von Endpunkten, die sich anders verhalten als die anderen.
- Alarme / TTPs, die in einem bestimmten Zeitrahmen beobachtet wurden
- Regeln verwalten (auflisten, erstellen, aktualisieren, speichern, löschen)
- Integration mit Sysmon v12 und v13
- Integration von ClipboardData-Ereignissen
- Einfügen des Inhalts der Zwischenablage in das Ereignis, um das Erstellen von Regeln für den Inhalt der Zwischenablage zu ermöglichen
- Integration von ProcessTampering-Ereignissen
- Anreicherung des Ereignisses mit einer Diffing-Bewertung zwischen dem .text-Abschnitt auf der Festplatte und im Speicher
- Implementierung von Zertifikats-Pinning auf dem Client, um die Sicherheit des Kommunikationskanals zwischen Endpunkten und Verwaltungsserver zu erhöhen
- Protokollfilterungsfunktionen, die das Sammeln kontextbezogener Ereignisse ermöglichen. Die Protokollfilterung wird durch das Erstellen von Gene-Filterregeln erreicht (vgl. Gene-Dokumentation).
- Konfigurationsdateien im TOML-Format für bessere Lesbarkeit
- Besseren Schutz des Installationsverzeichnisses
Verwandte Arbeiten

Github:https://github.com/tines Website:https://www.tines.com/ Twitter:@tines_io