Fallo de ejecución remoto que amenaza aplicaciones creadas con framework Spring

Investigadores de seguridad han descubierto tres vulnerabilidades en el framework de desarrollo Spring, una de las cuales es una falla crítica de ejecución remota de código que podría permitir a atacantes remotos ejecutar código arbitrario contra aplicaciones creadas con este framework.

El framework Spring es un framework popular, liviano y de código abierto para desarrollar aplicaciones empresariales basadas en Java.

En un aviso publicado por Pivotal, la compañía detalló las siguientes tres vulnerabilidades descubiertas en el framework Spring con versiones 5.0 a 5.0.4, 4.3 a 4.3.14, y versiones anteriores no soportadas:

  • Crítica: ejecución remota de código con spring-messaging (CVE-2018-1270).
  • Alta: Directory traversal con Spring MVC en Windows (CVE-2018-1271).
  • Baja: Contaminación multiparte de contenido con framework Spring (CVE-2018-1272).

Las versiones vulnerable del framework Spring exponen a los clientes de STOMP sobre endpoints WebSocket con un broker STOMP en memoria a través del módulo spring-messaging, que podría permitir a un atacante enviar un mensaje especialmente manipulado al broker, lo que podría llevar a un ataque de ejecución de código remoto (CVE-2018-1270).

“El uso de autenticación y autorización de mensajes, como el proporcionado por Spring Security, puede limitar la exposición a esta vulnerabilidad solo a los usuarios que pueden usar la aplicación”, sugiere la compañía.

El segundo fallo (CVE-2018-1271) reside en el modelo MVC de Spring que permite ejecutar un ataque Directory Traversal y acceder a directorios restringidos cuando están configurados para servir recursos estáticos (por ejemplo, CSS, JS, imágenes) en un sistema de archivos en Windows.

Esta vulnerabilidad no funciona si no se está utilizando Windows para servir contenido y puede evitarse si no se sirven archivos del sistema de archivos o se utiliza Tomcat / WildFly como servidor.

Pivotal publicó las versiones 5.0.5 y 4.3.15 del framework Spring, que incluyen correcciones para las tres vulnerabilidades. La compañía también lanzó Spring Boot 2.0.1 y 1.5.11, que coinciden con las versiones parcheadas del framework Spring.