Segmentation fault (NG-EDR: Network-Guided Endpoint Death by Ransomware) – Parte 2

NOTA PREVIA: este artículo tiene fines exclusivamente educativos y de investigación y no pretende en ningún caso ser un estudio detallado de mercado de los productos analizados. En caso de que cualquier fabricante quiera contactar con nosotros para resolver estos problemas, estaremos encantados de escucharlos y darles todos los detalles necesarios en [email protected]. De cualquier modo, todos los productos analizados resultan beneficiosos para la seguridad del endpoint y su uso es altamente recomendable.

¡Hola a todos!

De nuevo, tras meses sin poder escribir debido a la apretada agenda laboral y personal, aquí estamos otra vez. Hace tiempo, escribimos una entrada en la que comentábamos que, tras explorar el funcionamiento de algunos productos EDR, detectamos que 5 de ellos sobre los cuales pudimos analizar eran vulnerables al despliegue de ransomware básico a través de la red. Tenéis la entrada de la Parte 1 enlazada aquí aquellos que queráis conocer los detalles técnicos de la herramienta desarrollada.

En esta entrada, lo que vamos a hacer es poner nombre y apellidos a esos productos EDR y mostrar las evidencias que soportan nuestro trabajo y conclusiones, completando así la divulgación de nuestro estudio. Aprovechamos para recordar que este trabajo fue comprobado en diciembre de 2021, y nos consta que algunos fabricantes dicen ya disponer de sistemas de prevención contra este tipo de ataque.

Antes de comenzar, sin embargo, hay que dejar claros varios detalles:

  • Cada número de EDR puede trazarse con los expuestos en la primera parte publicada en este blog
  • Todos los productos EDR y AV analizados poseen todas sus características de detección avanzada habilitadas, incluyendo algunas dirigidas a la prevención de ransomware
  • Se realizan dos pruebas bien diferenciadas: una primera prueba en local, transfiriendo el binario cifrador a cada sistema con EDR/AV y tratando de ejecutarlo; y una segunda prueba en red, lanzando el binario cifrador a través de PSExec por SMB

EDR 1 – Panda Adaptive Defense 360

Los resultados para este producto son los siguientes:

  • Detección por Canary Files: NO
  • Detección por Volumen: NO
  • Detección por Binario Desconocido:
  • Detección por Protección Frente a Modificaciones: NO
  • Detección en red: NO

Como podéis ver, Panda Adaptive Defense 360 es capaz de detectar la prueba local, dado que para un binario desconocido provee mecanismos de bloqueo. Esto se puede apreciar en el siguiente vídeo.

Ransomware PoC – Prueba Local EDR Panda Adaptive Defense 360

Como veis, este EDR tiene la capacidad de detener la prueba local de manera muy rápida, efectiva y sin pérdida de datos. Sin embargo, cuando la alerta ante binario desconocido llega al equipo que gestiona la solución, puede ocurrir que sea catalogado como goodware o no malicioso, llegando a poder ejecutarse en ocasiones posteriores. No obstante… ¡Confiamos en que después de un buen análisis se descarte esta opción y se marque siempre como malicioso!

EDR 2 – CrowdStrike Falcon Insight

Los resultados para este producto son los siguientes:

  • Detección por Canary Files: NO
  • Detección por Volumen: SÍ*
  • Detección por Binario Desconocido: NO
  • Detección por Protección Frente a Modificaciones: NO
  • Detección en red: NO

* Este producto posee detección por volumen, si bien no detiene el cifrado. No obstante, si se desencadena una alerta de ese tipo, un administrador de la solución podría aislar rápidamente el equipo afectado, por lo que se puede llegar a mitigar la amenaza.

CrowdStrike, por su parte, basa la detección de ataques de ransomware en técnicas basadas en analizar el volumen de ficheros modificados en un breve periodo de tiempo. El siguiente vídeo demuestra que el producto EDR, por sí mismo, no es capaz de detener el ataque ni siquiera ejecutado localmente en la máquina víctima.

Ransomware PoC – Prueba Local EDR CrowdStrike Falcon Insight

No obstante, no es oro todo lo que reluce y, a pesar de que no se detiene el ataque, sí que se desencadenan varias alertas debido al comportamiento malicioso del binario cifrador. En la siguiente imagen tenéis un ejemplo de correo automatizado que le llegaría al usuario administrador de la solución, quien desde la consola podría observar todos los detalles y aislar el equipo. No obstante, no estaría de más una respuesta automática por parte del EDR al detectar dicha actividad maliciosa… ¿no?

EDR 3 – Elastic Endpoint Security

Los resultados para este producto son los siguientes:

  • Detección por Canary Files:
  • Detección por Volumen:
  • Detección por Binario Desconocido: NO
  • Detección por Protección Frente a Modificaciones: NO
  • Detección en red: NO

En este caso, el EDR analizado posee dos mecanismos de prevención contra el ransomware. Por un lado, detendrá la ejecución de un binario si se tocan los ficheros señuelo que tiene desplegados. Por otro lado, en caso de que se estén cifrando muchos archivos en muy poco tiempo, saltarán las alarmas y se detendrá la ejecución. En el siguiente vídeo podéis verlo de manera muy clara.

Ransomware PoC – Prueba Local EDR Elastic Endpoint Security

