[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: system() y variables de entorno



On 15 Jan 2002, Juan Antonio Martinez wrote:

> 
> Normalmente, en lugar de system(), en entornos seguros se utilizan las
> funciones execvp() y familia, donde le puedes pasar como parámetro un
> puntero a la lista de variables de entorno, que TU has previamente
> definido. La verdad es que nadie debería utilizar system() en entornos
> "criticos"

Vale no te entendí. Es que parecía que querías dar a entender que había 
alguna forma de usar system controlando el entorno y no te entendía por
esa razón preguntaba. Leete esa respuesta tuya y verás como parecía que 
decías eso pero ya está claro.

> No hace falta que el programa al que llamas sea "seguro". El problema
> reside en meter en la línea de comandos datos de las variables de
> entorno que puedan haber sido editados por alguien ajeno a tí. El
> ejemplo del telnetd debería ser suficientemente elocuente

Bueno pues haz un execvp() en un programa setuid llamando a vim,
a ftp, a less, u otros de estos que te permiten salir al interprete
de comandos ejecutando una subshell. Me parece a mi que le puedes 
quitar todo el entorno que quieras. Obtendrá una shell de root.


Un saludo

Antonio Castro

+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
        /\     /\      Ciberdroide Informática (Tienda de Linux)
          \\W//            <<< http://www.ciberdroide.com >>>
	 _|0 0|_                                                    
+-oOOO--(___o___)--OOOo----------------------------------------------------+ 
|  . . . . U U . . . . Antonio Castro Snurmacher  acastro@ciberdroide.com  |  
|  . . . . . . . . . .                                                     | 
+()()()----------()()()----------------------------------------------------+
| *** 1.700 sitios clasificados por temas sobre Linux en ***Donde_Linux*** |
| <<< http://www.ciberdroide.com/misc/donde/dondelinux.html >>>            |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+




Reply to: