Por Antonio Ropero antonior@hispasec.com Un error en la validación de Certificados realizada por los sistemas operativos de Microsoft puede permitir una gran variedad de ataques de suplantación de personalidad o saltar cualquier autenticación basada en certificados. El estándar del perfil de los certificados X.509 define múltiples campos adicionales que pueden ser incluidos en el certificado digital. Uno de estos campos es el "Basic Constraints" empleado para indicar las cadenas del certificado. Sin embargo, las APIs incluidas en CryptoAPI que construyen y validan las cadenas de certificados (CertGetCertificateChain(), CertVerifyCertificateChainPolicy() y WinVerifyTrust() ) no comprueban el campo "Basic Constraints". La vulnerabilidad puede permitir a un atacante que tenga un certificado "end-entity" válido emitir un certificado dependiente que, aunque sea falso, podrá a pesar de todo pasar la validación. Como la CryptoAPI se emplea en diversas aplicaciones, esto permite una gran variedad de ataques de suplantación de identidad. Como los siguientes: - Configurar un sitio web que imite a otro sitio diferente, y "pruebe" su identidad estableciendo una sesión SSL como el sitio web original. - Enviar emails firmados empleando un certificado digital que supuestamente pertenezca a un usuario diferente. - Engañar a sistemas de autenticación basados en certificados para conseguir acceso como usuario privilegiado. - Firmar digitalmente programas maliciosos usando certificados Authenticode que parezcan emitidos por una compañía en que los usuarios confíen. Microsoft publica parches para los productos afectados en las siguientes direcciones: Los parches publicados pueden descargarse desde las direcciones: Microsoft Windows 98: Windows 98 Second Edition: Windows Me: Windows NT 4.0: Windows NT 4.0 Terminal
Server Edition: Windows XP: Windows XP 64 bit Edition: En breve se publicarán las actualizaciones para:
Más información: Boletín de seguridad Microsoft MS02-50 |