Resumen:

Una nueva técnica de ataque elude los cortafuegos de aplicaciones web (WAF) de Akamai a través de Spring Boot.

 

El Web Application Protector (WAF) de Akamai, es una solución diseñada para mitigar el riesgo de ataques distribuidos de denegación de servicio (DDoS).

 

También, utiliza tecnologías adaptativas que bloquean las amenazas de seguridad web conocidas y protegen a las API de una amplia gama de amenazas en la red.

 

Ahora bien, la recién detectada vía de ataque, se trata de una inyección de Spring Expression Language (SpEL) que podría potencialmente desencadenar la ejecución remota de código (RCE).

 

De acuerdo con el artículo técnico publicado en GitHub del problema, la amenaza utiliza la inyección de plantilla del lado del servidor como núcleo para la desviación.

 

A continuación, las instancias vulnerables lanzan mensajes de error en una expresión SpEL con páginas de error de etiqueta blanca. Esto hace que la inyección se evalúe en el lado del servidor y abre una nueva vía para su abuso.

 

Durante las pruebas, el WAF de Akamai bloqueó la SSTI. Sin embargo, el equipo de pentesters persistió.

 

El objetivo era encontrar una referencia arbitraria que, permitiera la ejecución directa del método de explotación.

 

Para conseguir un payload exitoso, los investigadores emplearon un método de reflexión para obtener acceso a “Class.forName”.

 

De ahí, construyeron una cadena arbitraria con el valor “java.lang.Runtime” y accedieron al método “java.lang.Runtime.getRuntime” que les permitió crear otra cadena y acceder a “java.lang.Runtime”.

 

Dicho payload era inferior a 3kb, por lo que fue aceptado por el servidor como una petición GET.

 

Una vez teniendo el payload en sus manos, los analistas necesitaban obtener un punto de entrada evasivo.

 

Eludir el WAF no fue fácil, pues, los pentesters necesitaron poco más de 500 intentos y 14 horas para encontrar un punto de entrada accesible.

 

Así mismo, los investigadores agregaron a su informe que necesitaron un profundo conocimiento en Java y en las capacidades de SpEL para construir una carga útil que eludiera el WAF de Akamai.

 

La investigación se realizó meses antes de que el informe estuviera disponible para el público, por ende, Akamai ya emitió un parche de seguridad para mitigar dicho problema.

 

Como resultado, los clientes que ejecutan la última versión del motor no están en riesgo de una posible explotación.

 

Recomendaciones: 

Se le insta a todos los administradores a ejecutar la última versión disponible del WAF de Akamai.

 

Prácticas básicas para mitigar cualquier ataque de ciberseguridad 

Mantener los dispositivos actualizados 

Instalar los últimos parches disponibles 

Activar la autenticación multifactor 

Activar las reglas de firewall 

Guardar copias de seguridad 

 

Referencias:

https://portswigger.net/daily-swig/akamai-waf-bypassed-via-spring-boot-to-trigger-rce

https://h1pmnh.github.io/post/writeup_spring_el_waf_bypass/#final-thoughts

 

 

Folio 374