Windows gegen Sysmon


Auf der letzten ZeroNights-Konferenz wurde uns im Rahmen der informellen Kommunikation mit unseren Kollegen im Überwachungssystem auf den ersten Blick eine einfache Frage gestellt. Es wurde allgemein angenommen, dass Sysmon verwendet werden sollte, um den Endpunkt unter Windows vollständig zu überwachen. Ist das so? Und wenn ja, aus welchen besonderen Gründen (Hallo Seryozha!)? Wir konnten keine eindeutige umfassende Antwort in unserem Wissensgepäck oder einen entsprechenden Vergleich im Internet finden, daher haben wir uns zunächst für uns selbst und nicht zuletzt, damit auch in Zukunft eine solche Quelle von der Community verfügbar sein wird, entschlossen, dieses Thema zu untersuchen und vergleichen Sie die persönlichen Ereignisse von Windows und Sysmon. Wie das Sprichwort sagt: "1 ... 2 ... 3 ... Kampf!".


Einführung


Jeder Spezialist auf dem Gebiet der Informationssicherheit ist gezwungen, innerhalb eines bestimmten Rahmens zu arbeiten. Zum Beispiel ist Sicherheit innerhalb eines begrenzten Budgets mit seltenen Ausnahmen nicht die Hauptmethode für ein Unternehmen, um Gewinne zu erzielen oder andere Funktionen innerhalb seines Kerngeschäfts auszuführen. Daher wird unter Bedingungen begrenzter Ressourcen, über die die Organisation verfügt, häufig nur ein kleiner Teil davon dem Sicherheitssektor zugewiesen, um diese Richtung auf einem Mindestmaß (entsprechend bestimmten Anforderungen) zu halten. Selbst mit unbegrenzten Ressourcen wird es immer andere Einschränkungen geben, die es nicht erlauben, das Sicherheitsniveau auf das Absolute zu bringen. Dies sind die berüchtigten Schwachstellen von Zero oder Normal Day (endloses Patch-Management) und das ständige Wettrüsten von Hackern und Sicherheitsleuten.und die Dynamik der Entwicklung der IT-Infrastruktur und vieles mehr.

Vor diesem Hintergrund ist die Frage der Priorisierung von Schutzmitteln und -methoden mehr denn je dringend, auch in Richtung Überwachung. In diesem Bereich, laut Statistik auf der Basis der Daten der MITRE ATT & CK Matrix , die wir bereits geschrieben über letztes Mal, sind die Prioritäten wie folgen: die unbedingte erste Linie durch eine solche genommen Quelle von Sicherheitsereignissen als Endpunkte.


Diese Quelle führt zu der Anzahl von Matrixtechniken, die anhand der darauf aufgezeichneten Ereignisse identifiziert werden können. Das am häufigsten verwendete Betriebssystem für Endpunkte ist Microsoft Windows. Wenn Sie in den meisten Unternehmensinfrastrukturen genau die Protokolle erfassen, erzielen Sie das beste Ergebnis im Verhältnis aller Arten von Kosten zur Abdeckung von Netzwerkgeräten und zur Abdeckung bösartiger Techniken. Dies wird durch die Statistiken derselben Autoren bestätigt. Die Orte 1-3, 5, 7, 8, 10 und Teil 4 besetzen genau diese sogenannten Grundereignisse.


Aber wie im berühmten Witz gibt es eine Einschränkung. In den letzten Jahren wurde allgemein anerkannt, dass Windows-Protokolle durch Sysmon-Ereignisse ergänzt, wenn nicht ersetzt werden müssen. Sie sagen, dass sie unter dem Gesichtspunkt der Informationssicherheit vollständiger, besser und als Überwachungstool besser angepasst sind.

Darüber hinaus entspricht dieser Ansatz in gewisser Weise dem Konzept des Minimalismus. Jedes Softwareprodukt, das Sie zu Ihrem eigenen hinzufügen möchten oder das Ihnen von einem Unternehmenskunden freiwillig zur Verfügung gestellt wird, erhöht den Angriffsbereich, die Verwaltungs- und Aktualisierungskosten sowie die Fehlerquellen. Und oft - und genau die Zeit vor der Implementierung Ihres Überwachungssystems, während Ihr Ansatz die Genehmigung besteht.

Sysmon wurde von Microsoft-Spezialisten entwickelt und kürzlich von diesem Unternehmen übernommen, was der IT ein gewisses Maß an Vertrauen verleiht. Darüber hinaus werden die Protokolle in Form eines .evtx-Protokolls geschrieben, mit dem Sie sie mit denselben Tools und Methoden wie normale Windows-Protokolle erfassen und verarbeiten können.

Machen Sie sofort einen Vorbehalt, dass sich der Artikel als groß herausstellte, obwohl wir versucht haben, das Material minimal zu duplizieren und zu komprimieren. Der Leser kann natürlich sagen und uns auf diesen Witz über Lenin verweisen: "Aber er hätte aufgeschlitzt ...". Oder dass "die Veröffentlichung zur besseren Lesbarkeit in zwei oder drei Teile unterteilt werden könnte". Es schien uns jedoch, dass wir trotz des Umfangs des vorbereiteten Materials eine vollständige Antwort auf die Frage unserer Kollegen im Geschäft geben müssen, und die Suche wäre bequemer. Um nichts zu verlieren, empfehlen wir Ihnen, den Artikel 1 Mal vollständig zu lesen, sich Notizen zu machen und erst dann zu bestimmten Ereignisgruppen zurückzukehren und sich eingehend mit diesen zu befassen.

Der Einfachheit halber fügen wir ein Inhaltsverzeichnis hinzu:
Einführung
Inhaltsverzeichnis
Vergleichsformat
Erstellen eines Prozesses
Netzwerkverbindungen
Beenden eines Prozesses
Herunterladen eines Treibers
Zugreifen auf einen Prozess
Erstellen einer Datei
Registrierungsaktionen
WMI-Konfiguration
DNS-Abfragen
Einzigartige Sysmon-
Ereignisse Filtern von Ereignissen
Andere freie Basisereignisanbieter
Allgemeine Ausgabe

Vergleichsformat


Warum und was verglichen wurde, scheint klar zu sein. Und wie wurde das gemacht und warum genau?

