[Ayuda] autenticacion

Sandino Araico Sánchez sandino en sandino.net
Jue Abr 22 01:57:26 CDT 2004


Luis Daniel Lucio Quiroz wrote:

>y quienrayos dijoq se l es da shell?
>  
>
Ahí está la raíz del asunto, pero es un poco más complicada de entender 
de lo que yo pensaba, pero independientemente de que ya esté solucionado 
el pedo ahí les va:

Partimos del hecho de que Internet ya no es una comunidad pequeña y 
amigable como lo era en los años sesentas y ahora existen miles de 
brasileños que no tienen otra cosa que hacer durante el día que comer 
cocos y atacar sistemas ajenos.

Bueno, pues lo que no me gusta de usar cuentas del sistema cuando no es 
indispensable hacerlo (como en el caso de los administradores que a 
huevo necesitan shell) es por varias razones: La primera es por que los 
usuarios típicos, comunes y corrientes eligen passwords malísimos, y si 
alguien te snifeó un password y por casualidad ese usuario tiene shell 
pues ahí ya se te metió un brasileño, pero aunque no tengan shell, la 
segunda razón es que les estás dando la oportunidad  de tratar de 
explotar a un PAM defectuoso (y tanto Linux como Solaris usan PAM) ya 
sea desde ssh, telnet o desde el mismo pop3d o imapd y una oportuindad 
de esas bién aprovechada le daría a nuestro amigo brasileño acceso a tu 
máquina como superusuario y no queremos que eso suceda ¿o si? y la 
tercera razón es porque los servidores de correo líderes de la 
actualidad (por lo menos Sendmail y Postfix que yo conozca) tienen la 
capacidad de entregar el correo buzones virtuales asociados a cuentas de 
correo virtuales y esto lo asociamos con servidores POP o IMAP modernos 
(del siglo XXI) que saben autentificar esas cuentas de correo virtuales 
contra archivos planos o bases de datos que en ningún momento necesitan 
entrar en contacto con PAM o la autentificación del sistema y de esta 
manera cierras varias puertas a los ociosos que quieren tener acceso no 
autorizado a tu sistema...

Ah, y no es necesario modificar tu aplicación de PHP que ya funciona 
autentificando contra el POP3 del servidor de correo....

Desde luego, no es imposición, es sólamente mi opinión sobre una mala 
práctica que ya no tiene razón de ser, ya no vivimos en el siglo XX 
cuando las cuentas de usuarios del sistema eran seguras, de las últimas 
cuatro versiones de la serie 2.4 de Linux dos han sido vulnerables a 
escalabilidad de usuario mortal hacia superusuario llámese root o como 
se llame, las cuentas de usuario mortal del sistema ya no son seguras en 
el siglo XIX y deben ser cuidadas casi con el mismo celo con el que es 
cuidada la cuenta del superusuario.

Y bueno, para aquellos que dicen que además de alegar hay que proveer 
soluciones, pues ahí les van dos recomendaciones:

1. La más fácil: Sendmail + Teapop con la configuración para hosts 
virtuales en ambos
2. La mejor: Postfix + DBMail usando transporte pipe o LMTP

>El Jue 08 Abr 2004 22:56, Sandino Araico Sánchez escribió:
>  
>
>>Luis Daniel Lucio Quiroz wrote:
>>    
>>
>>>No para nada es la forma mas sencilla y eficaz,
>>>en promedio un usuario normal comun y corriente es incapaz de recordar una
>>>buena contraseña además de tener N cuentas, que para el correo, que para
>>>el sistema de web 1, 2 y 3, que para el dominio, bla bla.
>>>      
>>>
>>¿y a poco les das shell a todos los usuarios comunes y corrientes?
>>
>>    
>>
>>>Es mejor así.
>>>
>>>El Mié 07 Abr 2004 05:35, Sandino Araico Sánchez escribió:
>>>      
>>>
>>>>Max Valdez wrote:
>>>>        
>>>>
>>>>>>Activa en tu Solaris un servidor de POP, y has que tu programa se
>>>>>>"firme" en el con las credenciales proporcionadas por el usuario.
>>>>>>
>>>>>>El servidor POP no necesita estar completo (ni tener correo) y puede
>>>>>>vivir en otro puerto, sólo te interesa como autentificador.
>>>>>>
>>>>>>Por qué POP? Es un protocolo simple y PHP lo conoce bien :-)
>>>>>>            
>>>>>>
>>>>>Solo ten en cuenta que si los usuarios no usan SSL (probablemente nadie
>>>>>lo va a hacer), los login y passwords en texto plano.
>>>>>          
>>>>>
>>>>Los usuarios usarán SSL si no les dejas otra alternativa:
>>>><?
>>>>   if(empty($_SERVER["*HTTPS*"])) {
>>>>       header("Location: https://mi-servidor.com/mi-aplicacion.php");
>>>>       exit;
>>>>   }
>>>>?>
>>>>
>>>>Sin embargo, pese a lo que opinen los demás pienso que es mala idea
>>>>autentificar contra usuarios del sistema de cualquiera que sea el
>>>>sistema.
>>>>
>>>>        
>>>>
>>>>>Max
>>>>>          
>>>>>
>>>_______________________________________________
>>>Ayuda mailing list
>>>Ayuda en linux.org.mx
>>>Para salir de la lista:
>>>http://mail.linux.org.mx/cgi-bin/mailman/listinfo/ayuda/
>>>      
>>>
>
> 
>_______________________________________________
>Ayuda mailing list
>Ayuda en linux.org.mx
>Para salir de la lista: http://mail.linux.org.mx/cgi-bin/mailman/listinfo/ayuda/
>  
>


 
_______________________________________________
Ayuda mailing list
Ayuda en linux.org.mx
Para salir de la lista: http://mail.linux.org.mx/cgi-bin/mailman/listinfo/ayuda/



Más información sobre la lista de distribución Ayuda