[FreeBSD] OFFTOPIC: megint a biztonsagrol...

Zelenak.Gabor at ans.lri.hu Zelenak.Gabor at ans.lri.hu
2001. Május. 10., Cs, 11:08:47 CEST


Ha a cikkben talalhato scripteket jobban megvizsgalja
az olvaso - es ugy altalaban is elmelyul a unix
vilagaban - arra a kerdesre, hogy egy ilyen scriptbol
kiadott "whoami" mint a kovetkezo (suid.ksh)...

$ whoami
system
$ ls -l suid.ksh	-rwsr-x---	root	users	etc...
$
$ cat suid.ksh
# ! /bin/ksh
whoami
$ ./suid.ksh
system
$

...miert adja vissza a "system" UID-t a 0 helyett, nos
a valaszom egyszeru. a "whoami" altalam ismert
peldanyai - nemigen hasznaljak az "int setuid(uid_t)" (2)
rendszerhivast, ezert aztan a hivo shell UID-je
lesz szamara a mervado - marpedig, ha az a
"system"-e, akkor kutyakotelessege annak az UID-jevel
visszaterni (az igazi owner kiletetol teljesen fuggetlenul!!!).

lasd: man 2 setuid
SETUID(2) 	FreeBSD System Calls Manual	SETUID(2)
NAME 
	setuid, seteuid, setgid, setegid, - set user and group ID
SYNOPSIS
	#include <sys/types.h> 
	#include <unistd.h> int 
	setuid(uid_t uid) ....

arra a kerdesre, hogy miert hasznalnak egyesek SUID-s scripteket
a valaszom ujfent egyszeru:
1. nem ismerik a perl nyelvet
2. nem tudnak C-ben programozni
3. meg nem tiltottak ki sajat geperol mint "root"....
4. a dolgat konnyitendo - ha szeretne, hogy csak az altala
biztositott  - ellenorzott !!!! - kornyezetbol inditanak egyesek
olyan programokat, amelyek a superuser fennhatosaga ala
tartoznak.

es vegul a megjegyzesre - miszerint, felesleges aggodni mert
bizonyos OS-ek nem engedik meg, hogy SUID-s scriptekkel
szabadon garazdalkodhassanak egyesek.

azok a bizonyos OS-ek, csupan egyedul vannak jelenleg: Linux.
nos, ez a meghatarozas egy kicsit pongyola. a RedHat korai
verzioin siman mukodnek. (jo lenne tehat - megitelesem szerint -
egy listat csinalni azokrol a rendszerekrol (shell-ekrol), ahol ez a 
hole meg jelen van)

azt a kijelentest, hogy a 4.3-ason nincs erre lehetoseg, talan a csh
shellben irott SUID-s scriptekkel kellene legeloszor letesztelni...
----------------------------------------------------------
--                 Zelenak Gabor			
--             system programmer			
----------------------------------------------------------
--   MATIAS Air Traffic Control Center, Hungary
--   HUNGAROCONTROL
--  (36)1-296-9106{FAX}
--  (36)1 296-9107
----------------------------------------------------------
--  mailto:zelenak.gabor at ans.lri.hu
----------------------------------------------------------
With Ada.Text_IO;
  Use Ada.Text_IO;

Procedure Hello_World Is
Begin	
	Put ("Hello World!");
	New_Line;
End Hello_World;
----------------------------------------------------------




További információk a(z) BSD levelezőlistáról