
Getting a handle on container security
Dies ist die OWASP Docker Top 10. Es ist ein laufendes Projekt.
Dieses Dokument beschreibt die 10 wichtigsten Sicherheitspunkte für den Aufbau einer sicheren containerisierten Umgebung. Sie können es als Spezifikationsblatt verwenden, wenn Sie von Grund auf neu beginnen, oder es alternativ an einen Auftragnehmer weitergeben, der dies für Sie erledigen wird.
Es kann auch verwendet werden, um eine bestehende Installation zu auditieren oder abzusichern, aber insbesondere hier sollten Sie sehr früh über Sicherheit nachdenken. Am besten in der Entwurfsphase. Später wird es entweder schwierig, einige getroffene Entscheidungen zu ändern, oder sie werden teurer, in Bezug auf Geld oder Zeit.
Obwohl der Name des Dokuments an die OWASP Top 10 erinnert, ist es doch recht unterschiedlich. Erstens geht es nicht um Risiken, die auf gesammelten Daten basieren wie die OWASP Top 10. Zweitens stellen die 10 Punkte hier (proaktive) Kontrollen dar.
Dieser Leitfaden richtet sich an Entwickler, Auditoren, Architekten, System- und Netzwerkingenieure. Wie oben angedeutet, können Sie diesen Leitfaden auch für externe Auftragnehmer verwenden, um Ihrem Vertrag formale technische Anforderungen hinzuzufügen. Auch der Informationssicherheitsbeauftragte sollte ein gewisses Interesse daran haben, die grundlegenden Sicherheitsanforderungen und darüber hinaus zu erfüllen.
Diese 10 Punkte befassen sich (siehe unten in diesem Absatz) größtenteils mit System- und Netzwerksicherheit sowie System- und Netzwerkarchitektur. Als Entwickler müssen Sie kein Experte auf diesen Gebieten sein – dafür ist dieser Leitfaden gedacht. Aber wie oben angedeutet, ist es am besten, frühzeitig über diese Punkte nachzudenken und sie anzugehen. Bitte fangen Sie nicht einfach an zu bauen.
Einer der Punkte sollte nicht missverstanden werden: Patch-Management ist kein technischer Punkt. Es ist ein Managementprozess. Nicht zuletzt bietet dieses Dokument auch für das technische oder Informationssicherheitsmanagement, das sich noch nicht viele Gedanken über Containerisierung gemacht hat, Einblicke in die damit verbundenen Risiken.
Sicherheit in Docker-Umgebungen schien oft missverstanden zu werden. Es war/ist ein stark umstrittenes Thema, was die Bedrohungen sein sollen. Bevor wir also in die Docker Top 10 eintauchen, müssen die Bedrohungen modelliert werden, was in diesem Dokument zu Beginn geschieht. Es hilft nicht nur, die Sicherheitsauswirkungen zu verstehen, sondern gibt Ihnen auch die Möglichkeit, Ihre Aufgaben zu priorisieren.
Siehe CONTRIBUTING.md. Um Beiträge zu den offenen Punkten zu erleichtern, reichen Sie Ihre PRs bitte gegen die entsprechenden Entwicklungszweige ein (D06_dev, D07_dev, ...).
Sie können selbst eine PDF-Version erstellen, solange Docker und docker-compose installiert sind.
docker-compose run --rm build
Es wird in diesem Repository nicht häufig aktualisiert, da es das Repository sonst verstopft.
Obwohl der Name dieses Projekts das Wort "Docker" trägt, kann es mit geringer Abstraktion auch für andere Containerlösungen verwendet werden. Docker ist derzeit die beliebteste, daher konzentrieren sich die detaillierten Aspekte vorerst auf Docker. Dies könnte sich später ändern.
Wenn Sie mehr als 3 Container auf einem Server betreiben, haben Sie wahrscheinlich eine Orchestrierungslösung, um sie zu verwalten. Spezifische Sicherheitsrisiken eines solchen Tools liegen derzeit außerhalb des Rahmens dieses Dokuments. Das bedeutet nicht, dass dieser Leitfaden nur einen oder einige wenige manuell verwaltete Container betrifft – im Gegenteil. Es bedeutet lediglich, dass wir uns Container einschließlich ihrer Netzwerke und ihrer Hostsysteme in einer solchen orchestrierten Umgebung ansehen und nicht auf besondere Risiken z. B. von Kubernetes, Swarm, Rancher oder OKD/OpenShift.
Um ehrlich zu sein, klingt die Zahl 10 für uns Menschen einprägsam, und bei der Zusammenstellung wurden diese 10 als die wichtigsten erachtet.