CVE-2022-41040 y CVE-2022-41082: día cero de MS Exchange

Resumen:

A fines de septiembre, el GTSC informó sobre un ataque a infraestructura crítica en agosto. Durante la investigación, los expertos descubrieron que durante el ataque se utilizaron dos vulnerabilidades de día cero en Microsoft Exchange Server. La primera, posteriormente identificada como CVE-2022-41040, es una vulnerabilidad de falsificación de solicitud del lado del servidor (SSRF) que permite a un atacante autenticado activar de forma remota la siguiente vulnerabilidad, CVE-2022-41082. La segunda vulnerabilidad, a su vez, permite la ejecución remota de código (RCE) cuando un atacante puede acceder a MS Exchange PowerShell. Como se señala en el informe de GTSC, las dos vulnerabilidades se han utilizado juntas para crear una puerta trasera y realizar movimientos laterales en un servidor vulnerable.

Tras el descubrimiento de CVE-2022-41040 y CVE-2022-41082, Microsoft proporcionó una guía de mitigación, seguida de varias actualizaciones. Según la empresa, las vulnerabilidades afectan a MS Exchange Server 2013, MS Exchange Server 2016 y MS Exchange Server 2019.

El 11 de octubre de 2022, Microsoft lanzó parches para cubrir esta vulnerabilidad como parte de su actualización del martes de parches. Después de eso, el 17 de noviembre, el investigador de seguridad publicó el primer PoC funcional. Era un script de Python que acepta los siguientes parámetros: nombre de usuario, contraseña, dirección de correo electrónico y una línea de comando para ejecutarse en el host de la víctima.

La comunidad de ciberseguridad ha nombrado el par de vulnerabilidades ProxyNotShell. El nombre hace referencia a la última cadena de ataques de ProxyShell, que contenía vulnerabilidades similares en los servidores de Exchange que se descubrieron en 2021. Los atacantes los usaron para crear shells web y ejecutar código arbitrario en servidores vulnerables de Microsoft Exchange.

Detalles de la operación ProxyNotShell

