Microsoft
actualiza sus políticas de seguridad PKI y bloqueará cualquier certificado que
utilice claves RSA de cifrado menores a 1024 bits. Una vez más, se cura en
salud frente al revés sufrido por TheFlame. Explicaremos qué significa
exactamente esto. Microsoft empezará a
bloquear los certificados creados con claves criptográfica RSA menores a 1024
bits. En el ciclo de parches de agosto, instalará una actualización que
bloqueará estos certificados. ¿Qué efectos tendrá para el usuario? Microsoft
dará por inválidos estos certificados en conexiones SSL, software firmado,
correos firmados (con S/MIME).
Qué significa esta medida
Cuando se crea un certificado, el
que lo solicita crea un par de claves con el algoritmo RSA. Estas no son más
que un par de números primos que se complementan, de forma que permiten cifrar
o descifrar mensajes. Estos números son muy complejos de deducir uno a partir
del otro, por lo que se usarán uno como clave pública, y otro como privada. El
número del par que se decide como clave pública es enviado a una entidad
certificadora que "certificará"
que esta clave pública pertenece al dueño, firmando a su vez esa clave y los
datos adjuntos (nombre, función del certificado, etc).
Si para el cálculo de esas claves
se usan números "pequeños",
las posibilidades de calcular uno a partir de otro son más altas. Hoy en día,
una clave de 1024 significa que el producto de los dos números primos está
dentro del espacio comprendido en 21024 (en el ejemplo de la imagen,
se trataría del número 55).
Hay que señalar que el simple
hecho de deducir la clave privada a partir de la pública no sería el único
trabajo que un atacante debería realizar.Tendría que, por ejemplo en el caso de
SSL, suplantar el dominio con un ataque de hombre en el medio o
envenenamiento DNS
.
¿Realmente es necesario?
Se ha oído ya en numerosas
ocasiones que las claves RSA de 1024 bits deben considerarse inseguras. Por
ejemplo, las claves de 300 bits son rompibles en cualquier ordenador personal
en cuestión de pocas horas. En 1999 se demostró que las claves de 512 eran factorizables
usando una granja de sistemas. Hoy es rompible en cuestión de semanas con un ordenador
personal. De hecho, en
noviembre de 2011 se comprobó que cierto malware estaba usando certificados de
512 bits factorizados para firmar sus binarios. Hoy por hoy, se recomienda
usar siempre de 2048 bits.
Por tanto, aunque no se hayan
observado todavía ataques a este tipo de certificados, Microsoft se cura en salud. Su movimiento sin duda, hará que los
administradores o entidades certificadoras que todavía usan certificados con
claves de 1024 bits se vean aislados: las páginas que lo usen o el software
firmado con este tipo de claves no funcionarán en Windows, lo que, en la
práctica, supone el fin de este tipo de certificados
débiles.
Microsoft ha tenido en cuenta
algo importante. ¿Qué pasa con el software firmado hace años, quizás abandonado
pero útil, que usaba claves de 1024 bits? No se deben bloquear programas que
fueran firmado en un momento en el que se consideraba seguro hacerlo. Por
tanto, estos binarios, si fueron firmados antes del 1 de enero de 2010,
seguirán funcionando.
¿Cómo detectar estos certificados?
Para los desarrolladores o
administradores, una manera de detectar la presencia de claves RSA menores a
1024 bits es utilizar la herramienta certutil.exe para volcar los certificados:
![]() |
| (ejemplo de certificado que será rechazado) |
o mediante la consola
certmgr.msc.
En el blog oficial de Windows PKI
se
ofrecen además diferentes técnicas para identificar en el sistema aquellos
certificados que serán bloqueados.
Más información:
RSA
Malware y certificados digitales
Blocking RSA Keys less than 1024 bits (part 2)
RSA keys under 1024 bits are blocked
Microsoft's continuing work on digital
certificates
In face of Flame malware, Microsoft will revamp
Windows encryption keys
José Mesa Orihuela
Sergio de los Santos
Twitter: @ssantosv



No hay comentarios:
Publicar un comentario