Wir haben beschlossen, einen Vergleich in Form einer Tabelle für jede der Ereignisgruppen durchzuführen, die eine bestimmte Aktivität im System widerspiegeln. Beispielsweise werden Ereignisse mit der ID (Ereignis-ID, EID) 12, 13 und 14 in Sysmon, die die Aktivität mit der Registrierung widerspiegeln, nicht einmal separat gefiltert, obwohl sie von unterschiedlichen atomaren Aktionen sprechen. Nach der gleichen Logik wurde der Rest der Gruppierung vorgenommen.

Solche Gruppen umfassten nur ähnliche Ereignisse. Ein Analogon zum Sysmon EID 6-Ereignis ist beispielsweise das Windows EID 6-Ereignis. Gleichzeitig gibt es mindestens 219 und 7036 Windows-Ereignisse zum Laden von Treibern. Sie entstehen aber im Fehlerfall. Jene. Tragen Sie nicht dieselbe semantische Last und können Sie bei Bedarf die Ereignisse von Sysmon oder Windows ergänzen, je nachdem, was wir sammeln möchten.

Für Gruppen von Ereignissen, die in der Tabelle wiedergegeben sind, werden in Ereignissen enthaltene informative Felder (die wir zu Überwachungszwecken verwenden) in Form von Zeichenfolgen dargestellt. Für jedes dieser Felder wird sein Name angegeben. Für Windows sind zwei Optionen möglich, für XML- und Magazinansichten (wer hätte gedacht, dass sie übereinstimmen?), Wenn sie sich stärker als durch Leerzeichen unterscheiden. Dies geschieht, weil Der Name des Feldes, das in das Überwachungssystem fällt, hängt möglicherweise von der Erfassungsmethode ab. Die Zeilen enthalten auch Ereignisdaten (um deren Format zu verstehen) und einen Kommentar (falls dies unserer Meinung nach erforderlich ist).

Die Felder mit der gleichen semantischen Last für beide Quellen werden in einer Zeile zusammengefasst. Wenn für eine der Quellen kein Feld mit einer ähnlichen semantischen Last vorhanden ist, werden in den entsprechenden Feldern Striche ("-") angezeigt.

Zeilen, die Informationen zu einer bestimmten Entität enthalten, z. B. das Subjekt, das die Aktion ausführt, werden zu einer semantischen Gruppe zusammengefasst.

Der Vergleich wurde für Versionen von Windows Kernel 6.3 (Windows 2012R2) und 10.0 (Windows 10, 2016, 2019) durchgeführt. Frühere Versionen wurden nicht berücksichtigt, da sie zwar immer noch weit verbreitet sind, aber allmählich verschwinden. Wenn sich die Ereignisse für verschiedene Kernelversionen nicht unterschieden, wurden die Spalten zu einer zusammengefasst, um die Duplizierung zu verringern.

Da die Rate Vollzeit ist, sind die Spalten in der folgenden Reihenfolge von der Mitte bis zu den Kanten angeordnet: Daten, Feldname, Kommentar. Dies macht den Vergleich visueller. Zur visuellen Trennung von Spalten nach den Quellen, auf die sie sich beziehen, werden Farben verwendet.

Einzigartig für Sysmon EID (da es sich in diesem Fall um ein ergänzendes Tool handelt, ist das Aufzeichnen von Betriebssystemprotokollen in der Grundfunktionalität des Betriebssystems enthalten) wird in einem separaten Abschnitt beschrieben.

Der Abschnitt mit der Tabelle zeigt die Gruppenrichtlinienobjekteinstellungen, die vorgenommen werden müssen, um die Aufzeichnung im Gruppenereignisprotokoll zu ermöglichen Die Anzahl der möglichen Prüfungsoptionen ist im Allgemeinen recht groß. Für Sysmon werden solche Einstellungen nicht angezeigt, weil Alle sind in einer einzigen Konfigurationsdatei enthalten.

Prozesserstellung


Paradoxerweise beschlossen sie, von vorne zu beginnen. Und dann waren sie auch nicht original und gingen in Ordnung - bei der Erhöhung von EID Sysmon.

Die Protokollierung von Ereignisdaten in Windows wird wie folgt aktiviert:

• Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Konfiguration der Überwachungsrichtlinien - Überwachungsrichtlinien - Detaillierte Nachverfolgung - Erstellung des Prüfprozesses - Erfolg ermöglicht die Protokollierung des Ereignisses selbst;

• Computerkonfiguration - Richtlinien - Administrative Vorlagen - System - Audit-Prozesserstellung - Befehlszeile in Prozesserstellungsereignisse einbeziehen - Fügt dem Ereignis die Befehlszeile des gestarteten Prozesses hinzu, wodurch häufig zwischen einem legitimen und einem illegitimen Start unterschieden werden kann.

Ein Vergleich in dem oben beschriebenen Format ist in der folgenden Tabelle dargestellt.


Im Folgenden werden alle Tabellen durch Bilder dargestellt und können angeklickt werden. Da wir erstens keine gute Möglichkeit gefunden haben, Tabellen nach Markdown oder HTML zu übertragen, während die Spaltenbreite oder Silbentrennung gemäß der vorhandenen Version in Excel beibehalten wurde. Und zweitens sind ihre Inhalte für die Indizierung nicht sehr wertvoll, außer für Kommentare. Viel wertvoller in Tabellen ist die Zusammensetzung der in diesem Artikel beschriebenen Felder und das Datenformat, mit dem Sie arbeiten müssen, wenn diese Ereignisquellen verwendet werden.

Betrachten Sie es in der richtigen Reihenfolge, aber nicht Zeile für Zeile - jeder wird eine so detaillierte Analyse für sich selbst durchführen. In diesem und im folgenden Abschnitt werden wir uns nur mit den Informationen befassen, die zum ersten Mal gefunden wurden. Beginnen Sie sofort mit einem Beispiel für dieses Verhalten. Die Felder des Abschnitts System sind in jedem Ereignis vorhanden, das in das Protokoll fällt, unabhängig von der Quelle - Sysmon oder Windows. Sie enthalten allgemeine Informationen:

  • Der Name des Ereignisanbieters.
  • EID
  • Die Zeit, zu der das Ereignis protokolliert wurde.
  • Der Name des Magazins, von dem wir diese Veranstaltung erhalten haben.
  • Der Host, auf dem das Ereignis aufgetreten ist.

