Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Landlock ist ein Linux-Kernel-Sicherheitsmodul, mit dem ein Prozess zusätzliche Zugriffsregeln für sich selbst und seine künftigen Kindprozesse erzwingen kann. Es eignet sich für eine ergänzende Sandbox, nicht als vollständige Prozessisolation: Die Regeln beschränken ausgewählte Datei-, Verzeichnis- und Netzwerkaktionen, während DAC und andere aktive Sicherheitskontrollen weiterhin gelten.

Was Landlock kontrolliert – und was nicht

Landlock ist ein stapelbares Linux Security Module (LSM), das Anwendungen eine Möglichkeit zur Selbstbeschränkung gibt, auch wenn sie ohne privilegierte Systemrechte laufen. Ein Prozess erstellt ein Ruleset, legt fest, welche Zugriffsarten es behandelt, ergänzt passende Regeln und setzt das Ruleset für sich selbst durch. Künftige Kindprozesse übernehmen die Einschränkungen.

Landlock ist eine zusätzliche Zugriffsschicht. Ein Zugriff muss von jeder geltenden Landlock-Schicht und den übrigen Systemkontrollen erlaubt sein. Die Kernel-Dokumentation fasst das Prinzip so zusammen: „A Landlock rule shall not interfere with other access-controls enforced on the system, only add more restrictions.“ Linux-Kernel-Dokumentation zu Landlock.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Die Anwendung bestimmt mit der „handled access“-Bitmaske, welche Aktionen ihr Ruleset überhaupt kontrolliert. Nicht aufgeführte Zugriffsarten werden durch dieses Ruleset nicht automatisch verweigert. Eine unvollständige Rechteauswahl kann deshalb eine Lücke in der gewünschten Sandbox lassen; zugleich kann ein zu weit gefasstes Ruleset Funktionen der Anwendung unbeabsichtigt blockieren.

  • Dateisystem: Regeln beziehen sich auf Datei- und Verzeichnisaktionen in einer Hierarchie.
  • Netzwerk: Unterstützte Regeln können TCP- und UDP-Aktionen an Ports einschränken; die verfügbaren Rechte hängen von der ABI ab.
  • Andere Kernel-Ressourcen und Systemaufrufe: Landlock ist keine universelle Ressourcenisolation und kein allgemeiner Syscall-Filter.

Wie Rulesets und Regeln zusammenspielen

Ein Ruleset ist die Policy-Schicht, die ein Prozess anwendet. Die darin angegebenen behandelten Aktionen werden grundsätzlich beschränkt, sofern keine passende Regel sie gestattet. Regeln gewähren also ausgewählte Ausnahmen innerhalb der erfassten Zugriffsarten; sie heben weder andere Landlock-Schichten noch DAC- oder LSM-Kontrollen auf.

Für Dateisystemregeln sollte die Anwendung möglichst eng begrenzte Hierarchien und nur die wirklich benötigten Aktionen freigeben. Netzwerkregeln sind davon getrennt: Sie beziehen sich auf unterstützte Aktionen und Ports, nicht auf Dateipfade. Die jeweilige ABI-Version bestimmt, welche Aktionen überhaupt kontrolliert werden können.

Wichtige Grenze: bereits geöffnete Dateien und Verzeichnisse

Dateien und Verzeichnisse, die vor dem Aktivieren der Sandbox geöffnet wurden, unterliegen den später gesetzten Pfadbeschränkungen nicht nachträglich. Die Kernel-Userspace-Dokumentation sagt: „Files or directories opened before the sandboxing are not subject to these restrictions.“ Landlock-Userspace-API-Dokumentation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Das macht die Initialisierungsreihenfolge und den Umgang mit Dateideskriptoren zu einem Teil des Sandbox-Entwurfs. Ein Deskriptor kann auf ein bereits geöffnetes Objekt verweisen; bei seiner Weitergabe bleiben die daran gebundenen Rechte erhalten. Eine Anwendung sollte daher prüfen, welche Deskriptoren sie vor dem Erzwingen der Regeln öffnet und welche sie anschließend an nicht vertrauenswürdigen Code weitergibt.

Landlock-ABI: Funktionen sind kernelabhängig

Landlock kam mit Linux 5.13. Die aktuelle Kernel-Dokumentation beschreibt ABI 11, doch Anwendungen dürfen diese Version nicht pauschal voraussetzen: Sie sollten die tatsächlich unterstützte ABI abfragen und die Policy entsprechend anpassen. Ältere Kernel-ABIs können bestimmte Aktionen nicht verweigern.

