Dabei seit: 02.11.2002
Beiträge: 1.203
Herkunft: live://home.berlin.d
e
"Permission denied" trotz setuid
Edit: Das Problem ist dank Black-Star im IRC-Channel gelöst. Das setuid-Bit wird bei Scripten einfach ignoriert, da es zu viele Risikofaktoren gibt, die man ausnützen könnte um eine root-Shell zu bekommen.
------------------------------
hab ein Problem bei einem Script:
Und zwar habe ich über chmod u+s TEST_SCRIPT_OTHER das setuid-Bit gesetzt, damit es als root ausgeführt wird.
Allerdings macht er es nicht.
code:
1:
2:
3:
4:
5:
-rw-r----- 1 root users 68 Mar 6 16:15 TEST_FILE
-rwsr-xr-x 1 root users 168 Mar 6 16:15 TEST_SCRIPT_OTHER
-rwxr-x--x 1 root users 168 Mar 6 16:15 TEST_SCRIPT_OWNER
Die beiden Scripte sind identisch. Sie unterscheiden sich nur über des setuid-Bit:
code:
1:
2:
3:
4:
5:
6:
7:
8:
#!/bin/sh
FILENAME=TEST_FILE
echo "Your effective userid is `id -u`"
echo "Please enter some text to be appended to "${FILENAME}
read TEXT
echo ${TEXT} >> ${FILENAME}
Wenn ich also das Script *OTHER ausführe müsste ich Zugriff auf TEST_FILE haben und er müsste mir 0 als effektive UID ausgeben. Macht er aber nicht.
code:
1:
2:
3:
4:
5:
6:
7:
8:
misel@smile:[0]:$ ./TEST_SCRIPT_OTHER
Your effective userid is 1000
Please enter some text to be appended to TEST_FILE
ballaballa
./TEST_SCRIPT_OTHER: line 6: TEST_FILE: Permission denied
misel@smile:[1]:
Laut meinem Prof muss es genauso gemacht werden, aber es passiert nix. Er selbst weiß auch nicht woran es liegt. Vermutlich ist es irgend ein kleines Detail, in dem sich Linux und Unix unterscheiden, dass wir jetzt übersehen haben.