Der Name des Anbieters und das Protokoll nach der Verbindung werden vom Analysten normalerweise nicht verwendet. Sie ermöglichen es jedoch zu verstehen, wo und wer die Protokolle schreibt. Dies ist wichtig, wenn der Erfassungsprozess noch nicht begonnen hat. Zeit, Host und EID sind die Hauptbaken, mit denen die primäre Filterung von Ereignissen durchgeführt wird.

Unter den Feldern, die ich besonders erwähnen möchte, ist die GUID sowohl für die Benutzersitzung als auch für die untergeordneten und übergeordneten Prozesse nur in den Sysmon-Protokollen vorhanden. Und aus Seltsamkeiten in dasselbe Sparschwein - die Prozess-ID (neu und übergeordnet) in Windows-Ereignissen wird hexadezimal geschrieben, obwohl sie im selben Task-Manager in Dezimalschreibweise angezeigt wird. Wie das Sprichwort sagt, viel Spaß beim Debuggen ("-Willst du dich verbessern? -Github") ...

Die Befehlszeile beim Starten eines Prozesses in Windows-Ereignissen hat je nach dem zum Starten verwendeten Dienstprogramm ein anderes Format. Aber in Sysmon wollten und konnten die Autoren - das Format hängt nicht von anderen Eingaben ab. Ich werde die Gründe nicht beurteilen, aber die Ersteller von SIEM-Inhalten werden dank Microsoft nicht darüber schreiben, das ist sicher.

Das Hauptunterscheidungsmerkmal von Sysmon für dieses sowie für andere Ereignisse, die dieses Feld enthalten, würde ich den Hash der ausführbaren Datei nennen. Das Hash-Format wird in der Sysmon-Konfiguration ausgewählt.

Wieder aus den zusätzlichen interessanten Sysmon-Boni - dem Feld Regelname. Dies ist in der Tat ein Tag, mit dem bestimmte Filter in der Konfigurationsdatei markiert und dann bei der Analyse von Ereignissen verwendet werden können. Zum Beispiel können wir sagen, dass sich der Beginn von Prozess X auf Taktik Y oder Technik Z bezieht. Dieser Ansatz ist sowohl aus Sicht des Analysten als auch aus Sicht des Inhaltsentwicklers SIEM oder Sysmon interessant - er ermöglicht es uns, den Grund zu verstehen, warum wir uns entschieden haben, dieses Ereignis zu sammeln.

Fazit


Sysmon ist viel besser, um diese Gruppe von Ereignissen zu beheben:

  • GUID , , , , ID ( ). , , . . ID , , SIEM, . GUID, — .
  • — — , , . — Sysmon , SIEM ( ). - — , . , SIEM . , , IBM QRadar. , - . , , — Windows , , .
  • Rule Name .
  • Die Anwendbarkeit der verbleibenden eindeutigen Felder, die in Windows-Ereignissen, die in Sysmon-Ereignissen, eine Rolle spielen, wie sie auf Englisch von Fall zu Fall sagen. Um über die Auswahl eines bestimmten Protokolls zu entscheiden oder diese im Allgemeinen zu kombinieren, muss dies daher auch von Fall zu Fall erfolgen.

Netzwerkverbindungen


Aufzeichnen dieser Ereignisse unter Windows: Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Konfiguration der Überwachungsrichtlinien - Überwachungsrichtlinien - Objektzugriff - Verbindung der Überwachungsfilterplattform

Warum haben Sie sich entschieden, sich auf die Ereignisse der Windows Filtering Platform (WFP) und nicht auf die Windows-Firewall zu konzentrieren? Die Antwort ist einfach. Nach unserer Praxis befinden sich die Endpunkte in Form von Antivirenprogrammen ohnehin bereits auf den Hosts. Obwohl sie nicht zur Überwachung der grundlegenden Ereignisse des Systems ausgelegt sind (weshalb sie für unsere Zwecke nicht geeignet sind), enthalten sie in modernen Realitäten immer eine Host-Firewall. Aus diesem Grund wird die Windows-Firewall normalerweise einfach abgebrochen, um Doppelarbeit zu vermeiden. Dementsprechend schreibt niemand an den Colonel ... WFP, obwohl es den Verkehr filtern kann, verwenden wir ihn nur zur Überwachung. Daher fehlt eine Vervielfältigung.


Die Tabelle zeigt, dass, wenn wir versuchen, uns auf Windows-Ereignisse zu verlassen, der Benutzerultraschall und der vollqualifizierte Domänenname der interagierenden Hosts durch Ereignisanreicherung wiederhergestellt werden müssen. Wenn Sie darüber nachdenken, ist es für uns jedoch wichtiger zu wissen, welcher Prozess die Verbindung hergestellt hat und nicht welcher Benutzer. Beispielsweise wird die Malware an das C & C-Center gesendet. Auf jeden Fall möchten wir herausfinden, wer den Prozess gestartet hat, oder einen Vorfall erstellen, basierend auf dem Verständnis, dass der Editor nicht ins Internet selbst geht (d. H. Basierend auf den im Ereignis verfügbaren Informationen).

Und mit FQDN ist es noch einfacher: Alle modernen Systeme enthalten die CMDB-Komponente als grundlegende oder zusätzliche Funktionalität. Wenn nicht, lohnt es sich auf jeden Fall, sich mit einer Drittanbieterlösung zu versorgen. Die Kenntnis Ihrer Infrastruktur ist die Grundlage für die Informationssicherheit im Allgemeinen. Die Informationen sind also entweder durch Anreicherung oder über eine Asset-Karte verfügbar, die ihre Verwendung in Korrelation ermöglicht. Die Hauptsache ist, wenn möglich, nicht zu vergessen, DHCP-Protokolle zu verbinden, damit die Informationen auf dem neuesten Stand sind.

Alle anderen eindeutigen Felder sind nicht so wichtig, zum Beispiel:

  • Berühmte Häfen. Wir würden uns nicht auf dieses Feld verlassen - es ist nicht umsonst, dass es Mittel gibt, um Anomalien im Verkehr zu erkennen, wenn beispielsweise der SSH-Tunnel eher über Port 80 als über HTTP verläuft.
  • Verkehrsrichtung. Wenn Sie die Host-ID (IP oder FQDN) und die Quelle / das Ziel der Verbindung kennen, können Sie die Richtung leicht berechnen.

