Clair für die Container-Sicherheit
Schwachstellendaten werden kontinuierlich aus einem bekannten Quellen-Set importiert und mit den indizierten Inhalten von Container Images verglichen, um Listen der Schwachstellen anzufertigen, die die Container-Sicherheit bedrohen. Wenn sich Schwachstellendaten im weiteren Verlauf ändern, können der vorherige und aktuelle Zustand der Schwachstelle zusammen mit den Images, die betroffen sind, via webhook an einen konfigurierten Endpunkt gesendet werden. Alle wichtigen Komponenten lassen sich zum Zeitpunkt der Kompilierung programmatisch anpassen, ohne das Projekt aufspalten zu müssen. Clair unterstützt die Container-Sicherheit durch:
- Aktualisierung der Schwachstellendaten mithilfe eines von Ihnen definierten Quellen-Sets und Speicherung dieser Informationen in einer Datenbank
- Abfrage der Datenbank auf Schwachstellen durch Clients innerhalb spezifischer Images per API
- Indizierung von Container Images mit einer Liste an Features des jeweiligen Images per API
So funktioniert Clair
Bei Clair werden mithilfe der CVE-Datenbank (Common Vulnerabilities and Exposures) und ähnlichen Datenbanken von Red Hat®, Ubuntu und Debian alle Container-Schichten gescannt und Benachrichtigungen über potenziell bedrohliche Schwachstellen bereitgestellt. Da die Schichten unter vielen Containern geteilt werden können, spielt die Introspektion eine wichtige Rolle bei der Erstellung eines Paketinventars, das mit den bekannten CVEs abgeglichen wird.
Clair umfasst außerdem Support für die Manager von Programmiersprachpaketen, in erster Linie Python, und für eine neue image-orientierte API.
Die automatische Erkennung von Schwachstellen sorgt bei den Dev- und Ops-Teams für eine erhöhte Sensibilisierung und bessere Sicherheitspraktiken und fördert Patching- und Fehlerbehebungsmaßnahmen. Wenn neue Schwachstellen angekündigt werden, erkennt Clair ohne erneutes Scannen sofort, welche aktuellen Schichten anfällig sind, und sendet direkt eine entsprechende Benachrichtigung.
Die Schwachstelle CVE-2014-0160 oder „Heartbleed" ist schon seit einiger Zeit bekannt. Trotzdem wurde anhand eines Sicherheits-Scans auf Red Hat Quay herausgefunden, dass sie für einen hohen Prozentsatz der auf Quay gespeicherten Images immer noch eine potenzielle Bedrohung darstellt.
Beachten Sie, dass die Ausnutzung von Schwachstellen häufig von speziellen Bedingungen abhängt. So stellt Heartbleed lediglich dann eine Bedrohung dar, wenn das anfällige OpenSSL-Paket installiert und verwendet wird. Clair ist für diese Analysetiefe nicht geeignet, und so sollten Teams ggf. zusätzlich eingehendere Untersuchungen anstellen.
Clair und Kubernetes
Clair ist Bestandteil des Open Source-Projekts Quay. Die Kubernetes-Plattform Red Hat OpenShift® ist in der Lage, Clair für die Container-Sicherheit zu nutzen. Dabei wird ein Kubernetes Operator namens „Container Security Operator" verwendet, der seinerseits eine Komponente von Red Hat Quay ist. Red Hat Quay ist eine Registry-Plattform für Container Images, die auf Open Source basiert. Auf dieser Plattform können Sie Container mit cloudnativen und DevSecOps-Entwicklungsmodellen und -Umgebungen erstellen, verteilen und weltweit in Rechenzentren bereitstellen.
Der „Container Security Operator" von Quay, der in Red Hat OpenShift integriert ist, ermöglicht durch Automatisierungs-, Authentifizierungs- und Autorisierungssysteme eine erhöhte Sicherheit für Ihre Image Repositories. Red Hat Quay ist zusammen mit Red Hat OpenShift oder als Standalone-Komponente erhältlich.
Unsere Berater helfen Ihnen gerne
Wie kann Red Hat helfen?
Im Rahmen seines Engagements für und mit Open Source Communities und als Mitglied der Cloud Native Computing Foundation wird sich Red Hat auch weiterhin an der Entwicklung des Projekts Quay beteiligen.
Red Hat leistet wichtige Beiträge bezüglich der Entwicklung neuer Funktionen für Clair und das Projekt Quay. Außerdem unterhält das Unternehmen eine der wichtigsten Datenbanken für Schwachstellen, die von Clair genutzt wird. Nicht zuletzt führt Red Hat die größte Installation von Clair via quay.io aus, die als realitätsgetreue Umgebung für Belastungstests dient.