Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
| howto:suid [26.01.2006 16:48 (vor 21 Jahren)] – cwacha | howto:suid [16.11.2016 23:18 (vor 10 Jahren)] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ===== SUID Root ===== | ||
| + | OS: Linux | ||
| + | |||
| + | === Problem === | ||
| + | Was heisst SUID Root? | ||
| + | |||
| + | === Lösung === | ||
| + | |||
| + | SUID ist ein Datei Attribut, das mit chmod gesetzt werden kann. | ||
| + | Dabei bedeutet SUID Set UserID on execute. Das bedeutet, dass die Datei | ||
| + | NICHT mit den Rechten des aufrufenden Users gestartet wird, sondern | ||
| + | mit den Rechten des Eigentümers der Datei. | ||
| + | |||
| + | //Wozu soll das gut sein?// | ||
| + | |||
| + | Programme wie cdrecord greifen direkt auf die Hardware zu. Das ist in | ||
| + | Unix aber einem normalen Benutzer nicht erlaubt. Nur root darf das. | ||
| + | Bei cdrecord wird also zuerst der Eigentümer auf root gestellt und | ||
| + | dann das SUID Attribut gesetzt. Nun läuft cdrecord IMMER als root, auch | ||
| + | wenn es von einem normalen Benutzer gestartet wird. | ||
| + | |||
| + | :!: | ||
| + | Programme als root laufen zu lassen ist ein grosses Sicherheitsrisiko! | ||
| + | Das SUID Attribut sollte nur äusserst sparsam verwendet werden wenn es | ||
| + | nicht anders geht. 99% aller Aufgaben im System lassen sich ohne root- | ||
| + | Rechte lösen. | ||
| + | |||
| + | Um das Attribut zu setzen folgendes eingeben: | ||
| + | |||
| + | chmod u+s meinedatei | ||
| + | |||
| + | === Problem === | ||
| + | |||
| + | Wie erkennt man, ob das SUID Attribut gesetzt ist? | ||
| + | |||
| + | === Lösung === | ||
| + | |||
| + | Auf der Kommandozeile folgendes eingeben: | ||
| + | |||
| + | cwacha@lapis: | ||
| + | -rwsr-xr-x | ||
| + | ^ | ||
| + | | | ||
| + | Das hier ist das SUID Attribut (s), sonst steht dort (x) oder (-). | ||
| + | |||