Seguridad

‘El error criptográfico del año’ es para Java

Esto no son buenas noticias ni para Oracle ni para los Amantes de Java, pues este ostenta, según el experto e investigador en Ciberseguridad Thomas Ptacek, el premio al «Error criptográfico del año», por su fácil explotación y sus problemas derivados del ataque.

Esta vulnerabilidad permitiría a un actor malicioso firmar digitalmente archivos u otros datos del mismo modo que lo haría la entidad legítima, e incluso permitiría que las descargas maliciosas pasaran por contenido benigno sin que las aplicaciones de Java pudieran identificar la actividad oculta.

Algunas versiones de Java, se ven afectadas por una vulnerabilidad en la validación de firma Elliptic Curve Digital Signature Algorithm (ECDSA)

Para realizar una verificación de la firma, se realizan unos cálculos donde actúan la clave pública de cualquier entidad/persona que haya utilizado anteriormente su firma digital, un Hash de los datos y los números (Estas firmas se componen de un par de números, designados con (R y S).

Para que la firma fuera verificada, ambas partes deben de ser iguales, por lo que si alguno de estos fallara, representaría que quién firmó los datos, no es quién dice ser. (Lógicamente)

En conclusión, para que la firma sea válida, el valor de (R y S) nunca podría ser (0,0), ya que el valor de estos se multiplica con otros valores, no pudiendo por ende dar cero.

¿Dónde se originaba el error?

En el código C++ (original) verificaba precisamente que el valor de (R y S) nunca fuera cero. En cambio, el nuevo código en Java, no verificaba esta condición. Por lo que si cualquier cantidad multiplicada por cero es igual a cero, cuando (S) tiene que dividir un valor entre 0, se desencadena la falla de verificación. De esta forma, ésta permitiría que toda clase de implementaciones Java pudieran verse comprometidas si esta falla es explotada, incluyendo tokens de autenticación o actualizaciones de código ,entre otras.

Catalogado con la asignación de identificación CVE-2022-21449, al principio Oracle «puntuó» esta falla con una gravedad de 7.5/10. Tras el análisis posterior de especialistas en Ciberseguridad que escrutiñaron por completo el informe, concluyeron que dicha falla merecía ser considerada con una puntuación crítica de 10/10. Lo que más llama la atención es la facilidad con la que puede ser explotada.

Más información:

https://twitter.com/tqbf/

La entrada ‘El error criptográfico del año’ es para Java se publicó primero en Una al Día.

Powered by WPeMatico

Gustavo Genez

Informático de corazón y apasionado por la tecnología. La misión de este blog es llegar a los usuarios y profesionales con información y trucos acerca de la Seguridad Informática.