Warnungen für Kubernetes-Cluster
Defender für Container bietet erweiterte Benachrichtigungsfunktionen für Bedrohungen für die Kubernetes (K8s)-Steuerungsebene und die Arbeitsauslastungslaufzeit. Microsoft Defender für Endpunkt (MDE) und Microsoft Defender Threat Intelligence erkennen auch Bedrohungen, die für K8s-Container relevant sind, und geben in Kombination mit dem Defender-Sensor einen erweiterten Kontext für umfassende und umsetzbare Warnungen, um Ihre K8s-Umgebung zu schützen.
Steuerungsebenenerkennung
In Kubernetes verwaltet und koordiniert die Steuerungsebene alle Ressourcen innerhalb des Clusters. Defender für Container identifiziert potenzielle Bedrohungen in der Kontrollebene, die die Sicherheit und Integrität des gesamten Clusters gefährden können, indem die Aktivitäten des K8s-API-Servers überwacht werden. Kritische Ereignisse werden erfasst, die potenzielle Sicherheitsbedrohungen angeben, z. B. verdächtige Vorgänge nach Dienstkonten oder Gefährdungen von Diensten.
Beispiele für verdächtige Vorgänge, die von Defender für Container erfasst werden, sind:
- Privilegierte Containerbereitstellungen können ein Sicherheitsrisiko darstellen, da sie Containern erhöhte Berechtigungen innerhalb des Hostsystems gewähren. Privilegierte Container werden auf nicht autorisierte Bereitstellungen, übermäßige Verwendung von Berechtigungen und potenzielle Fehlkonfigurationen überwacht, die zu Sicherheitsverletzungen führen könnten.
- Riskante Dienstrisiken im öffentlichen Internet können den Kubernetes-Cluster potenziellen Angriffen zur Verfügung stellen. Der Cluster wird auf Dienste überwacht, die unbeabsichtigt verfügbar gemacht, falsch konfiguriert mit übermäßig eingeschränkten Zugriffskontrollen oder fehlenden ordnungsgemäßen Sicherheitsmaßnahmen konfiguriert sind.
- Verdächtige Dienstkontoaktivitäten können auf nicht autorisierten Zugriff oder böswilliges Verhalten innerhalb des Clusters hinweisen. Der Cluster wird auf ungewöhnliche Muster wie übermäßige Ressourcenanforderungen, nicht autorisierte API-Aufrufe oder Zugriff auf vertrauliche Daten überwacht.
Workload-Laufzeiterkennung
Defender für Container verwendet den Defender-Sensor , um die K8s-Workload-Laufzeitaktivität zu überwachen, um verdächtige Vorgänge zu erkennen, einschließlich Workload-Prozesserstellungsereignisse.
Beispiele für verdächtige Workload-Laufzeitaktivitäten sind:
- Webshell-Aktivität – Defender für Container überwacht die Aktivität auf den ausgeführten Containern, um Verhaltensweisen zu identifizieren, die Webshellaufrufen ähneln.
- Krypto-Mining-Aktivität - Defender für Container verwendet mehrere Heuristiken, um Krypto-Mining-Aktivitäten auf den laufenden Containern zu identifizieren, einschließlich verdächtiger Downloadaktivitäten, CPU-Optimierung, verdächtige Prozessausführung und mehr.
- Netzwerkscantools – Defender für Container identifiziert die Verwendung von Scantools, die für böswillige Aktivitäten verwendet wurden.
- Binäre Drifterkennung – Defender für Cloud identifiziert die Ausführung von Workload-Binärdateien, die vom ursprünglichen Containerimage abgedrift wurden. Weitere Informationen finden Sie unter "Binary Drift Detection".
Simulationstool für K8s-Warnungen
Defender for Containers bietet ein Tool zum Simulieren verschiedener Angriffsszenarien in Ihrer K8s-Umgebung, wodurch Warnungen generiert werden. Das Simulationstool stellt zwei Pods in einem Zielcluster bereit: Angreifer und Opfer. Während der Simulation "attackiert" der Angreifer das Opfer mit realen Techniken.
Hinweis
Obwohl das Simulationstool keine schädlichen Komponenten ausführt, empfiehlt es sich, es auf einem dedizierten Cluster ohne Produktionsworkloads auszuführen.
Das Simulationstool wird mit einer Python-basierten CLI ausgeführt, die Helm-Diagramme im Zielcluster bereitstellt.
Installieren des Simulationstools
Voraussetzungen:
Ein Benutzer mit Administratorberechtigungen für den Zielcluster.
Defender für Container ist aktiviert, und der Defender-Sensor ist ebenfalls installiert. Sie können überprüfen, ob der Defender-Sensor installiert ist, indem Sie Folgendes ausführen:
kubectl get ds microsoft-defender-collector-ds -n kube-system
Ein Helm-Client wird auf Ihrem lokalen Computer installiert.
Python Version 3.7 oder höher wird auf Ihrem lokalen Computer installiert.
Zeigen Sie
kubeconfig
auf den Zielcluster. Für Azure Kubernetes Service können Sie Folgendes ausführen:az aks get-credentials --name [cluster-name] --resource-group [resource-group]
Laden Sie das Simulationstool mit dem folgenden Befehl herunter:
curl -O https://raw.githubusercontent.com/microsoft/Defender-for-Cloud-Attack-Simulation/refs/heads/main/simulation.py
Ausführen des Simulationstools
Führen Sie das Simulationsskript mit dem folgenden Befehl aus:
python simulation.py
Wählen Sie ein simuliertes Angriffsszenario aus, oder simulieren Sie alle Angriffsszenarien auf einmal. Die verfügbaren simulierten Angriffsszenarien sind:
Szenario | Erwartete Warnungen |
---|---|
Aufklärung | Mögliche Webshell-Aktivität erkannt Verdächtiger Kubernetes-Dienstkontovorgang erkannt Netzwerkscantool erkannt |
Laterale Bewegung | Mögliche Webshell-Aktivität erkannt Zugriff auf den Cloudmetadatendienst wurde erkannt |
Geheime Versammlung | Mögliche Webshell-Aktivität erkannt Zugriff auf vertrauliche Dateien wurde erkannt Mögliche geheime Aufklärung erkannt |
Krypto-Mining | Mögliche Webshell-Aktivität erkannt Kubernetes CPU-Optimierung erkannt Befehl innerhalb eines Containers, auf den zugegriffen wird ld.so.preload Mögliche Crypto Miner Download erkannt Eine Drift-Binärdatei, die im Container ausgeführt wird |
Webshell | Mögliche Webshell-Aktivität erkannt |
Hinweis
Während einige Warnungen in nahezu Echtzeit ausgelöst werden, kann es bis zu einer Stunde dauern.