Fazit


Und in diesem Fall gewinnt Sysmon, aber weniger bedeutend - GUID, FQDN, User bieten einen Komfort, der mit SIEM-Lösungen oder Lösungen von Drittanbietern durchaus möglich ist. Trotzdem bedeuten kleine Anstrengungen nicht Null.

Prozessabschluss


Im Allgemeinen wird das Ereignis, wie bereits oben erwähnt, nicht sehr oft verwendet, aber ...


Wenn es gebraucht wird, gibt es einen klaren Gewinn auf der Seite von Windows. Wir fügen nur hinzu, wie die Protokollierung aktiviert wird, und gehen direkt zu den Schlussfolgerungen.

Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Konfiguration der Überwachungsrichtlinien - Überwachungsrichtlinien - Detaillierte Nachverfolgung - Beendigung des Prüfprozesses - Erfolgreich

Fazit


In diesem Fall wird der Vorteil der nativen Betriebssystemprotokollierung erreicht durch:

  • Zeigt den Benutzer an, der den Vorgang abgeschlossen hat.
  • Das Vorhandensein eines Exit-Codes, der über den regelmäßigen Abschluss des Prozesses sowie über Fehler sprechen kann.

Treiber herunterladen


Dieses Windows-Ereignis ist im Gegensatz zu den anderen standardmäßig aktiviert und wird in das Systemprotokoll aufgenommen. Es gibt nicht viele informative Felder in diesen Veranstaltungen.


Und wieder sofort zu den Schlussfolgerungen.

Fazit


In dieser Gruppe liefern Sysmon-Ereignisse dem Analysten viel nützlichere Informationen. Beispielsweise ist laut Windows-Ereignissen nicht einmal klar, welche Treiberdatei verwendet wurde. Daher in dieser Gruppe von Windows in expliziten Außenseitern.

Prozesszugriff


Wir würden diese Gruppe von Ereignissen nicht als grundlegend einstufen, sondern als etwas fortgeschritten. Aus Sicherheitsgründen kann die Veranstaltung von großem Interesse sein. Es gibt viele Möglichkeiten, wie ein böswilliger Prozess Ihr legitimes kleines "besser" machen kann. Natürlich nicht wegen Altruismus, sondern wegen böswilliger Handlungen. Und die betrachteten Veranstaltungen werden uns nur helfen, viele Möglichkeiten für solche Kreativität zu entdecken. Diese Protokolle werden unter Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Überwachungsrichtlinienkonfiguration - Überwachungsrichtlinien - Objektzugriff - Überwachungskernelobjekt - Erfolgreich aktiviert


Windows hat zwei Vorteile. Erstens die Zuordnung des Benutzers, von dem aus der Quellprozess arbeitet. Wie oben erwähnt, ist der Vorteil normalerweise vernachlässigbar. Und zweitens HandleID und Zugriffsrechte.

Wenn das Interesse an Zugriffsrechten klar ist, ist HandleID nur für die Suche nach verwandten Ereignissen nützlich. Es ist erforderlich, um die Benutzerinteraktion durch Prozesse mit Betriebssystemobjekten zu organisieren - dieselben Prozesse (deren Threads), Dateien usw. Dementsprechend können zusätzliche Ereignisse zeigen, wie und an wen es ausgegeben wurde und wann das erforderliche Handle für den Zugriff widerrufen wurde.

Wenn Sie das Thema Objekte und Handle zum ersten Mal berühren und Aktionen mit ihnen protokollieren, ist es wichtig, zwei Dinge zu beachten.

Um die oben genannten zusätzlichen Schritte zu protokollieren, ist es zunächst wichtig, zusätzliche Einstellungen für Überwachungsrichtlinien zu aktivieren, insbesondere Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Konfiguration der Überwachungsrichtlinien - Überwachungsrichtlinien - Objektzugriff - Manipulation des Überwachungshandles - Erfolgreich. Es sei daran erinnert, dass das Volumen dieser Ereignisse sehr groß sein kann. Der Griff wird nach Eingang einer Anfrage ausgestellt und spiegelt die beanspruchten Rechte wider. Aber warum können wir nicht das gleiche Ereignisvolumen direkt von der Prüfung des Zugriffs auf Objekte erwarten?

Dies liegt daran, dass zweitens SACL für das Objekt aktiviert werden soll, dessen Steuerung geplant ist. Tatsächlich ist dies eine Liste ähnlich der Liste der DACL-Zugriffsrechte, die bestimmt, ob das mit seinem Token erstellte Subjekt oder Objekt beim Versuch, auf das Objekt zuzugreifen, Erfolg oder Misserfolg erhält. Die SACL bestimmt jedoch in ungefähr derselben Form nicht die Rechte zur Interaktion mit dem Objekt, sondern ob Sicherheitsereignisse generiert werden, wenn bestimmte Rechte angefordert und ausgeübt werden. Diese Ereignisse umfassen nicht bereits angeforderte, aber tatsächlich verwendete Zugriffsrechte.

Als Ergebnis erhalten wir einen Filter, mit dem Sie nur den Zugriff auf für uns wichtige Objekte und nur die für uns wichtigen Zugriffstypen protokollieren können. Im Gegenzug müssen wir jedoch eine SACL direkt an jedes dieser Objekte anhängen oder angeben, dass die SACL vom übergeordneten Objekt geerbt wird. Dies kann natürlich durch verschiedene Methoden automatisiert werden. Es ist jedoch unwahrscheinlich, dass die Konfiguration solcher Automatisierungstools bequem ist. Im Gegensatz zu einer einfachen Sysmon-Liste, die auch Platzhalter enthalten kann, wenn auch eigenartige. Wir werden in einem separaten Abschnitt über das Filtern in Sysmon sprechen.

Glücklicherweise ist für Objekte vom Typ standardmäßig bereits ein SACL-Prozess für die Kernel-Version 6.3 und höher vorhanden. Wenn jemand einen Weg angeben kann, wie diese SACL empfangen werden soll (Empfehlungen aus diesem Artikelwir haben es nicht erfüllt), es wird interessant sein zu hören / diskutieren.

