/proc/pid/attr/ - Sicherheits-bezogene Attribute
- /proc/PID/attr/
- Die Dateien in diesem Verzeichnis stellen eine API für
Sicherheitsmodule bereit. Die Inhalte dieses Verzeichnisses sind Dateien,
die gelesen und geschrieben werden können, um sicherheitsbezogene
Attribute zu setzen. Dieses Verzeichnis wurde hinzugefügt, um
SELinux zu unterstützen. Der Ansatz des API war aber allgemein
genug, um andere Sicherheitsmodule zu unterstützen. Für den
Zweck der Erläuterung werden Beispiele, wie SELinux diese Dateien
verwendet, weiter unten angegeben.
- Dieses Verzeichnis ist nur vorhanden, falls der Kernel mit
CONFIG_SECURITY konfiguriert wurde.
- /proc/PID/attr/current (seit Linux 2.6.0)
- Der Inhalt dieser Datei stellt die aktuellen Sicherheitsattribute des
Prozesses bereit.
- In SELinux wird diese Datei zur Ermittlung des Sicherheitskontextes eines
Prozesses verwandt. Vor Linux 2.6.11 konnte diese Datei nicht zum Setzen
des Sicherheitskontextes verwandt werden (ein Schreibzugriff wurde immer
verweigert), da SELinux die Prozesssicherheitsübergänge auf
execve(2) begrenzte (siehe die Beschreibung von
/proc/PID/attr/exec weiter unten). Seit Linux 2.6.11 hat
SELinux diese Einschränkung aufgehoben und begonnen,
»set« (Setzen-)Aktionen mittels Schreibzugriffen auf diesen
Knoten zu unterstützen, falls dies durch Richtlinien erlaubt wurde.
Allerdings ist die Verwendung dieser Aktion nur für Anwendungen
geeignet, denen vertraut wird, die gewünschte Separierung zwischen
dem alten und dem neuen Sicherheitskontext aufrechtzuerhalten.
- Vor Linux 2.6.28 erlaubte es SELinux Threads innerhalb von
Multi-Threaded-Prozessen nicht, ihren Sicherheitskontext mittels dieses
Knotens zu setzen, da es zu einer Inkonsistenz innerhalb der
Sicherheitskontexte der Threads, die den gleichen Speicher gemeinsam
benutzen, führen würde. Seit 2.6.28 hat SELinux diese
Einschränkung aufgehoben und begonnen, »set«-Aktionen
für Threads innerhalb von Multi-Threaded-Prozessen zu
unterstützen, falls der neue Sicherheitskontext innerhalb der
Grenzen des alten Sicherheitskontextes liegt, wobei die begrenzende
Beziehung in den Richtlinien definiert ist und garantiert, dass der neue
Sicherheitskontext über eine Teilmenge der Rechte des alten
Sicherheitskontextes verfügt.
- Andere Sicherheitsmodule können sich entscheiden,
»set«-Aktionen über Schreibzugriffe auf diesen Knoten
zu unterstützen.
- /proc/PID/attr/exec (seit Linux 2.6.0)
- Diese Datei repräsentiert die Attribute, die den Prozessen bei
nachfolgenden execve(2) zugewiesen werden sollen.
- In SELinux wird dies benötigt, um
Rollen-/Domänenübergänge zu unterstützen und
execve(2) ist die bevorzugte Stelle, um solche
Übergänge vorzunehmen, da es bessere
Steuermöglichkeiten über die Initialisierung des Prozesses
im neuen Sicherheits-Label und die Vererbung von Zustand erlaubt. In
SELinux wird dieses Attribut bei execve(2) zurückgesetzt, so
dass das neue Programm auf das Vorgabeverhalten für alle
execve(2), die es ausführen könnte,
zurückfällt. In SELinux kann ein Prozess nur sein eigenes
Attribut /proc/PID/attr/exec setzen.
- /proc/PID/attr/fscreate (seit Linux 2.6.0)
- Diese Datei repräsentiert die Attribute, die Dateien, die von
nachfolgenden Aufrufen von open(2), mkdir(2),
symlink(2) und mknod(2) erstellt werden, zugewiesen werden
sollen.
- SELinux verwendet diese Datei, um die Erstellung einer Datei (mit den
vorab erwähnten Systemaufrufen) in einem sicheren Zustand zu
unterstützen, so dass es kein Risiko gibt, dass ein ungeeigneter
Zugriff zwischen dem Zeitpunkt der Erstellung und dem Zeitpunkt des
Setzens der Attribute gibt. In SELinux wird dieses Attribut bei
execve(2) zurückgesetzt, so dass das neue Programm wieder
auf das alte Verhalten für alle seine Dateierstellungsaufrufe
zurückfällt. Das Attribut wird aber über mehrere
Dateierstellungsaufrufe hinweg innerhalb eines Programms erhalten bleiben,
solange es nicht explizit zurückgesetzt wird. Unter SELinux kann
ein Prozess nur sein eigenes Attribut
/proc/PID/attr/fscreate setzen.
- /proc/PID/attr/keycreate (seit Linux 2.6.18)
- Falls ein Prozess ein Sicherheitskontext in diese Datei schreibt, werden
alle nachfolgend erstellten Schlüssel (add_key(2)) mit
diesem Kontext mit Labeln gekennzeichnet. Für weitere Informationen
siehe die Kernelquelldatei Documentation/security/keys/core.rst
(oder Datei Documentation/security/keys.txt unter Linux zwischen
3.0 und 4.13 oder Documentation/keys.txt vor Linux 3.0).
- /proc/PID/attr/prev (seit Linux 2.6.0)
- Diese Datei enthält den Sicherheitskontext des Prozesses vor dem
letzten execve(2); d.h. den vorherigen Wert von
/proc/PID/attr/current.
- /proc/PID/attr/socketcreate (seit Linux 2.6.18)
- Falls ein Prozess ein Sicherheitskontext in diese Datei schreibt, werden
alle nachfolgend erstellten Sockets mit diesem Kontext mit Labeln
gekennzeichnet.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von
Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>, Dr. Tobias
Quathamer <toddy@debian.org>, Chris Leick <c.leick@vollbio.de>,
Erik Pfannenstein <debianignatz@gmx.de> und Helge Kreutzmann
<debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU General
Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite
finden, schicken Sie bitte eine E-Mail an die Mailingliste der
Übersetzer:
debian-l10n-german@lists.debian.org.