The integrated security mechanisms are the basis of the Windows operating system in terms of security. The security components that are not transparent to the user restrict the use of the operating system.
E INLEITUNG
Der Fokus dieser Analyse liegt sowohl auf der technischen Erläuterung der Sicherheitskomponenten als auch auf der Darstellung der Auswirkungen auf Benutzer und auf die Anwendungsentwicklung.
M ICROSOFT W INDOWS
Windows Internals
- Begriffsdefinitionen
- User-Mode / Kernel-Mode
- Prozesse
- Speichermanagement
- Zusammenfassung
Auf der linken Seite von Abbildung 1 ist die zuvor dargestellte traditionelle Struktur des Benutzermodus und des Kernelmodus dargestellt. Die VTLs bieten daher eine weitere horizontale Trennung zwischen Benutzermodus und Kernelmodus.
W INDOWS S ICHERHEIT
Integrierte Sicherheitsmechanismen
- Security identifiers
- Integritätslevel
- Tokens
- Impersonation
- Account Rights, Privileges und Super privileges
- User Account Control
- Trusted Platform Module
- Antimalware Scan Interface
- Bootvorgang sichern
- Address Space Layout Randomization
- Control Flow Guard
- Data Execution Prevention
- Kernel Patch Protection
- Zusammenhang
Im Betriebssystem gibt es mehrere Standard-„Berechtigungen“, die alle im Software Development Kit (SDK) definiert sind und mit „SE_“ beginnen. Dadurch ist es möglich, von außen zu überprüfen, ob ein Computer mit einem Rootkit infiziert ist oder nicht.
Übersicht und Zusammenhang der Sicherheitskomponenten
Allerdings können Schutzmechanismen auch nur im Kernel-Modus implementiert werden, es gibt also keine wirkliche „Sicherheitsgrenze“. Bei aktivem HyperGuard gibt es nun einen echten „Sicherheitsspielraum“ und beispielsweise ist eine Verschleierung nicht mehr nötig.
AppLocker
- Funktionsweise
- Konfiguration
- Auswirkungen auf Benutzer
- Auswirkungen auf die Applikationsentwicklung
Der Vorteil dieser XML-Dateien besteht darin, dass sie in ein GPO importiert werden können. Ohne AppLocker kann ein Benutzer mit Standardrechten keine Installation durchführen, tragbare ausführbare Dateien („portable Apps“) funktionieren jedoch weiterhin.
BitLocker
- Funktionsweise
- Konfiguration
- Auswirkungen auf Benutzer
- Auswirkungen auf die Applikationsentwicklung
Der Bootmanager greift auch auf das TPM zu, um einen authentifizierten Zugriff auf die Festplatte zu ermöglichen. Der TPM-Basisdienst (TBS) ist im Wesentlichen die Benutzermodusimplementierung von TPM.SYS. Um eine entsprechende Konfiguration durchführen zu können, stellt das TBS unter anderem den „TPM WMI Provider“ zur Verfügung.
Dies kann mit einem Microsoft-Konto synchronisiert, als Textdatei gespeichert (aber nicht auf der Festplatte, die Sie verschlüsseln möchten) oder gedruckt werden. Hinzu kommt der Aspekt, dass die Ausführung eines Betriebssystems eines Drittanbieters möglich ist, die Daten auf der Festplatte jedoch nicht problemlos manipuliert werden können. Ein nicht böswilliges Szenario wäre, dass das Betriebssystem beschädigt ist und die Daten von der Festplatte gesichert werden sollten.
Die Anwendungen wissen nicht, dass die Festplatte verschlüsselt ist und Festplattenaktivitäten nutzen weiterhin die bekannten APIs, um den Zugriff auf die Festplatte zu ermöglichen.
Controlled Folder Access
- Funktionsweise
- Auswirkungen auf Benutzer
- Auswirkung auf die Applikationsentwicklung
Sobald 100 % erreicht sind, wird dieser Status in manage-bde widergespiegelt und grafisch mit einem Schlosssymbol im Explorer auf dem entsprechenden Laufwerk angezeigt. Abhängig von der BitLocker-Konfiguration kann es beispielsweise erforderlich sein, beim Start ein Passwort einzugeben. Die Konfiguration von BitLocker ist jedoch auch ohne Interaktion möglich und somit für den Benutzer transparent.
In den Anforderungen [32] heißt es außerdem, dass „Windows Defender Real-Time Antivirus“ aktiv sein muss. Die Operation IRP_MJ_CREATE [33] ist eine „I/O Request Packet“ (IRP)-Anfrage, aber das Ergebnis ist nicht SUCCESS, sondern NAME NOT FOUND. In den relevanten Stacks konnten nur Kernel- (ntoskrnl.exe) und Filtermanager-Aktivitäten (FLTMGR.SYS) erkannt werden.
Die Anwendungsentwicklung kann keine besonderen Vorkehrungen treffen, da die Funktionalität ausschließlich von der Konfiguration der Systemverwaltung abhängt.
Windows Defender Application Control
- Funktionsweise
- Auswirkungen auf Benutzer/ die Applikationsentwicklung
Die Codeintegrität ist im Wesentlichen in den DLLs ci.dll und skci.dll implementiert. Der Unterschied besteht darin, dass die Prüfung „Bildabschnitte“ auf das Bild abzielt (im Wesentlichen bereitgestellt durch Hashing-Methoden). Ci.dll ist im normalen Kernel (VTL 0) implementiert, während skci.dll im „Secure Kernel“ (VTL 1) zu finden ist.
Eine wichtige Aufgabe von OslpProcessSIPolicy besteht darin, die Integrität der signierten WDAG-Richtlinie zu überprüfen. Nachdem die WDAG-Richtlinie überprüft und gelesen wurde, werden alle ausführbaren Dateien anhand der WDAG-Richtlinie überprüft. Daher ist es wichtig, dass die Code-Integritätsrichtlinie auf dem System generiert wird, ohne dass es bereits infiziert ist, da die Code-Integritätsrichtlinie bzw
Um WDAC nutzen zu können, ist es notwendig, die entsprechenden Einstellungen über Group Policies und Code Integrity Policy (.p7b-Datei) zu aktivieren [37].
Windows Defender Application Guard
- Konfiguration
- Auswirkung auf Benutzer
- Auswirkungen auf die Applikationsentwicklung
Das Definieren granularer Releases für Benutzer/Benutzergruppen erfordert weiterhin die Verwendung von AppLocker. Dies kann direkte Auswirkungen auf den Benutzer haben, da Dateien beispielsweise nicht mehr direkt auf dem Dateisystem des Hosts gespeichert werden können.
Windows Defender Credential Guard
- Funktionsweise
- Konfiguration
- Auswirkungen auf Benutzer
- Auswirkungen auf die Applikationsentwicklung
Für die Kommunikation mit der „Außenwelt“ wird weiterhin das Lsass-Verfahren genutzt, was die Passwörter betrifft, fungiert es jedoch nur noch als eine Art Proxy. Die Passwörter selbst liegen im sicheren VTL 1 LsaIso-Speicher und müssen vom Lsass-Prozess abgefragt werden. Um sicherzustellen, dass der Lsass-Prozess diese Informationen nicht lesen kann, wird die Nachricht verschlüsselt.
Der Lsass-Prozess empfängt somit alle Nachrichten, diese sind jedoch verschlüsselt und daher nicht einsehbar. Vor der Konfiguration von WDCG auf dem System werden die Registrierungsdaten des Lsass-Prozesses mit Mimikatz [43] gelesen. Nach der Aktivierung von WDCG und dem Versuch, die Anmeldedaten des Lsass-Prozesses mittels Mimikatz auszulesen, werden nur noch verschlüsselte Daten ausgegeben.
Allerdings können Anwendungen, die die Anmeldedaten verwalten möchten, bei Verwendung von WDCG nicht mehr aus dem Lsass-Prozess lesen [46].
Windows Defender Exploit Guard
- Funktionsweise
- Auswirkungen auf Benutzer
- Auswirkungen auf die Applikationsentwicklung
Mögliche Auswirkungen für den Benutzer sind, dass „Wireless Local Area Networks“ (WLAN) auf Basis von MS-CHAPv2 genutzt werden, die Passwörter jedoch nicht gespeichert werden können. Darüber hinaus können die gespeicherten Anmeldeinformationen für den Remotedesktop-Client nicht gespeichert werden und gehen nach der Installation von WDCG verloren. Die Anwendung fragt dann erneut nach den Anmeldedaten und diese werden dann sicher bei WDCG gespeichert.
Der Einsatz von WDEG ist, natürlich abhängig von der jeweiligen Umgebung, nicht flächendeckend einfach zu nutzen. Defender\Windows Defender Exploit Guard\ASR\Rules, um zu überprüfen, ob „ASR-Regeln“ richtig konfiguriert sind. Wenn WDEG aktiviert ist, funktionieren verschiedene Anwendungen möglicherweise nicht mehr (meistens ist die Reaktion ein Absturz der Anwendung).
Zu beachten ist auch, dass diese Mechanismen dann nicht mehr genutzt werden können, auch wenn es sich bei der Anwendung nicht um Schadsoftware handelt.
Windows Defender Firewall
- Funktionsweise
- Auswirkung auf Benutzer
- Auswirkung auf die Applikationsentwicklung
Für die Anwendungsentwicklung [26] gilt in diesem Zusammenhang insbesondere das Kapitel „Apps unterstützen Windows-Sicherheitsfunktionen“. Eine zentrale Komponente hierbei ist die „Base Filtering Engine“, die für IPSec und das „Firewall-Management“ zuständig ist. Außerdem ist „Windows Defender Firewall Authorization Driver“ der Treiber (Kernmodus) von „Windows Defender Firewall“ und in mpsdrv.sys implementiert.
Dabei ist zu beachten, dass der Client die Kommunikation mit dem Server aufbaut (eine ausgehende Verbindung) und nicht umgekehrt der Server mit dem Client. Eingehende Verbindungen werden standardmäßig blockiert, während ausgehende Verbindungen standardmäßig zugelassen werden (vorausgesetzt, der Client fordert immer benötigte Dienste an).
E LASTIC S TACK
Security Information and Event Management
Ein SIEM [67] sammelt Daten aus verschiedenen Quellen, normalisiert sie und analysiert sie auf sicherheitsrelevante Ereignisse. Eine Analyse des einzelnen Ereignisses könnte ergeben, dass die Maschine aufgrund eines „Blue Screen of Death“ (BSOD) nicht mehr erreichbar ist. „Endpoint Security“ bedeutet, dass das SIEM häufig über Informationen zu „Endpoint Security“-Produkten verfügt und auf den aktuellen Status beispielsweise der Definitionsaktualisierungen zugreifen kann.
Implementierung
- Konfiguration des Elastic Stacks
- Sichere Konfiguration des Elastic Stacks
- Einbindung des Windows 10 Clients
Die folgenden Parameter müssen in der Elasticsearch-Konfiguration korrekt eingestellt sein, damit der Elasticsearch-Server über das Netzwerk erreichbar ist: network.host, Discovery.seed_hosts und Cluster.initial_master_nodes. Die folgenden Parameter müssen in der Kibana-Konfiguration definiert werden, um die Netzwerkverfügbarkeit und Kommunikation mit dem Elasticsearch-Server zu ermöglichen: server.host und elasticsearch.hosts. Dieser Impuls kann Windows-Ereignisse nativ lesen und verarbeitet an den Elastic Stack senden.
Sicherheits- und Sysmon-Protokolle (siehe Kapitel 4.2.3.2) werden in der Winlogbeat-Konfiguration definiert, um sie an den Elastic Stack zu übertragen. Windows Event-log [73] gibt es seit Windows Vista und ist Teil der Event Tracing API für Windows (ETW). „Tasks“ sind als 16-Bit-Wert definiert und werden üblicherweise zusammen mit „Opcodes“ betrachtet.
9 „Raw Access Read“ Immer wenn ein Prozess mit dem \\.\-Tag versucht, etwas zu lesen, wird dies in diesem Ereignis protokolliert.
Elastic SIEM
- Testszenario 1: Exploit
- Testszenario 2: PowerShell
- Testszenario 3: Microsoft Office
- Testszenario 4: Login Bruteforce
- Testszenario 5: Passwort Dump Erkennung (Sigma Regel)
- Testszenario 6: Controlled Folder Access
- Testszenario 7: Kryptojacking
- Gesamtübersicht
In der aktuellen Version von Elasticsearch verfügt die Elastic SIEM-Anwendung über die zusätzliche Funktionalität „Discoveries“. Der Zweck der Szenarien besteht darin, zu untersuchen, was Elastic SIEM erkennt und wie es in Kibana dargestellt wird. Nach dem Verbindungsaufbau wurde die Netzwerkaktivität durch die bereits integrierte Elastic SIEM-Signalregel „Telnet Port Activity“ erkannt (siehe Abbildung 28).
In diesem Szenario muss eine bestimmte Sigma-Regel konvertiert und in Elastic SIEM importiert werden. Um eine Elastic SIEM-Regel zu definieren, die von der Sicherheitskomponente abhängt, muss eine entsprechende Kibana-Abfrage in KQL erstellt werden. Daher bietet dieses Regelwerk eine Integration von „Controlled File Access“ in das Elastic SIEM-System.
Dies bedeutet, dass innerhalb des Elastic SIEM-Systems keine weiteren Ereignisse generiert werden, wenn der Prozess zusätzliche CPU-Last verursacht.
R ELATED W ORK
Diese Angriffsdiagramme umfassen drei Zustände: eine Angriffsaktion, ein Szenario ohne Ausnutzung einer Schwachstelle (z. B. einen Ping) und ein Szenario mit Ausnutzung einer Schwachstelle. Im Rahmen dieser Arbeit wäre „AMSEC“ eine zusätzliche Software, die Informationen an den Elastic Stack sendet. Im gesamten Artikel wird zwischen extrahierenden Ereignissen und regenerierenden Ereignissen unterschieden.
Interessant ist hier das speziell entwickelte Format „Object Log Format“ (OLM), das im dritten Schritt zum Einsatz kommt. Auf die technischen Details von OLM wird bewusst nicht eingegangen, es besteht jedoch die Möglichkeit, Angriffe plattformunabhängig zu analysieren.
Z USAMMENFASSUNG
A USBLICK
Available: https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/hyper-v-on-windows-server. Available: https://support.microsoft.com/en-us/help/243330/well-known-security-identifiers-in-windows-operating-systems. Available: https://docs.microsoft.com/en-us/windows/security/threat-protection/device-guard/introduction-to-device-guard-virtualization-based-security-and-windows-defender-application - control.
Available: https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/customize-exploit-protection. Available: https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/attack-. Available: https://docs.microsoft.com/en-us/office/vba/library-reference/concepts/getting-started-with-vba-in-office.