Auf der Sysmon-Seite gibt es neben den bereits besprochenen GUIDs und Regelnamen noch einige weitere interessante Bereiche. Zunächst die PID des Zielprozesses. Damit können Sie die nachfolgende Aktivität des infizierten Objekts überwachen, da eine ausführbare Datei mehrere Instanzen enthalten kann. Zweitens das CallTrace-Feld, das die Aktionen der Ereignisquelle im Ziel erfasst. Schauen Sie sich das an und stellen Sie fest, dass „Fingerspitzengefühl und kein Betrug“ nicht nur Worte sind. Andererseits ist eine solch detaillierte Analyse bereits das Schicksal der Forensik. Und wer eine dedizierte Forensik hat, steht höchstwahrscheinlich nicht am Anfang des Weges zum Aufbau eines Überwachungssystems.

Fazit


In dieser Gruppe unterscheiden sich Ereignisse in einer relativ großen Anzahl von Feldern. Wenn diese Informationen jedoch bei Windows-Ereignissen höchstwahrscheinlich die Bequemlichkeit einer ersten Analyse bieten, erfasst Sysmon eindeutige Daten, die auf andere Weise nur schwer zu erhalten sind. Daher bleibt der Vorteil bei Sysmon.

Dateierstellung


Diese Kategorie ist in Windows wie folgt enthalten: Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Überwachungsrichtlinienkonfiguration - Überwachungsrichtlinien - Objektzugriff - Überwachungsdateisystem - Erfolgreich


Wie aus der Tabelle hervorgeht, ähneln alle Vor- und Nachteile dieser Gruppe den oben bereits beschriebenen. Einschließlich der Vor- und Nachteile von SACL (für Dateien und Ordner für alle (alle) Benutzer, einschließlich Eigenschaften - Sicherheit - Erweitert - Überwachung - Hinzufügen - Jeder - Erfolg - Schreiben (für Dateien) oder Ändern (für ein Verzeichnis)).

Sie können SACL auch global für Dateien festlegen, indem Sie es unter Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Konfiguration von Überwachungsrichtlinien - Überwachungsrichtlinien - Objektzugriff - Globale Objektzugriffsüberwachung - Dateisystem definieren. Die Anzahl der Ereignisse, insbesondere bei temporären Dateien, wird jedoch proportional zum Umfang der Vorgänge zunehmen. Ich würde nicht sagen, dass dies ein effektiver Ansatz ist, er ist nur für einen kleinen Teil der Operationen möglich.

Ich möchte die merkwürdigen Besonderheiten der Protokollierung erwähnen, die hier beginnen. Für diese Gruppe ist nicht festgelegt Windows - Ereignis , wenn eine Datei durch Powershell zum Beispiel erstellt wird, die C - New-Item: \ ForTest \ test.t . Gleichzeitig wird dieselbe Aktion in den Sysmon-Protokollen perfekt angezeigt.

Fazit


Diese Ereignisgruppe wird am besten mit Sysmon aufgezeichnet.

Registrierungsaktionen


In Bezug auf die Gruppe haben wir bisher nur eine Veranstaltung aufgenommen. Dieser Trend wird sich hier ändern.


Die Protokollierung dieser Ereignisse wird wie folgt konfiguriert: Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Überwachungsrichtlinienkonfiguration - Überwachungsrichtlinien - Objektzugriff - Überwachungsregistrierung - Erfolgreich.

SACL für alle (alle) Benutzer ist wie folgt definiert: regedit.exe - Registrierungszweig - Berechtigungen - Erweitert - Überwachung - Jeder - Erfolg - Erweiterte Berechtigungen - Vollzugriff oder Wert festlegen, Unterschlüssel erstellen, Link erstellen, Löschen, DAC schreiben.

Sie können SACL auch global für Dateien festlegen, indem Sie es unter Computerkonfiguration - Richtlinien - Windows-Einstellungen - Sicherheitseinstellungen - Erweiterte Konfiguration von Überwachungsrichtlinien - Überwachungsrichtlinien - Objektzugriff - Globale Objektzugriffsüberwachung - Registrierung definieren. Die Nachteile des Ansatzes ähneln den gleichen Dateivorgängen.

Konzentrieren Sie sich sofort auf die Einschränkungen. Für Sysmon alle Vorgänge (Erstellen, Ändern, Löschen) mit Wert- oder Schlüsselerhöhungsereignissen (außer dem Umbenennen von Wert). Für Windows:

  • Alle Operationen mit Value Raise-Ereignissen.
  • Das Erstellen eines Schlüssels löst keine Ereignisse aus.
  • Das Umbenennen des Schlüssels löst nur das Access-Ereignis aus. Der neue Schlüsselname wird nicht angezeigt. Die im Ereignis angegebenen angeforderten Rechte haben keine intuitiv eindeutige Übereinstimmung mit der Operation. Somit kann der Umbenennungsvorgang nur durch die Ausnahmemethode bestimmt werden - es gibt kein Löschereignis 4660 mit dieser HandleID.
  • Das Entfernen des Schlüssels löst das Ereignis 4663 aus, gefolgt von 4660.

Zusätzlich zu den in den vorherigen Abschnitten beschriebenen Feldern ist zu beachten, dass Windows-Ereignisse alte und neue Daten von Namen und Werten von Schlüssel und Wert enthalten, die während der Untersuchung helfen können, das Motiv des Angreifers zu verstehen. Insbesondere wenn die Anfangswerte nicht Standard oder typisch sind und die Konfiguration, einschließlich der Registrierungsdaten des untersuchten Computers, nicht außerhalb des Hosts gespeichert wird.

Fazit


Wie wir sehen können, gibt es strengere Einschränkungen für die Windows-Protokollierung. Und um einige Fakten zu korrigieren, ist überhaupt eine „Korrelation“ erforderlich, wenn auch die einfachste. Es ist jedoch in der Lage, eine größere Menge wirklich nützlicher Informationen bereitzustellen. Es ist schwierig, einem der Teilnehmer für diese Veranstaltungsgruppe den Vorzug zu geben.

WMI-Konfiguration