ABI Erweiterung
2 Sichere Kontrolle von Umbenennen und Verknüpfen über LANDLOCK_ACCESS_FS_REFER.
3 Kontrolle des Kürzens von Dateien.
4 TCP-Bind- und TCP-Connect-Kontrolle.
5 IOCTL-Kontrolle für Zeichen- und Blockgeräte.
6 Scope-Regeln für abstrakte UNIX-Sockets und Signale.
8 Thread-Synchronisierung.
9 Zugriffskontrolle für Pfadnamen-UNIX-Sockets.
10 UDP-Bind sowie UDP-Connect/Senden und selektive Unterdrückung von Logs.
11 Option no_new_privs beim Erzwingen des Rulesets.

Die Tabelle nennt die in der aktuellen Userspace-Dokumentation aufgeführten Erweiterungen; sie ist keine Zusage, dass jedes System ABI 11 unterstützt. So sind etwa Dateikürzungen vor ABI 3, TCP-Bind/Connect vor ABI 4 und IOCTL vor ABI 5 nicht durch Landlock kontrollierbar. Für explizite TCP-/UDP-Regeln ist außerdem TCP/IP-Unterstützung im Kernel erforderlich.

Voraussetzungen und Prüfung auf dem System

Landlock muss im Kernel aktiviert und beim Start in die LSM-Liste aufgenommen sein. Die Kernel-Dokumentation nennt CONFIG_SECURITY_LANDLOCK=y als Build-Voraussetzung und verlangt, Landlock in CONFIG_LSM einzuschließen. Eine Aktivierung kann bei Bedarf über den Kernel-Parameter lsm=landlock,[...] erfolgen; dabei müssen bereits benötigte Module in der Liste erhalten bleiben. UDP-Regeln setzen zusätzlich CONFIG_INET=y voraus.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Kernel-Konfiguration prüfen: Vergewissern Sie sich, dass der Kernel mit CONFIG_SECURITY_LANDLOCK=y gebaut wurde.
  2. Boot-Konfiguration prüfen: Prüfen Sie, ob Landlock in der wirksamen CONFIG_LSM-Liste enthalten ist. Falls Sie den Parameter lsm= setzen, übernehmen Sie auch die übrigen benötigten LSMs.
  3. Laufzeitstatus prüfen: Kontrollieren Sie die Bootmeldungen auf Hinweise, dass Landlock aktiviert wurde; die Kernel-Dokumentation nennt diese als Möglichkeit zur Prüfung.
  4. In der Anwendung Fähigkeiten abfragen: Verwenden Sie die Landlock-Systemaufrufe und die ABI-Abfrage, bevor Sie Regeln erstellen. Erzeugen Sie keine Policy, die nicht unterstützte Zugriffsarten als kontrolliert voraussetzt.

Die konkreten Meldungen und verfügbaren Rechte hängen von Kernel-Version und Konfiguration ab. Eine erfolgreiche Landlock-Allow-Regel garantiert zudem nicht, dass das System den Zugriff tatsächlich gestattet: DAC und andere aktive LSMs können ihn weiterhin ablehnen.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Interaktion mit Bind-Mounts und OverlayFS

Die Kernel-Dokumentation beschreibt die Weitergabe von Hierarchierechten über Bind-Mounts, aber nicht dieselbe Semantik für OverlayFS. Wenn eine Sandbox solche Dateisysteme nutzt, sollte die Anwendung die jeweiligen Regeln gezielt gegen ihre Mount- und Dateizugriffsarchitektur prüfen, statt die Bind-Mount-Eigenschaften auf OverlayFS zu übertragen.

Landlock im Vergleich zu seccomp und Namespaces

Die Mechanismen setzen an unterschiedlichen Kontrollobjekten an und können sich ergänzen. Die Wahl sollte davon abhängen, welche Zugriffe eingeschränkt werden sollen, welche Privilegien nötig sind und wie geerbte oder bereits offene Ressourcen behandelt werden.

Mechanismus Kontrollfokus Einordnung
Landlock Ausgewählte Zugriffe auf Kernel-Objekte, darunter Dateisystemhierarchien und unterstützte Netzwerkaktionen. Kann von einem Prozess als zusätzliche, vererbte Selbstbeschränkung eingesetzt werden; ergänzt andere Zugriffskontrollen.
seccomp-BPF Systemaufrufe und deren Argumente. Adressiert Syscall-Filterung, nicht dieselbe Zugriffskontrolle auf Dateisystemhierarchien wie Landlock.
Namespaces Prozess- und Ressourcensicht beziehungsweise Isolation von Umgebungen. Können Sandbox-Eigenschaften liefern, sind laut Kernel-Dokumentation aber nicht selbst als feingranulare Zugriffskontrolle konzipiert.

Für eine konkrete Sicherheitsgrenze ist die entscheidende Frage nicht, welcher Mechanismus pauschal „sicherer“ ist, sondern ob er die relevanten Objekte und Aktionen abdeckt. Auch Kernel-Version und Konfiguration sowie die Behandlung geerbter und bereits geöffneter Ressourcen gehören in diese Bewertung. Die offiziellen Referenzen sind die Kernel-Dokumentation zu Landlock und die Userspace-API-Dokumentation.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.