Početak›Форуми›Linuks›Opšte Linuks diskusije›Suid bit i tekstualne datoteke
- This topic has 51 odgovor, 9 glasova, and was last updated 17 years, 4 months ranije by
maddox.
-
AutorČlanci
-
1. decembra 2005. u 2:29 pm #37892
popeye
Glavni majstorKad 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. decembra 2005. u 3:01 pm #37893popeye
Glavni majstorIli 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. decembra 2005. u 3:27 pm #37894MisterNo
UčesnikGeneralno 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. decembra 2005. u 4:10 pm #37895popeye
Glavni majstorAli 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. decembra 2005. u 4:18 pm #37896japan
UčesnikIli 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][[email protected]: 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. decembra 2005. u 4:27 pm #37897popeye
Glavni majstorObrati 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. decembra 2005. u 4:29 pm #37898popeye
Glavni majstorjesi 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. decembra 2005. u 4:32 pm #37899LimitMan
UčesnikA 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. decembra 2005. u 4:56 pm #37900japan
UčesnikObrati 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. decembra 2005. u 4:58 pm #37901popeye
Glavni majstorLepo napisali ljudi u dokumentaciji za system() funkciju. Imaš li ideju kako da dobiješ shell?
-
AutorČlanci
Moraš biti prijavljen da bi postavio komentar u ovoj temi.