Wir gehen zur vorletzten Gruppe von Ereignissen über. Dies sind WMI-Ereignisse. Ein Angreifer kann einen Filter (Filter) erstellen, der Ereignisse über eine Änderung des Systemstatus empfängt, in unserem Beispiel eine Änderung des Status eines Dienstes. Und um bestimmte Aktionen basierend auf den von diesem Filter empfangenen Ereignissen auszuführen, wird ein Verbraucher erstellt. In unserem Fall ist dies ein Eintrag in der Protokolldatei. Als nächstes muss er den Filterausgang mit dem Verbrauchereingang verbinden und eine Bindung zwischen dem Filter und dem Verbraucher herstellen. Es wird sich ein System herausstellen, das unter bestimmten Bedingungen funktioniert. Wird oft für Persistenztaktiken verwendet . Genau in der beschriebenen Reihenfolge werden die Ereignisse 19-21 Sysmon aufgezeichnet.

Es ist wichtig zu verstehen, dass das Erstellen eines Filters oder Verbrauchers an sich keine Bedrohung darstellt, aber natürlich Teil eines Angriffs sein kann. Darüber hinaus kann für böswillige Aktivitäten ein vorhandener Filter, ein Verbraucher oder beides verwendet werden. Hier ist es wie mit einem Messer oder, näher am Thema der Ressource, mit verschlüsselten Messenger. Die Frage ist nicht im Tool, sondern in seiner Verwendung.

Schauen wir uns den Tisch genauer an.


Ein wichtiger Punkt, der zuallererst beachtet werden sollte - Ereignis 5861 wird im angegebenen Protokoll nur aufgrund der Tatsache der Erstellung oder nachfolgenden Änderung (einschließlich Filter und Verbraucher) des Bundles generiert. Dies erleichtert einerseits die Verfolgung mutmaßlich böswilliger Aktivitäten (es ist keine Korrelation zwischen zwei oder drei Ereignissen erforderlich), wenn nicht nur eine Gruppe darin erstellt wird. Andererseits verpassen wir die Startzeit dieser Aktivität, wenn der Filter oder Verbraucher genau im Rahmen und im Voraus erstellt wird.

Ist das kritisch? Von Fall zu Fall. Wenn wir beginnen, die Abfolge eines Vorfalls abzuwickeln und feststellen, dass vor zwei Jahren ein atypischer und angeblich böswilliger Filter oder Verbraucher erstellt wurde, stellen wir sofort fest, dass die Angreifer seit mehr als zwei Jahren bei uns zu Hause sind. Und zumindest bis zu dieser Tiefe müssen Spuren des Angriffs gesucht werden. Wie oft passiert das? Dies ist die Hauptfrage.

Wenn jedoch Änderungen am Filter oder am Verbraucher des vorhandenen Bundles vorgenommen werden, wird das gesamte Bild in einem einzigen Ereignis angezeigt. Während Sysmon nur die Änderungen (das Objekt) widerspiegelt, die vorgenommen wurden.

Unter anderem: Bei Sysmon-Ereignissen werden Daten in einer strukturierteren Form und in einem bequemeren Format wiedergegeben. Beispielsweise wird anstelle der SID in einem atypischen Format die Anmeldung des Benutzers sofort angezeigt. Die Daten sind jedoch etwas geringer. Vielleicht ist dies für Ihren Fall kritisch.

Wir schließen mit Einschränkungen. Erstens konnten wir diese Ereignisse trotz der Tatsache, dass dieses Journal seit Windows 2012 (Kernel 6.2) vorhanden ist, nicht einmal für Kernel 6.3 (2012R2) abrufen, der im Artikel untersucht wird. Möglicherweise liegt dies am Fehlen von Patches.

Zweitens nach dem Autor dieserArtikel, der Filter für Timer-Ereignisse wird von Sysmon nicht festgelegt. Es wäre möglich, kein Wort zu nehmen, sondern zu überprüfen. Darüber hinaus ist die Version von Sysmon alt. Aber hier ist ein Präzedenzfall wichtig - es gibt nicht wenige Arten von Filtern und WMI-Verbrauchern. Aus einer solchen Studie, ergänzt durch Details, könnte ein separater Artikel erstellt werden. Testen Sie einfach die Zieltypen, um genau zu verstehen, welche registriert werden.

Fazit


In diesem Fall sind wir mit der Verwendung von Windows-Ereignissen besser vertraut. Unter dem Gesichtspunkt der Zweckmäßigkeit: Bei mehr Daten ist keine primäre Korrelation erforderlich. Unter dem Gesichtspunkt der Zielsetzung wird also die Schaffung eines Mechanismus (basierend auf neuen, modifizierten oder vorhandenen Teilen) und nicht dessen Einzelteile festgelegt.

DNS-Abfragen


Wir gehen also zur letzten Gruppe über, die verglichen wird, aber noch weit vom Abschluss unseres Artikels entfernt. Dieser Typ und die entsprechenden Ereignisse sind nicht nur durch das Erscheinen in unserem Artikel, sondern auch durch das Hinzufügen von Sysmon zum Toolkit aktuell.

In den letzten Jahren ist das Thema der Verwendung von DNS für andere Zwecke, beispielsweise zum Empfangen von Befehlen von C & C oder zum Stehlen von Informationen über diesen Kanal, populär geworden. Höchstwahrscheinlich nicht von alleine - wir würden die Geschichten über eine solche Verwendung von ICMP- und DNS-Kanälen auf Null verweisen. Zu dieser Zeit waren vertraute Studenten in der Verkapselung des Spielzeugverkehrs ausgefeilt, um die begehrten Spieleserver vom Netzwerk des Instituts über die einzig erlaubten Kanäle (Hallo, Zhenya) zu erreichenTumbochko!). Dies machte es möglich, die Zeit irgendwie langweilig zu verbringen oder ihre Labore schnell zu meistern. Und es war kaum ihre Idee.

Vor nicht allzu langer Zeit wurde diesem Leckkanal ein Konzept wie DoH hinzugefügt, das die Erkennung von verdächtigem DNS-Verkehr auf Netzwerkebene erschwerte.

Oder vielleicht war es nur ein Marketingtrick - einen neuen zu verkaufen, der auch ein vergessener alter ist. Oder der Beginn des weit verbreiteten Auftretens solcher Kanäle bei nachweisbaren böswilligen Aktivitäten. Wir haben uns nicht tief mit diesem Thema befasst und waren bereit, Getreide zu sammeln - plötzlich beschließt einer der Leser, ein wenig Weisheit in die Kommentare zu stecken.

