Ich habe festgestellt, dass bei einigen Prozessen, wie z. B. Bash, die gesamten /proc/<pid>/
Ressourcen für den Benutzer lesbar sind, der diesen Prozess erstellt hat. Bei anderen Prozessen wie Chrome oder Gnome-Keyring-Daemon sind die meisten /proc/<pid>/
Ressourcen jedoch nur über Root verfügbar, obwohl der Prozess selbst dem normalen Benutzer gehört und kein Suid aufgerufen wird.
Ich habe mich ein wenig im Kernel umgesehen und festgestellt, dass das / proc / stuff begrenzt wird, wenn einer Aufgabe ein 'dumpable'-Flag fehlt. Es fällt mir jedoch schwer zu verstehen, unter welchen Szenarien eine Aufgabe nicht dumpumpbar wird (außer im Fall setuid). was nicht für Chrom oder Gnomschlüsselring gilt):
https://github.com/torvalds/linux/blob/164c09978cebebd8b5fc198e9243777dbaecdfa0/fs/proc/base.c#L1532
Möchte mir jemand helfen, den zugrunde liegenden Mechanismus und die Gründe dafür zu verstehen?
Vielen Dank!
Bearbeiten:
Wir haben ein gutes Dokument darüber gefunden, warum Sie Ihren SSH-Agenten (z. B. gnome-keyring-daemon
) nicht von Ihrem Benutzer sichern lassen möchten . Ich bin mir immer noch nicht sicher, wie gnome-keyring-daemon
ich mich unaufhaltsam machen soll.
fs.suid_dumpable
System so einstellen können2
, dass Setuid-Binärdateien entleert werden können.getcap /usr/bin/gnome-keyring-daemon
. Es hat wahrscheinlich einige Dateifunktionen.getcap
auf Ubuntu 12.04 sagt:/usr/bin/gnome-keyring-daemon = cap_ipc_lock+ep