Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Erzwingung von Kubernetes-Fehlkonfigurationen ist eine Funktion von Microsoft Defender for Containers, die Kubernetes-Ressourcen auswertet, bevor sie in einem Cluster zugelassen werden. Sie können sie verwenden, um Bereitstellungen zu überwachen oder zu blockieren, die nicht Microsoft bewährten Sicherheitsregeln entsprechen.
Nachdem Sie das Feature aktiviert haben, erstellt Defender für Container eine Standardsicherheitsregel namens "Standard-K8s-Falschkonfigurationsregel". Die Standardregel wird im Überwachungsmodus erstellt und gilt für alle Kubernetes-Cluster im Bereich. Sie können die Regelaktion in "Blockieren", "Konfigurieren einzelner Regeln und Parameter" ändern oder benutzerdefinierte Richtlinien für bestimmte Bereiche erstellen.
Verwenden Sie die Durchsetzung von Fehlkonfigurationsrichtlinien in Kubernetes zur Unterstützung:
- Überwachen oder Blockieren von Kubernetes-Workloads mit unsicheren Sicherheitskonfigurationen.
- Ausführung ohne Root-Rechte sowie zugelassene Benutzer- oder Gruppen-IDs erzwingen.
- Automatische Einbindung von Kubernetes-API-Anmeldeinformationen verhindern.
- Blockieren der Ausführung von Workloads im Kubernetes-Standardnamespace.
- Verhindern, dass Container vertrauliche Hostnamespaces wie PID, IPC oder Netzwerk freigeben.
- Beschränken Sie Container-Images auf vertrauenswürdige Registrys oder genehmigte Muster.
- Erzwingen Sie CPU- und Arbeitsspeicherbeschränkungen.
- Https für Kubernetes Ingress-Ressourcen erforderlich.
- Rechteausweitung und voll privilegierte Container blockieren.
- Container müssen ein schreibgeschütztes Stammdateisystem verwenden.
Voraussetzungen
Stellen Sie Folgendes sicher, bevor Sie beginnen:
Defender für Container ist im Abonnement- oder Cloudkonto aktiviert, in dem der Kubernetes-Cluster ausgeführt wird.
Ihr Kubernetes-Cluster wird unterstützt.
Der Cluster verwendet AKS, Azure Arc-fähige Kubernetes, EKS oder GKE.
Wenn Sie die automatische Bereitstellung verwenden: Die erforderlichen Defender für Containerkomponenten sind für Ihre Umgebung aktiviert:
- AKS und Azure Arc-fähige Kubernetes: Kubernetes-API-Zugriff ist aktiviert.
- AWS und GCP: Agentenloser Bedrohungsschutz ist aktiviert, um Audit-Protokolle zu erfassen.
Note
Agentless Threat Protection ist standardmäßig aktiviert, wenn Sie Defender für Container für AWS oder GCP aktivieren. Wenn sie deaktiviert wurde, aktivieren Sie sie, bevor Sie die Erzwingung von Kubernetes-Fehlkonfigurationen konfigurieren.
Wenn du Helm für manuelle Bereitstellung nutzt: Stelle sicher, dass Helm installiert ist (Helm-Installationsanweisungen) und in deiner Kommandozeilenumgebung verfügbar ist. Aktivieren Sie dann die Durchsetzung von Fehlkonfigurationen manuell mit Helm.
Kubernetes ValidatingAdmissionPolicy ist im Cluster aktiviert. Kubernetes 1.30 und höhere Versionen aktivieren diese Funktion standardmäßig.
Sie verfügen über die erforderlichen Berechtigungen:
- Um Bereitstellungszeiterzwingungsrichtlinien zu aktivieren und zu verwalten, benötigen Sie Abonnementbesitzer - oder Sicherheitsadministratorberechtigungen .
- Um Richtlinien und Überwachungsinformationen anzuzeigen, benötigen Sie einen Sicherheitsleser oder gleichwertige Berechtigungen.
Fehlkonfigurationserzwingung manuell mit Helm aktivieren
Bevor du anfängst, stelle sicher, dass du die Voraussetzungen erfüllt hast, einschließlich des Aktivierens von Defender für Container und der Überprüfung deiner Berechtigungen.
Zum manuellen Aktivieren der Erzwingung bei Fehlkonfigurationen mit Helm:
Befolgen Sie für Ihre Umgebung den Helm-Installationsleitfaden für den Sensor für Defender für Container.
Während der Helm-Chart-Installation verwenden Sie das aktuell unterstützte Chart-Tag. Verwenden Sie die folgende OCI-Artefaktreferenz, um das Microsoft Defender for Containers-Richtlinienpaket während der Sperrkonfiguration auszuwählen:
oci://mcr.microsoft.com/azuredefender-preview/microsoft-defender-for-containersSetzen Sie den folgenden Helm-Wert ein, um Fehlkonfigurationsrichtlinien im Defender Admission Controller zu aktivieren, sodass die Richtliniendurchsetzung auf Ihren Cluster angewendet wird:
defender-admission-controller.enableMisconfigurationPolicies=true
Nachdem die Erzwingung von Fehlkonfigurationen aktiviert wurde, wird die Standard-Auditregel automatisch im Portal erstellt.
Erstellen einer Erzwingungsrichtlinie für Fehlkonfigurationen
Standardmäßig erstellt Defender für Container die Standard-K8s-Fehlkonfigurationsregel im Überwachungsmodus, die auf alle Ressourcen festgelegt ist. Im Audit-Modus protokolliert der Admission Controller (die Kubernetes-Komponente, die Ressourcen mit deinen Richtlinien bewertet, bevor sie in den Cluster aufgenommen werden) Verstöße, erlaubt aber die Fortsetzung der Deployments. Sie können benutzerdefinierte Richtlinien für bestimmte Abonnements, Cluster oder Namespaces erstellen.
Melden Sie sich im Azure-Portal an.
Wechseln Sie zu Microsoft Defender for Cloud>Umgebungseinstellungen.
Wählen Sie Sicherheitsregeln aus.
Wählen Sie Gesteuerte Bereitstellung>Fehlkonfigurationen aus, um die verfügbaren Richtlinien anzuzeigen.
Wählen Sie " Neue Richtlinie erstellen" aus.
Geben Sie einen Richtliniennamen ein.
Wählen Sie eine Aktion aus:
- Überwachung: Protokolliert Verstöße, ohne Bereitstellungen zu blockieren.
- Block: Verweigert nicht kompatible Bereitstellungen.
Note
Die Auswahl des Blockmodus kann aufgrund der Erzwingung von Echtzeitrichtlinien eine kurze Verzögerung während der Bereitstellungen auslösen.
Geben Sie bei Bedarf eine Regelbeschreibung ein.
Geben Sie einen Bereichsnamen ein.
Wählen Sie den Cloudumfang aus.
Behalten Sie unter "Ressourcenbereich" den Standardbereich bei, oder wählen Sie "Bedingung hinzufügen " aus, um den Regelbereich einzugrenzen.
Wählen Sie Weiteraus.
Aktivieren Sie das Kontrollkästchen neben jeder Regel, die Sie aktivieren möchten.
Um Parameter für eine Regel zu konfigurieren, wählen Sie den Regelnamen aus.
Einige Regeln enthalten konfigurierbare Parameter. Wenn Parameter verfügbar sind, aktualisieren Sie sie nach Bedarf, und wählen Sie dann "Speichern" aus.
Wählen Sie Weiteraus.
Überprüfen Sie die Richtlinienkonfiguration.
Wählen Sie Richtlinie hinzufügen aus.
Richtlinie zur Durchsetzung von Fehlkonfigurationen bearbeiten
Sie können eine vorhandene Falschkonfigurationserzwingungsrichtlinie bearbeiten, um ihre Aktion, aktivierte Regeln und konfigurierbare Regelparameter zu aktualisieren.
Melden Sie sich im Azure-Portal an.
Wechseln Sie zu Microsoft Defender for Cloud>Umgebungseinstellungen.
Wählen Sie Sicherheitsregeln aus.
Wählen Sie Gesteuerte Bereitstellung>Fehlkonfigurationen aus.
Aktivieren Sie das Kontrollkästchen neben der Richtlinie, die Sie bearbeiten möchten.
Wählen Sie Bearbeiten aus.
Aktualisieren Sie die Richtlinieneinstellungen nach Bedarf.
Wählen Sie " Richtlinie speichern" aus.
Standardrichtlinienbeschränkungen
Die integrierte Standardregel für K8s-Fehlkonfigurationen weist die folgenden Einschränkungen auf:
- Sie können die Aktion zwischen Überwachung und Block ändern.
- Sie können einzelne Regeln aktivieren oder deaktivieren.
- Sie können Parameter für Regeln konfigurieren, die Anpassungen unterstützen.
- Sie können den Richtliniennamen, die Beschreibung oder den Bereich nicht bearbeiten.
Benutzerdefinierte Richtlinien, die Sie erstellen, haben diese Einschränkungen nicht.
Integrierte Regeln für Fehlkonfigurationen
Die Durchsetzung von Fehlkonfigurationsrichtlinien in Kubernetes umfasst integrierte Regeln, die auf den Best Practices von Microsoft-Sicherheit basieren.
Integrierte Regeln helfen dabei, Kontrollen durchzusetzen:
- Grenzwerte für Containerressourcen (CPU und Arbeitsspeicher): Stellt sicher, dass Container keine angegebenen Grenzwerte überschreiten, um die Ressourcenauslastung zu verhindern.
- Berechtigungs- und Funktionsverwaltung: Verhindert, dass Container mit erhöhten Berechtigungen, unnötigen Linux-Funktionen oder Berechtigungseskalationspfaden ausgeführt werden.
- Nicht-Stammausführung: Erzwingt Nicht-Stammbenutzer- und Gruppen-IDs, sodass Container nicht mit übermäßigen Betriebssystemberechtigungen ausgeführt werden können.
- Einbindung von Kubernetes-API-Anmeldedaten: Verhindert, dass Container Kubernetes-API-Anmeldedaten automatisch einbinden.
- Standardnamespace: Blockiert die Ausführung von Workloads im Kubernetes-Standardnamespace.
- Host-Namespace-Isolierung: Verhindert, dass Container den PID-, IPC- oder Netzwerk-Namespace des Hosts gemeinsam nutzen.
- Vertrauenswürdige Bildquellen: Schränkt Containerimages auf vertrauenswürdige Registrierungen oder genehmigte Muster ein.
- Netzwerksicherheit: Erzwingt HTTPS für Kubernetes Ingress-Ressourcen.
- Laufzeitsicherheit: Setzt voraus, dass Container ein schreibgeschütztes Root-Dateisystem verwenden, und blockiert voll privilegierte Container.
Sie können einzelne Regeln innerhalb einer Richtlinie aktivieren oder deaktivieren und Parameter für Regeln konfigurieren, die Anpassungen unterstützen.