[Tech] Miglior spiegazione:

Gianni Bianchini giannibi@firenze.linux.it
Ven 27 Dic 2002 15:32:05 CET


On Fri, 27 Dec 2002 15:02:09 +0100
Leonardo Boselli wrote:

> Lo script č un cgi che deve consentire a ogni utente di una 
> macchina, che non ha/sa/vuole accesso shell di inserire nel file 
> .forward un indirizzo. Tale file deve avere uid/gid dell'utente ma lo 
> script viene fatto girare con gid mail .... La script vuole e confronta 
> la password , ma evitare di metterlo in suid root potrebbe essere 
> pių sicuro (o se gli do owner 0:8 e permessi 770 sto tranquillo ?)

Non mi e' completamente chiaro cio' che vuoi fare.
In ogni caso, la soluzione potrebbe essere quella di effettuare il
controllo della password ecc. con uno script a basso privilegio per
ricavarne un userid "sanitizzato", ovvero lo script non deve poter
essere indotto a generare uid inesistenti, peggio se =0, oppure
altri dati. Questo userid verra' poi passato a uno script perl
setuid root (purtroppo non c'e' modo di passare da un utente !=0 ad
un altro se non tramite un prog. setuid, un'idea potrebbe essere anche
quella di fare uno script setuid-utente per ogni utente :P ) 
il quale per prima cosa fa setuid all'utente passato, poi scrive
il file.
Va da se' che anche il contenuto da mettere nel .forward va
opportunamente controllato.

Questo potrebbe essere in qualche modo utile.

http://www.dwheeler.com/secure-programs/Secure-Programs-HOWTO/perl.html

Ciao.
Gianni.




Maggiori informazioni sulla lista flug-tech