Erstellen Sie zuerst eine Kopie an einem Ort, von dem aus Sie sie ausführen könnten (dh Dateisysteme, für die ein Dateisystem eingerichtet wurde, noexec
sind nicht qualifiziert). Dies ist /tmp/
in meinem Beispiel.
sudo cp /bin/sleep /tmp/
(Früher habe ich sudo
sichergestellt, dass die Kopie root
von Anfang an gehört; dies spart mich sudo chown …
später). Der folgende Befehl legt das Setuid-Bit für die Datei fest :
sudo chmod u+s /tmp/sleep
Führen Sie es jetzt als normaler Benutzer im Hintergrund aus:
/tmp/sleep 300 &
Dann überprüfen Sie die Ausgabe von ps
:
ps -eo pid,euser,ruser,comm | grep sleep
Das Ergebnis ist euser
auf den Besitzer der Datei, ruser
auf den auszuführenden Benutzer.
Hinweis: Denken Sie beim Spielen mit Setuid daran, dass es nicht mit Skripten funktioniert .