En este caso, se tiene una detección más o menos rápida, si bien existe una pequeña pérdida de datos, ya que se deben cifrar varios archivos para que los umbrales del EDR salten y se detenga la ejecución del binario malicioso. Estos umbrales son susceptibles a bypasses, aunque ello ralentizaría mucho un ataque real, tanto que seguramente no merezca la pena desplegar el ransomware de ese modo. Por tanto, este EDR es bastante efectivo también frente a esta prueba en local. Y no solamente eso, sino que además nos provee valiosa información en su consola de control en forma de alertas (fijaos como utiliza los dos mecanismos de detección comentados):

EDR 4 – CheckPoint Harmony

Los resultados para este producto son los siguientes:

  • Detección por Canary Files:
  • Detección por Volumen:
  • Detección por Binario Desconocido: NO
  • Detección por Protección Frente a Modificaciones: NO
  • Detección en red: NO

De nuevo, el EDR analizado posee dos mecanismos de prevención contra el ransomware. Por un lado, detendrá la ejecución de un binario si se tocan los ficheros señuelo que tiene desplegados. Por otro lado, en caso de que se estén cifrando muchos archivos en muy poco tiempo, saltarán las alarmas y se detendrá la ejecución. En el siguiente vídeo podéis verlo también de manera muy evidente.

Ransomware PoC – Prueba Local EDR CheckPoint Harmony

Como ocurría con Elastic Endpoint Security, con CheckPoint Harmony se tiene una detección más o menos rápida, si bien existe una pequeña pérdida de datos, ya que se deben cifrar varios archivos para que los umbrales del EDR salten y se detenga la ejecución del binario malicioso. Estos umbrales son también susceptibles a bypasses, aunque de nuevo se ralentizaría mucho un ataque real. Este EDR es igualmente bastante efectivo también frente a esta prueba en local. Y… ¡sorpresa! También nos provee valiosa información en su consola de control en forma de alertas.

AV – Windows Defender

Los resultados para este producto son los siguientes:

  • Detección por Canary Files: NO
  • Detección por Volumen: NO
  • Detección por Binario Desconocido: NO
  • Detección por Protección Frente a Modificaciones:
  • Detección en red: NO

Finalmente vamos con Windows Defender, el antivirus quizá más conocido. En este caso, la protección que nos provee el fabricante es propia y denominada “Protección Frente a Modificaciones”. Está genial, ya que como veréis en el vídeo impide que un atacante pueda modificar archivos en carpetas (al menos de manera local, en red ya veremos…). El principal problema es que no viene activada por defecto en instalaciones limpias de Windows, por lo que hay que habilitarla manualmente. En cualquier caso, una vez habilitada se puede ver lo efectiva que es la solución:

Ransomware PoC – Prueba Local AV Windows Defender

Windows Defender provee una detección rápida, efectiva y sin pérdida de datos, ya que detiene la ejecución e impide la modificación de archivos en tiempo real. Sin embargo, como comentábamos, esta solución no viene activa por defecto en los sistemas Windows, por lo que queda a elección del usuario habilitarla o no (y, por lo general, no suele habilitarse…).

Prueba en red – Despliegue de ransomware a través de SMB

Finalmente, os presentamos lo que consideramos el hallazgo de la investigación. No por simple es menos destructivo, como veremos. La cuestión es que estos productos funcionan más o menos bien en local, pero si intentamos cifrar a través de la red haciendo uso del protocolo SMB, ninguno de ellos es capaz de detener el ataque. Así las cosas, si queremos cifrar el disco duro “C:\” de una máquina y, a través de SMB tenemos la carpeta compartida “C$”, podemos hacerlo desde una máquina ajena, indicando que queremos cifrar “\\hostname\C$”.

Con lo anterior en mente, parece lógico que los productos EDR quedan fuera de juego, ya que por mucho que detecten (de hecho, algunos lo hacen), no pueden detener el binario cifrador ya que se encuentra en una máquina ajena. Asimismo, ninguno de ellos provee mecanismos de aislamiento ni prevención contra este ataque. Para muestra de ello, aquí tenéis la evidencia en forma de vídeo:

Ransomware PoC – Prueba en red múltiples EDR/AV

Aunque está acelerado, el vídeo es un poquito largo, pero merece la pena. Se puede ir viendo cómo se lanza el cifrado en red desde una máquina Windows protegida por Windows Defender, el cual no detecta dicho binario cifrador. Poco a poco, vemos como todos los ficheros almacenados en los escritorios víctimas se van cifrando (¡¡incluso aunque algún EDR/AV lo detecta, el proceso sigue su curso!!). Con ello, podemos concluir que si conseguimos los requisitos mencionados en la parte primera del artículo y, además, conseguimos lanzar el binario malicioso, podemos cifrar por SMB archivos de cualquier máquina que tenga alguno de los productos analizados instalado.

Y no solamente eso, las últimas pruebas que realizamos, más destructivas, consistieron en cifrar directamente la carpeta “C:\Windows”. Una vez visto el vídeo anterior, es fácil comprender que ningún EDR/AV es capaz de detener este ataque por las mismas razones. Finalmente, el efecto que conseguimos es una denegación de servicio prácticamente irreversible en las máquinas, con el riesgo que ello conlleva.

Para cerrar esta serie de entradas, simplemente queremos dejar claro que el fin de este trabajo es educativo y de investigación y en ningún caso para dañar los productos analizados. Por ello, decidimos no publicar el código fuente de los binarios cifradores para que no se haga un mal uso de los mismos (y tampoco nos hacemos responsables si alguien consigue generar binarios cifradores y los lanza haciendo uso de esta técnica). Asimismo, reiteramos que estaremos encantados de dar más detalles técnicos a cualquier vendor interesado en nuestro trabajo y en protegerse ante este tipo de ataques.

~km0xu95