Also näher am Punkt. Aktivieren Sie die Ereignisanzeige - Anwendungs- und Dienstprotokolle - Microsoft - Windows - DNS-Clientereignisse - Betrieb - Kontextmenü - Protokoll aktivieren.


Trotzdem wie bereits besprochen. Bei den Informationen zum Thema achten wir auf die explizite Angabe des Bildes der ausführbaren Datei, die die Anforderung im Sysmon-Ereignis ausgeführt hat.

Wenn wir über das Objekt sprechen, gibt es viel mehr Informationen in den Windows-Protokollen. Aber es gibt mehrere wichtige "Aber". Erstens werden die Informationen auf mehrere Ereignisse mit allen Konsequenzen verteilt.

Zweitens werden die Informationen nicht intuitiv dargestellt. Das Entschlüsseln des größten Teils des Wissens erfordert Kenntnisse darüber, wie die Felder des Pakets gebildet werden, und die Fähigkeit, diese Daten wieder in Fakten umzuwandeln, die die Entscheidung des Analytikers erleichtern. Wir können sagen, dass der Analyst tatsächlich nicht umsonst ein Gehalt bekommt und warum nicht hinsetzen und es herausfinden. Ja, das ist richtig. Aber ich möchte Sie daran erinnern, dass es sich um ein kleines Team ohne engmaschige Spezialisten handelt, vor dem die Aufgaben der Informationssicherheit kein Ende haben. Und wenn für jedes von SIEM analysierte Ereignis eine solche Aufgabe auf ihn fällt, wird er sie in einigen Jahren nicht mehr einholen.

Fazit


Für diese Gruppe ist der Gewinner schwer zu bestimmen. Sysmon bietet eine lakonische Version an, aus der Sie leicht einen guten Teil nützlicher Informationen herausholen können. Windows bietet eine erweiterte Option. Es bleibt zu "nähen", sich mit dem Inhalt zu befassen und sich zu fragen, ob es Zeit war, NTA einzuführen?

Einzigartige Sysmon-Ereignisse


Wir haben Sysmons einzigartigen Ereignissen Folgendes zugeschrieben:

  • EID 4, 16. Obwohl es über Windows-Protokolle verfolgt werden kann, geben sie nur Auskunft über die Ereignisse in Sysmon. Dementsprechend machen sie in ihrer Abwesenheit keinen Sinn.
  • EID 2 - EID 4663 kann als analog angesehen werden. Aber selbst unter Berücksichtigung der darin enthaltenen Zugriffsrechtslisten ist das Ereignis nicht so detailliert wie EID2 und wird mit anderen Windows-Ereignissen nicht auf einen solchen Status angereichert.
  • EID 7-9, 17 — . ETW. , , .
  • EID 15 — , ETW. , — .
  • EID 18 — (named pipes) . , -, . -, , . ETW.


Es gibt drei Optionen zum Filtern von Ereignissen auf der Quellseite.

Die erste ist nur für Windows-Ereignisse und nur zur Überwachung des Zugriffs und der Vorgänge mit Objekten verfügbar. Implementiert mit SACL. Zu den Nachteilen dieses Ansatzes gehört die Komplexität der detaillierten Einstellungen (Sie können beispielsweise nicht nur vorhandene oder erstellte Dateien mit der Erweiterung .exe überwachen). Zu den Vorteilen gehört die Möglichkeit, die Liste der Benutzer einzuschränken, für die Vorgänge mit dem Objekt aufgezeichnet werden.

Die zweite Option ist sowohl für Windows-Ereignisse als auch für Sysmon-Ereignisse verfügbar: Verwenden von Xpath unter Berücksichtigung der Einschränkungen, die von Microsoft eingeführt wurden. Da die Methode für beide Quellen verfügbar ist, geht die Beschreibung über den Rahmen dieses Artikels hinaus.

Und die dritte ist die Sysmon-Konfiguration. Es gibt viele Möglichkeiten:

  • Platzhalteremulation - enthält (beliebig | alle), schließt (beliebig | alle) aus, endet mit, beginnt mit. Die Verwendung von enthält | schließt alles aus, um Ausdrücke wie "C: \ Windows \ *. Exe" zu emulieren.
  • Genaue Übereinstimmung - ist, ist nicht, Bild.
  • Arithmetik - weniger als, mehr als.

Es ist zu beachten, dass eine solche Filterung nicht für alle Felder verfügbar ist. Beispielsweise können Sie keine Hashes von Standardsoftware auf die Whitelist setzen, um Prozesse zu erstellen, an denen wir nicht interessiert sind. Ein Beispiel aus unserer Erfahrung - der legitime Prozess git.exe hat Zehntausende von Startereignissen pro Tag auf den Hosts unserer Entwickler erstellt. Vielleicht könnte gerade in diesem Fall sein Verhalten verschärft werden, wodurch diese Welle von Ereignissen verringert wird. Es ist jedoch keine gute Idee, ausführbare Dateien nach Bildnamen auszuschließen. Nun, vielleicht nur ein Antivirus mit aktivierter Selbstverteidigung.

Sysmon ist auch nur auf dem Weg zu einer ausgeklügelten Filterung, indem Bedingungen aus verschiedenen Bereichen kombiniert werden. Sie können nur eine Gruppe von Regeln für jede EID erstellen, die durch UND-Beziehungen kombiniert wird, und nur eine mit ODER-Beziehungen. Dementsprechend können Bedingungen der Form (A und B) oder (C und D) nicht mehr geschrieben werden. Abhängig vom gefilterten Strom kann diese Tatsache keinen signifikanten Vorteil bringen, aber auch ein greifbares Ergebnis liefern.

Andere Anbieter von kostenlosen Basisveranstaltungen


In diesem Abschnitt möchte ich zunächst auf den ETW- Mechanismus (Event Trace for Windows) eingehen . Sowohl die in Windows als auch in Sysmon integrierten Protokolle protokollieren Ereignisse mithilfe dieses Mechanismus. Tatsächlich können wir für jede Aktion im System ein Ereignis erhalten. Der einfachste Weg, um das potenzielle Volumen solcher Ereignisse zu ermitteln, besteht darin, die Option Ereignisanzeige - Ansicht - Analyse anzeigen und Debug-Protokoll anzeigen zu aktivieren. Damit Ereignisse Ihr System nicht sofort füllen, wird jedes Protokoll separat in seinem Kontextmenü aktiviert. Sie sehen sich diese Güte an und stellen sich unwillkürlich eine Frage: Warum brauchen wir Sysmon mit einer solchen Menge verschiedener Ereignisse?

