:master: uhm, beh, diciamo di siOriginariamente inviato da adarkar
chi è che sa chi sta facendo qualcosa? ovvero chi sa che ora io sono root piuttosto ke foo piuttosto ke bar? è il pingu-kernel vero?
(nota: quanto segue e` powered by If I Remember Correctly(tm) and As Far As I Know(r))
Non proprio.cioè quando io scrivo la password, cosa sta succedendo? sto dicendo al kernel che i processi figli di quello lì che mi sta chiedendo la password saranno del tale utente giusto?
Quando immetti la password, si spera, e` perche` qualche programma te l'ha chiesta (e gia` qui, sulle modalita` di richiesta e di gestione della medesima, si potrebbe dibattere a lungo). Questo programma si occupa -a meno che non sia un trojan horse- del cambio di privilegi. Ossia, del passaggio da utente A a utente B. Cio` avviene, schematicamente, cosi`:
* il programma e` avviato con privilegi di utente A
* si ha necessita` di passare ai privilegi di utente B
- viene chiesta la password (o altra credenziale valida di identificazione) per utente B, in modo sicuro
* si confronta la credenziale con quanto e` presente nel sistema
* se il confronto ha avuto successo, si possono assumere i privilegi di utente B.
Il passo #3 e` segnato diversamente perche` "opzionale", nel senso che non tutte le coppie A->B lo richiedono; esempio: root->qualsiasialtracosa
Esatto, gira come root (o ha acquisito i privilegi di root mediante SUID). Il perche` sta nel fatto che per cambiare pivilegi si tratta, in ultima analisi, di effettuare -con successo- la chiamata set*uid() [setreuid() mi pare]. Questo e` conccesso solo se si hanno privilegi di root, altrimenti si ottiene un bell'erroree colui che mi chiede la password, sia esso xdm o mgetty o che so io, che diritto ha di farmi loggare come root? lui sta girando come root? perchè lui può cambiare "l'utente corrente"?![]()
Motivo: altrimenti ogni fesso che passa si reimposterebbe l'UID a 0 e festa finita...
Yes, ogni processo figlio eredita i privilegi del padre.e quando io eseguo un qualunque eseguibile, lui avrà gli stessi permessi miei vero?
su ha necessariamente il bit suid attivo. Per fare il cambio di utente e` necessario prima "salire" a root e poi "scendere" all'utente desiderato:e se su è figlio mio come mai lui può loggarsi come root?
in realta` la trafila e` sempre utente A -> root -> utente B.
No, direi che non ci sei andato lontano, almeno non lontano da quel che so ioditemi, sono ancora molto lontano dalla verità?![]()
quanto casino ho in testa da 1 a 8? 1024 vero?![]()
![]()




Rispondi quotando