martes, 7 de julio de 2009

Un fallo en la clase IO::Socket::SSL de Perl permite falsificar certificados

Se ha detectado un error en la validación de certificados en la clase IO::Socket::SSL del modulo IO::Socket::INET de Perl. El fallo permitiría a un atacante remoto eludir restricciones de seguridad a través de un certificado especialmente manipulado.

Perl es un lenguaje de programación en script diseñado a finales de los 80, está basado en un estilo de bloques como los del C e incorpora características típicas de la programación en shell.

SSL (TLS en su última versión) es un protocolo de comunicación cifrado que usa clave publica y privada que permite autenticar a un servidor o usuario a través de (entre otros métodos) certificados asociados a un dominio.

Este error en la correcta validación de un certificado SSL que permitiría a un atacante generar un falso certificado con un prefijo similar al que se quiere suplantar y la aplicación en Perl no lo detectaría como inválido. De este modo un atacante podría generar un certificado para el dominio www.ejem y suplantar entre otros a www.ejemplo.com, siempre que la aplicación que acceda a este certificado esté programada en Perl y use la clase IO::Socket::SSL afectada.


Victor Antonio Torre
vtorre@hispasec.com


Más información:

Perl v1.26 2009.07.03
http://cpansearch.perl.org/src/SULLR/IO-Socket-SSL-1.26/Changes
http://cpansearch.perl.org/src/SULLR/IO-Socket-SSL-1.26/README

No hay comentarios:

Publicar un comentario en la entrada