chroot und seccomp
Kurz: chroot ändert für einen Prozess das scheinbare Wurzelverzeichnis, seccomp begrenzt, welche Systemaufrufe er überhaupt ausführen darf. Beides sind Bausteine von Containern und Sandboxes.
Genauer: Sie ergänzen sich: Das eine schränkt die sichtbaren Dateien ein, das andere die erlaubten Fähigkeiten gegenüber dem Kernel.
Im Detail
- chroot:
chroot /neu/wurzel programmlässt das Programm/neu/wurzelals/sehen. Nützlich für Reparaturen von einem Live-System aus und für Build-Umgebungen. - Grenze von chroot: Kein Sicherheitsmechanismus an sich. Mit Root-Rechten kann ein Prozess ausbrechen. Container nutzen deshalb zusätzlich Namespaces.
- seccomp: Ein Filter (seccomp-bpf) erlaubt oder verbietet einzelne Systemaufrufe, oder beendet den Prozess bei einem verbotenen.
- Einsatz: Browser-Sandboxes, Docker-Standardprofil, systemd (
SystemCallFilter=). - Prinzip: Wer
openundreadbraucht, braucht nichtptraceodermount. Das entspricht dem Prinzip der geringsten Rechte.
Siehe auch: Docker