aelius Posted January 17, 2012 Report Posted January 17, 2012 (edited) Fisierele cu bit-ul SUID sau SGID setat se executa cu privilegiile userului sau grupului proprietar si nu cu cele ale userului care executa acel fisier. In mod normal, aceste permisiuni sunt utilizate pe fisierele ce trebuie sa ruleze ca root pentru a urma pasii normali de executie. (si a se executa corect)Aceste fisiere pot conduce la vulnerabilitati grave daca au probleme de securitate (exploatarea privilegiilor). Acest lucru este un risc major iar fisierele setate cu bitii SUID / SGID ar trebui evitate cu orice pret. In cazul in care nu utilizati aceste fisiere sau le executati doar de pe utilizatorul "root", puteti dezactiva bit-ul SUID cu comanda chmod -s <nume_fisier>Cum arata permisiunea unui asemenea binar ?saturn ~ # ls -la /bin/ping-rw[COLOR="#FF0000"]s[/COLOR]r-xr-x 1 root root 34248 Oct 14 2010 /bin/pingsaturn ~ #Exemplu dezactivare bit suid (si efect)saturn ~ # chmod -s /bin/pingsaturn ~ # su - textex@saturn:~$ ping 8.8.8.8ping: icmp open socket: Operation not permittedtex@saturn:~$Pentru cautarea acestor fisiere puteti folosi comanda "find" ca in exemplul de mai jos:find / -type f \( -perm -004000 -o -perm -002000 \) -exec ls -lg {} \;Daca doriti sa faceti un log cu aceste fisiere (suid.txt)shell ~ # find / -type f \( -perm -004000 -o -perm -002000 \) -exec ls -lg {} \; 2>/dev/null > suid.txtNote:- Concluzia o puteti trage usor. Un utilizator obisnuit nu poate crea socketi RAW/ICMP iar in cazul ping-ului, acesta este executat ca “root”, nicidecum sub uid/gid-ul userului.- ATENTIE: Nu dezactivati bit-ul suid/sgid pentru "su" ! Edited January 17, 2012 by aelius formatare corecta Quote
em Posted January 17, 2012 Report Posted January 17, 2012 Extra:Ca idee, atunci când folosi?i un exploit s? escalada?i în drepturi pe unix ce crede?i c? se întampl??P?i. Avem binarul X cu bitul de suid setat. Dac? noi reu?im s? îl facem s? crape înainte de terminare cu ce r?mânem în urma lui? Cu un shell uid=0 desigur. Quote