Почетак › Форуми › Линукс › Опште Линукс дискусије › Suid bit i tekstualne datoteke
- This topic has 51 одговор, 9 гласова, and was last updated 18 years, 10 months раније by maddox.
-
АуторЧланци
-
1. децембар 2005. у 2:29 pm #37892popeyeГлавни мајстор
Kad vec pricamo o suid bitovima da pitam jel to najlaksi nacin da se useru dodeli pravoo da izvrsava halt i reboot ?
Najlakši jeste. Svrha ove rasprave je da ljudi shvate šta je suid bit, te zašto je dobar, odnosno loš i kada ga (ne) treba koristiti.
@MisterNo
Da, tu je lepo objašnjeno, mi to ovde iznosimo na srpskom, kroz praktičan primer. Malo da se vežbaju vijuge, ako ima neko rad. 🙂1. децембар 2005. у 3:01 pm #37893popeyeГлавни мајсторIli slični problemi u ovom C kodu, na Ubuntu distribuciji:
[code]#include
#includeint main(int argc, char *argv[]) {
char cmd[50] = “ifconfig “;
strcat(cmd, argv[1]);
system(cmd);
return 0;}[/code]
# vi test.c
# make test
# chown root:wheel test
# chmod 4755 testIma li neko zaludan da se uključi?
1. децембар 2005. у 3:27 pm #37894MisterNoУчесникGeneralno gledano sustina cele price je ono sto je rekao popeye odnosno da se ljudima objasni sta je suid bit i gde treba da ga (ne) primenjuju. Japan je plus odlicno objasnio strucni deo price.
Ali ono sto hocu da kazem je da je sigurnost bilo kog operativnog sistema kada mu imamo fizicki pristup 0. Jer sa najobicnijim knoppixom mozemo da radimo ono sto pozelimo. Globalno gledano od toga nema leka, jedino server sala sa tri brave.
A onda kada nam je server pod bravom mozemo razmisljati o ostalim aspektima sigurnosti, sta nam je otvoreno, sta je podlozno exploitima, update kog servisa da uradimo itd
1. децембар 2005. у 4:10 pm #37895popeyeГлавни мајсторAli ono sto hocu da kazem je da je sigurnost bilo kog operativnog sistema kada mu imamo fizicki pristup 0.
Naravno. Ono što želim je da se pronađu propusti u primerima, kako bi ljudi na praktičan način videli na koji način se suid može potencijalno zloupotrebiti. Skripta (mada danas većina sistema to ne dopušta) je najočitiji primer da je suid bit (i uopšte root nalog) loš koncept sigurnosti.
Nadao sam se da će se naći neko sa dovoljno znanja da diskutuje nad ovim primerima (koje bi izvodili dalje pri objašnjavanju zaobilaženja), dosadno je da ovo pretvorim u monolog.
1. децембар 2005. у 4:18 pm #37896japanУчесникIli slični problemi u ovom C kodu, na Ubuntu distribuciji:
[code]#include
#includeint main(int argc, char *argv[]) {
char cmd[50] = “ifconfig “;
strcat(cmd, argv[1]);
system(cmd);
return 0;}[/code]
# vi test.c
# make test
# chown root:wheel test
# chmod 4755 testIma li neko zaludan da se uključi?
[code][japan@hawk: work] $ ./a.out “eth0 down”
SIOCSIFFLAGS: Permission denied
[/code]
😯jesi ti dobio shell sa nekim od ovih primera? neki expansion bi trebalo da odradi, ali koji?
1. децембар 2005. у 4:27 pm #37897popeyeГлавни мајсторObrati pažnju da pričam o određenoj distribuciji: Ubuntu, a trebalo bi da važi uopšteno na Debianu i njegovim derivatima. Naime, kod njih sh (tj. bash2) ne odbacuje suid privilegije ako jje podloga system() funkciji.
Ima li neko Ubuntu da to potvrdi i pokuša da dobije root shell?
1. децембар 2005. у 4:29 pm #37898popeyeГлавни мајсторjesi ti dobio shell sa nekim od ovih primera? neki expansion bi trebalo da odradi, ali koji?
Svaki od primera omogućava dobijanje shell-a, na više načina. Skripte, naravno, na Linuxu ne mogu da preuzmu root euid, te nisu administratorske privilegije, ali shell je tu.
1. децембар 2005. у 4:32 pm #37899LimitManУчесникA onda kada nam je server pod bravom mozemo razmisljati o ostalim aspektima sigurnosti, sta nam je otvoreno, sta je podlozno exploitima, update kog servisa da uradimo itd
Ti ocigledno nisi gledao Misiju Nemoguce I ??? 😀
Nemoj da Tomislav Kruzovic upadne u tu odaju i makne ti podatke sa (ako se dobro secam) naj mocnijeg 6×86 racunara!!!
Inace sto se tice suid bit-a, definitivno, ako se koristi kako ne bi trebalo, sigurnost sistema moze biti JAKO narusena… Ali uglavnom se radi o racunarima koji imaju druge korisnike (osim samog administratora racuinara) i ako ti korisnici znaju nesto i proceprkaju sta i kako mogu da urade… Znaci, serverima… Cak i kada server vrsi samo hosting, preko cgi-a (nebitno, bio to php, perl ili neki drugi program) pogresan suid bit moze da bude fatalan.
Sto se tice kucnih racunara, nisu mi poznate, niti imam ideju o manama … Ali ipak ne treba stavljati sve na suid bit … Staviti cdrdao (kao u jednoj ranijoj temi), na kucnom racunaru, suid bit je sasvim bezbedno …
1. децембар 2005. у 4:56 pm #37900japanУчесникObrati pažnju da pričam o određenoj distribuciji: Ubuntu, a trebalo bi da važi uopšteno na Debianu i njegovim derivatima. Naime, kod njih sh (tj. bash2) ne odbacuje suid privilegije ako jje podloga system() funkciji.
Ima li neko Ubuntu da to potvrdi i pokuša da dobije root shell?
aha…
system() will not, in fact, work properly from programs with suid or sgid privileges on systems on which /bin/sh is bash version 2, since bash 2 drops privileges on startup. (Debian uses a modified bash which does not do this when invoked as sh.)
1. децембар 2005. у 4:58 pm #37901popeyeГлавни мајсторLepo napisali ljudi u dokumentaciji za system() funkciju. Imaš li ideju kako da dobiješ shell?
-
АуторЧланци
Мораш бити пријављен да би поставио коментар у овој теми.