Apple ha publicado en dos semanas otra nueva versión de iOS. En laprimera corregía el fallo que permitía el jailbreak del dispositivo
desde jailbreak.me, y en esta segunda actualización, un grave fallo
de seguridad en la implementación de SSL conocido desde hace 9 años.
Las versiones 4.3.5 y 4.2.10 de iOS solucionan un fallo en el manejo
de los certificados X.509 usados durante el cifrado SSL. Esto puede
permitir que páginas que no son válidas pasen como tales, sin que el
navegador avise de que existe algún error en la cadena de certificación.
El problema ha sido descubierto por Gregor Kopf de Recurity Labs y Paul
Kehrer de Trustwave's SpiderLabs.
Cuando un usuario se conecta a una página a través de https, el
navegador recibe e intenta validar el certificado del servidor. Este
certificado viene firmado por autoridades que lo acreditan para el
dominio al que pertenecen. En esta cadena de validación, normalmente
existen agentes intermediarios en los que se confía. El fallo que
cometía Apple era no validar que estos emisores intermediarios pudiesen
realmente emitir certificados. Técnicamente, se trata de comprobar el
valor "Restricciones básicas" del certificado.
No se validaba que el emisor de certificados intermedios tuviese en
realidad el poder de emitir certificados. Así, cualquiera con un
certificado válido podía convertirse en emisor intermedio de cualquier
otro certificado para dominios conocidos. Por ejemplo, cualquiera con un
certificado emitido por Verisign podría a su vez crear un certificado
para paypal.com, montar una página falsa en ese dominio y Safari lo
daría como válido. O sea, el navegador comprobaría que la cadena es
válida, pero no que ese intermediario no debería poder emitir y firmar
certificados para otros. Se trata de una especie de "man in the middle"
en la cadena de certificación. Para completar el escenario del engaño,
el atacante debería además redirigir a la víctima a una página falsa
alojada en otro punto.
Lo más grave es que esto no es nuevo. En 2002 se descubrió que Internet
Explorer, Outlook y la mayoría de aplicaciones que usaban la cryptoAPI
de Windows cometían el mismo error y ya fue subsanado entonces.
Los descubridores han creado una web para la ocasión.
https://issl.recurity.com/. Si se visita sin que el navegador lance una
advertencia (cosa que ocurrirá con todos los iOS no parcheados) es que
se es vulnerable.
Se observa un certificado final que hace de intermediario. Cualquier
navegador en cualquier sistema operativo debería dar el certificado como
inválido... pero en iIOS vulnerables aparecerá como página perfectamente
segura.
No hay comentarios:
Publicar un comentario