Vamos a copiar aquí una noticia aparecida en Kriptópolis que, de confirmarse, supondría un gravísimo ataque contra los algoritmos de cifrado fuerte actualmente en uso. Como no somos técnicos en esta materia, poco es lo que podemos decir sobre la ingeniería que fundamenta este ataque, pero lo que sí se puede deducir es algo que el sentido común venía advirtiendo ya a los usuarios comunes: cualquiera que sea el sistema de cifrado, si la máquina en la que éste se realiza acaba bajo el control de un atacante, la clave caerá.
Hasta ahora el problema era sencillo de atajar. Las claves PGP o Gnupg tienen un punto intrínsecamente frágil. La contraseña o "frase de paso", por muy larga y aleatoria que sea, siempre será vulnerable a una ataque de fuerza bruta y si la contraseña cae y, además, la clave está presente, la clave también caera.
Es decir, teniendo en cuenta que "clave" y contraseña no son la misma cosa; que la clave es la que se genera mediante la aplicación del algoritmo de cifrado y la contraseña sólamente es una palabra, frase o serie aleatoria de números y letras que debe proporcionarse al programa de cifrado para que ponga en funcionamiento la "clave" y, con ella, se cifre el mensaje, la contraseña siempre será vulnerable porque su complejidad nunca podrá ser tanta que impida su uso habitual en la máquina.
De esto se deducía que es muy mala idea tener guardadas las claves de cifrado en el disco duro de un ordenador al que un atacante pudiera llegar a tener acceso. El problema era fácil de solucionar, puesto que dichas claves siempre se podían almacenar en un CD o en una llave USB y, a la vez, tratar de mantener el ordenador limpio de programas espías que, por ejemplo, fueran capaces de enviar al atacante, el registro de las teclas que se han estado pulsando.
La situación, según parece deducirse del texto adjunto, viene a dar una vuelta más a este eslabón débil de la cadena de cifrado. El nuevo ataque necesita, también, tener acceso a la máquina en la que están almacenadas o se están usando las claves a romper, pero la novedad es la facilidad y rapidez con la que obtener la totalidad o la práctica totalidad de la clave atacada y sin ninguna necesidad de descubrir, por el método de ensayo y error, la contraseña.
La conslusión viene a ser la misma. Si un atacante consigue acceder al ordenador en el que se almacenan o están funcionado las claves de cifrado, la seguridad de los mensajes se esfuma. En fin, he aquí la noticia y el comentario que hace de ella Fernando Acero:
Nuevo ataque contra RSA: la vulnerabilidad está en el chip
Por admin
Creado 18/11/2006 - 11:37pm
Yahoo! ha levantado [1] hoy la liebre en la Red, pero tanto ese medio como el artículo original [2] en Le Monde, hacen referencia a un misterioso trabajo "aún confidencial".
Sin embargo, Kriptópolis ha podido encontrar on-line una versión preliminar [3] del que parece ser el artículo que ambos mencionan, pendiente tan sólo de revisión editorial.
El artículo en cuestión explica un nuevo ataque contra RSA, que profundiza en una vía recientemente abierta -denominada BPA (Branch Prediction Analysis)- y que aprovecha una peculiaridad del diseño de los microprocesadores actuales...
En muy pocas palabras, los autores del trabajo afirman que los procesadores actuales han tomado un atajo de diseño (el módulo de predicción) en aras de favorecer la velocidad de las operaciones, lo que perjudica seriamente la seguridad de ciertas operaciones.
De hecho, debido a esa debilidad, y mediante un simple software que espiara determinadas operaciones de la CPU, sería posible romper con suma facilidad las claves RSA en las que descansa hoy en día la seguridad del comercio electrónico mundial.
A modo de ejemplo, los autores afirman haber hallado al primer intento una clave de 512 bit utilizada en OpenSSL, en sólo varias milésimas de segundo.
Según Le Monde, fuentes de la máxima solvencia confirman la realidad de la amenaza. Afirman que la solución radical pasaría por rediseñar los microprocesadores, pero que un posible atajo sería que las implementaciones dejaran de utilizar el módulo de predicción del procesador, aunque tal medida podría convertir en cuatro veces más lentas las operaciones criptográficas en línea.
Al parecer, el trabajo será presentado públicamente en febrero de 2007, durante la Conferencia RSA 2007 [4], a celebrar este año en San Francisco (EE.UU.).
Veamos algunas cosas... que no es así.
Enviado por Fernando Acero el 20. Noviembre 2006 - 22:03.
He estado leyendo con más detenimiento los documentos de este artículo y el que envié yo y la cosa puede tener más miga de la que parece.
Los hechos parece que son los siguientes:
a) Están afectados todos los sistemas superescalares con predicción, con independencia de que se implementen mediante software o hardware. Las smartcards con sistemas operativos WCET (Worst Case Execution Analysis) también están afectadas ¿cuáles son?, habrá que verlo, pero con el esfuerzo dedicado a optimizarlas, casi podemos decir que todas.
b) No es necesario tener acceso físico al sistema, un troyano puede hacer el trabajo. No es necesario que el programa "espia" corra con privilegios especiales y basta con que se esté ejecutando antes que el algoritmo de cifrado. Lo único que puede cambiar algo del código del espía con cada modelo o velocidad de procesador, pero ese es un problema fácilmente salvable ya que los procesadores son habas contadas.
c) Todos los sistemas de seguridad ideados para proteger sistemas, tales como los que comenta Shevek en su post, son completamente inútiles ante este ataque. Por ejemplo, las smartcards con protección contra ataques side-chanel (usados con mucho éxito en los ataques a las plataformas de tv digital) también están afectadas, así como los sistemas que usan randomizadores, inversores, equilibradores de rama, o sistemas similares de protección también están afectados, con independencia de que su implementación sea por software o hardware.
d) Este sistema usa un proceso paralelo "espia" que interactua con el proceso "seguro" en los elementos comunes de la arquitectura.
A diferencia de los sistemas estadísticos o diferenciales, este sistema solamente necesita una pasada para lograr el 90% o más de la clave.
El ataque es relativamente simple, el programa "espia" ejecuta un determinado número de ramas y mide el tiempo de ejecución medio de cada rama en esa única ejecución.
Simplemente, ejecutando las ramas del programa "espía" y midiendo el tiempo total de ejecución de las mismas. Por lo tanto, el proceso "espía" puede conocer la traza completa de predicción del programa objetivo en las pilas y con ello, ser capaz de obtener la clave secreta, si no completa, en un porcentaje muy alto.
Para simplificar, podemos decir que el programa "espía" afecta al funcionamiento del programa "seguro" a través de las áreas comunes de la arquitectura del procesador y mediante la medición del tiempo de ejecución o metadatos de control, obtiene la información de la clave de forma bastante precisa.
Por lo tanto, como hemos dicho, los esquemas de protección usados hasta el momento, son completamente inútiles, como se comenta en el artículo, ante este novedoso ataque.
e) Las operaciones "sensibles" son las reducción modular y la inversión modular, aunque operaciones como la multiplicación o potenciación también pueden servir para detectar la clave.
Lo que implica que no solamente está afectado el algoritmo RSA, están afectados prácticamente todos los algoritmos de cifrado.
Sigo leyendo e intentando asimilar ya que el documento para mi gusto no es muy completo y deja algunas lagunas, pero revisando la bibliografía que le acompaña, se pueden sacar conclusiones más que interesantes, pero eso requiere algo más de tiempo.
De verdad, recomiendo la atenta lectura de los dos artículos ya que son muy interesantes y entre todos, podemos sacar algunas conclusiones interesantes.
Si se manifiesta que esta vulnerabilidad es explotable de forma práctica, las soluciones son pocas, complicadas y posiblemente caras.
"Copyleft 2006 Fernando Acero Martín. Verbatim copying, translation and distribution of this entire article is permitted in any digital medium, provided this notice is preserved".
URL
original
http://www.kriptopolis.org/nuevo-ataque-contra-rsa