El primer paso en este ataque es la explotación. CVE-2022-41040 Para acceder al extremo de la API de PowerShell. Uso de filtrado de entrada inadecuado en Exchange Detección automática mecanismo, un atacante con una combinación conocida de inicio de sesión y contraseña para una cuenta registrada puede obtener acceso a un punto final privilegiado de la API de Exchange Server (https://%cambio de dominio del servidor%/potencia Shell). Este acceso permite a un atacante ejecutar comandos de PowerShell en el entorno de Exchange en la máquina del servidor pasándolos en la carga a través del protocolo XML SOAP.

El siguiente paso es que el atacante inicie sesión. Gestión empresarial basada en web (WBEM) a través de protocolo WSMAN. Un atacante lanza un shell en el sistema vulnerable para ejecutar aún más un script de PowerShell Control remoto de Windows (PsRemoting).

Solicitud HTTP POST con XML SOAP para iniciar PsRemoting

Después de lanzar el caparazón, el atacante debe extender inmediatamente su vida; De lo contrario, el shell se cerrará porque su tiempo de caducidad es demasiado corto de forma predeterminada. Esto es necesario para la ejecución posterior del comando en Exchange Server. Para hacer esto, el atacante envía inmediatamente una solicitud especial a través de MUJER: que permite mantener viva versión

Para extender la vida útil del shell para la solicitud HTTP POST con XML SOAP

Para extender la vida útil del shell para la solicitud HTTP POST con XML SOAP

Después de eso, el atacante aprovecha la segunda vulnerabilidad. CVE-2022-41082. Con PowerShell Remoting, un atacante envía una solicitud para crear una libreta de direcciones, pasando datos encriptados y serializados con una carga útil personalizada como parámetro. En el PoC publicado, estos datos codificados contienen una herramienta llamada System.UnitySerializationHolder que genera un objeto Sistema.Windows.Markup.XamlReader lección Esta clase procesa los datos XAML de la carga útil que crea un nuevo objeto Sistema: Diagnóstico clase y contiene una llamada de método para abrir un nuevo proceso en el sistema de destino. Este es el proceso en el PoC publicado calc.exe:.

Solicitud HTTP POST con XML SOAP para iniciar un nuevo proceso

Solicitud HTTP POST con XML SOAP para iniciar un nuevo proceso

La carga útil principal que ejecuta el proceso calc.exe

La carga útil principal que ejecuta el proceso calc.exe

Explotación de correo ProxyNotShell

Unas semanas después de que se descubriera la vulnerabilidad, Kaspersky descubrió un exploit exitoso. ProxyNotShell En la naturaleza. El actor realizó las siguientes acciones:

  • Inteligencia (usuarios, grupos, dominios)
  • Varios intentos de secuestro (incluso descargando binarios vulnerables)
  • Inyección de proceso remoto
  • Persistencia
  • cáscara inversa:

En este caso, el atacante tenía las credenciales para llevar a cabo tal intrusión. Aprovecharon el servidor Exchange de la empresa y, como resultado, pudieron crear cualquier proceso que quisieran en la máquina Exchange, pasando los comandos como una carga útil.

Todos los procesos del lado del servidor iniciados por una operación tienen un proceso principal principal con ciertos parámetros; w3wp.exe -ap “msexchangepowershellapppool”.

Estos pasos posteriores a la explotación del ataque son muy similares a los pasos del ataque informados por TrendMicro, con la única diferencia de la vulnerabilidad que se está explotando.

Nuestro producto protege contra todos estos pasos posteriores a la explotación, así como contra otros ataques que se pueden aprovechar. CVE-2022-41040 y: CVE-2022-41082 vulnerabilidades. Nombre del descubrimiento ProxyNotShell es PDM:Exploit.Win32.Genérico.

Nuestras recomendaciones

Algunos consejos para aquellos preocupados por la posible explotación de ProxyNotShell u otras vulnerabilidades de día cero:

  • Concentre su estrategia de defensa en la detección de movimientos laterales y la filtración de datos. Presta especial atención al tráfico saliente para detectar enlaces de ciberdelincuentes.
  • Utilice los datos de inteligencia de amenazas más recientes para estar al tanto de los TTP reales utilizados por los actores de amenazas.
  • Utilice una solución de seguridad con componentes de prevención de exploits, vulnerabilidades y administración de parches, como Kaspersky Endpoint Security for Business. Nuestro componente de prevención de exploits supervisa la actividad sospechosa de las aplicaciones y bloquea la ejecución de archivos maliciosos.
  • Utilice soluciones como Kaspersky Endpoint Detection and Response y Kaspersky Managed Detection and Response que identifican y detienen los ataques en una etapa temprana.

Indicadores de compromiso

F77E55FD56FDAD21766CAA9C896734E9 LockDown.dll: Una biblioteca de secuestro malicioso Trojan.Win64.Dllsecuestrador
F9322EAD69300501356B13D751165DAA mfeann.exe: Se ha eliminado un binario vulnerable al secuestro de DLL PDM:Exploit.Win32.Genérico
A2FAE32F116870E5A94B5FAB50A1CB71 Svchost.exe: Proxy inverso malicioso Trojan.Win64.Agent.qwibok
HEUR:HackTool.Win64.Proxy.gen
47A0814408210E6FCA502B3799B3952B Glib-2.0.dll Una biblioteca de secuestro malicioso Trojan.Win64.Dllsecuestrador
379F87DAA6A23400ADF19C1CDD6B0DC9 vmwarexferlogs.exe: Se ha eliminado un binario vulnerable al secuestro de DLL PDM:Exploit.Win32.Genérico
193.149.185.52:443 servidor C2
sync.service.auzreservices.com servidor C2

Leave a Reply

Your email address will not be published. Required fields are marked *