Tatsache ist, dass diese Protokolle ursprünglich zum Debuggen und nicht zu Sicherheitszwecken gedacht waren. Daher wird ihre zentralisierte Sammlung nicht bereitgestellt. Insbesondere finden Sie den FQDN des Hosts, auf dem sie erstellt wurden, nirgendwo. Die Frage kann natürlich von Dienstprogrammen von Drittanbietern von klein bis groß gelöst werden, von Skripten bis hin zu vollwertigen Protokollierungsdiensten. Sie müssen sich jedoch daran erinnern, dass dies zusätzliche Software in einem großen Unternehmen und dementsprechend eine separate Aufgabe ist. Ich möchte Sie daran erinnern, dass wir in der Einleitung bei zusätzlichen Aktivitäten zur Installation von Software vom Prinzip des Minimalismus ausgegangen sind.

Und zweitens berichten diese Protokolle so detailliert über jedes Niesen, dass sie auch die Informationen Stück für Stück auswählen müssen. Journaleinträge sind wirklich atomar und erfordern eine vorherige Korrelation oder Anreicherung, damit der Analyst produktiv arbeiten kann. Schließlich weiß ein Programmierer, der seine Erstellung mithilfe dieser Ereignisse debuggt, wie alles funktionieren sollte. Und ein Sicherheitsbeamter, insbesondere mit einem breiten Profil, denkt auf viel höheren Abstraktionsebenen. Ja, außerdem wird nach unbekannten illegitimen Aktivitäten gesucht. Eine solche Problemstellung führt zu einem zusätzlichen Softwaremodul, das die Vorverarbeitung durchführt. Dies wird unser Konzept erneut komplizieren.

Obwohl wir nicht weit von der Protokollierung unter Windows entfernt sind, werden wir nicht vergessen, WMI zu erwähnen. Dieses Tool erfasst grundsätzlich Statusänderungen, ohne deren Quelle anzuzeigen. Als Beispiel für eine Ausnahme: Laden einer DLL: Zeigt das DLL-Modul selbst und den Prozess an, der es lädt. Aus Sicherheitsgründen erfordert dieses Ereignis jedoch auch eine Bereicherung, da hier die Informationen erschöpft sind. Im Allgemeinen sind Fischlosigkeit und Krebs Fische. Das Tool kann jedoch nur als Extra verwendet werden.

Eine weitere beliebte Option, die im Artikel nicht behandelt wird, ist die Osquery.. Die beiden Hauptgründe, warum wir diese Lösung hier nicht in Betracht gezogen haben, sind die geringe Häufigkeit von Produktaktualisierungen (abzüglich sowohl der Sicherheit als auch der Funktionalität) und die im Vergleich zu anderen Optionen erhöhte Verwendung von Systemressourcen (eine vollständige Datenbank ist enthalten). Vermutlich eignet sich die Lösung gut für Server, für die sie entwickelt wurde. Aber für Workstations, möglicherweise mit veralteter Hardware - kaum.

In letzter Zeit sind mehrere weitere Tools erschienen, die nicht so weit verbreitet sind wie die in Betracht gezogenen. Dazu gehören Velociraptor und SilkETW. Sie erfinden kein Fahrrad und arbeiten auch nach dem Windows-Standard - ETW. In Anbetracht des bereits zitierten Materialvolumens wurde beschlossen, diese Tools in eine separate Publikation zu unterteilen (da Zeit und Mühe sowie ein Gefühl der Nachfrage zur Verfügung stehen).

Allgemeine Schlussfolgerung


Im Verlauf des Vergleichs wurde gezeigt, dass Sysmon-Ereignisse mit Analoga normalerweise Windows-Ereignisse in ihren funktionalen Eigenschaften übertreffen. Einige Sysmon-Ereignisse haben einfach keine Alternativen.

Vergessen Sie jedoch nicht, dass zunächst die Lösung anhand Ihrer Aufgaben ausgewählt werden muss. Wenn Sie nur ein Überwachungssystem erstellen und im ersten Jahr Methoden zur Erkennung von sieben bis zehn Vorfällen implementieren möchten, wie Gartner es hinterlassen hat, sollten Sie über genügend Windows-Ereignisse verfügen. Und vielleicht viel mehr als ein Jahr.

Zweitens wird auch das Windows-Ereignisprotokollierungssystem ständig aktualisiert, und während des Schreibens dieses Artikels wurden Windows-EIDs wie 4798 und 4799 angezeigt. Es ist auch möglich, dass der Satz von Feldern ergänzt wird. Daher ist dieser Vergleich, obwohl er aufgrund der uns vorliegenden Informationen der vollständigste ist, nicht in Stein gemeißelt.

Und drittens ist Sysmon immer noch ein externes Instrument, das eine Reihe von Risiken birgt. Beispielsweise gab es Fälle, in denen die Protokollierung einzelner EIDs ohne Angabe von Gründen beendet wurde. In diesem Fall war die Aufzeichnung anderer Ereignisse wie gewohnt. Bedeutendere Kollegen behaupten, dass das Problem mit Speicherlecks in Version 10.41 zusammenhängt. Aber Release 10.42, in dem dieses Problem ganz oder teilweise geschlossen ist (mit Sysmons Changelog ist nicht alles so detailliert), hat unsere Probleme in dieser Richtung nicht gelöst. Nur die Deinstallations-Installations-Komponente hilft. Alle Sicherheit und einen schönen Tag!

Danke an TimurZinintfür Hilfe bei der Vorbereitung der Veröffentlichung.

UPD1 : Es stellt sich als sehr schwierig heraus, ein normales Änderungsprotokoll zu führen oder der Hauptbeschreibung neue Funktionen hinzuzufügen, wie wir festgestellt haben (danke, Onkel Dimshudv), ein Lastwagen mit Nishtyaks, der bereits vor 9 Monaten auf unserer Straße umgekippt ist ... Zusammenfassung: In Sysmon können Sie (A und B) oder (C und D) nur ...

All Articles