[Tech] Alias sotto Proftpd
Gianni Bianchini
giannibi@firenze.linux.it
Ven 9 Mar 2001 16:22:55 CET
On Fri, Mar 09, 2001 at 01:32:28PM +0100, Francesco Giovannini wrote:
> > Only the super-user may change the root directory.
> >
>
> Gia' e' vero.... ma come mai mi funziona?!?
Nell'unico modo in cui e' possibile conciliare le due cose. :)
Ovvero proftpd _parte comunque come root_, legge un session.uid dal file
di configurazione ed esegue
setreuid(0,session.uid);
in questo modo setta all'utente non privilegiato il solo effective uid
cercando cosi' di limitare i danni nelle operazioni che non richiedono
privilegio e lasciandosi la possibilita' all'occorrenza di fare
setreuid(session.uid,0)
in modo da poter fare chroot e poi assumere, definitivamente stavolta,
l'identita' dell'utente che fa login.
E' la cosa piu' sicura che si puo' fare per gestire correttamente i
diritti degli utenti senza dover ad esempio creare un gruppo sotto cui
gira il demone ed a cui tutta l'area ftp deve essere accessibile (cosa
che fa muddleftpd). Chiaramente quest'ultima cosa e' limitante
(se l'utente vuole rendere parte della sua home accessibile in ftp
deve dare gli opportuni diritti al gruppo).
Dunque proftpd non rilascia completamente i privilegi di root fino a
quando l'utente non ha fatto login. Se da una parte questo protegge
contro bachi dovuti ad esempio alla creazione non sicura di file,
corse critiche, ecc., credo che sia assolutamente inefficiente nei
confronti dello sfruttamento di eventuali bachi che permettano
l'esecuzione di codice maligno estraneo da parte del demone.
Ciao.
Gianni.
--
Gianni Bianchini - giannibi@firenze.linux.it
giannibi@iname.com
Maggiori informazioni sulla lista
flug-tech