Thomas Hertweck wrote:
Kyek, Andreas, VF-DE wrote:
[...] Wenn es gehen würde, könnte Linux, was die security angeht, dicht machen, oder? Überleg mal: Wenn Du als User ein Programm schreibst und kannst danach dieses Programm mittels chown einem anderen User "schenken", dann liefe dieses Programm auch mit den Rechten des anderen Users (die sich von Deinen durchaus unterscheiden können!)
Huch? (tm) Natuerlich ist es gut, dass nicht jeder einfach nach Belieben einem User gewisse Dateien "unterschieben" kann, das koennte zu grossen Problemen fuehren (mag sich jetzt jeder selbst ausdenken, welche Dateien man einem User unterschieben koennte, um zumindest dessen Ruf zu ruinieren oder noch schlimmeres anzuzetteln). Aber Deine Schlussfolgerung ist falsch. Damit ein Programm als der User ausgefuehrt wird, dem das Programm gehoert, muss es das SUID-Bit (set user id on execution) tragen. Ansonsten wird es "im Namen" des aufrufenden Users gestartet, sofern er ueberhaupt die Rechte dazu hat.
Ich weiss das mit dem S-Bit, die Erwähnung dessen fehlte nur in meiner _kurzen_ Erklärung. Hier ein Beispiel (teilweise als root natürlich, weil ansonsten der chmod nicht geht!) Hier (SuSE 9.0, Kernel 2.6.7): --- cut here --- akyek@linux:~> sux Password: linux:~ # echo 'rm -rf * 2>/dev/null' > rm linux:~ # chmod 4755 rm linux:~ # ls -al rm -rwsr-xr-x 1 root root 21 Jul 28 11:23 rm linux:~ # chown akyek rm linux:~ # ls -al rm -rwsr-xr-x 1 akyek root 21 Jul 28 11:23 rm linux:~ # exit akyek@linux:~ # chgrp trusted rm akyek@linux:~ # ls -al rm -rwsr-xr-x 1 akyek trusted 21 Jul 28 11:23 rm akyek@linux:~ # sux Password: linux:~ # chown root rm linux:~ # ls -al rm -rwsr-xr-x 1 root trusted 21 Jul 28 11:23 rm --- cut here --- d.h. auch jetzt schon bleiben (zumnindest hier) sowohl beim chmod als auch beim chgrp das S-Bit erhalten. Wenn nun noch jeder user chown darf, wechsel ich zu Windows. Andreas