
Detecta webshells depositados en servidores Microsoft Exchange explotados mediante el grupo de vulnerabilidades "proxylogon" (CVE-2021-26855, CVE-2021-26857, CVE-2021-26858, CVE-2021-27065)
Por favor, use las herramientas de Microsoft en su lugar:
Al evaluar el impacto, sugerimos encarecidamente asumir una brecha y examinar preventivamente todos los servidores de Exchange que hayan estado expuestos públicamente desde enero, incluso si no hay signos de compromiso activo.
Tenga en cuenta que la exfiltración de datos y los cambios de configuración fueron posibles (y estaban ocurriendo) solo a través de la parte SSRF de la cadena de explotación (es decir, sin lograr ejecución de código, sin dejar archivos ni generar nuevos procesos en el host de Exchange).
Esto es un falso positivo, los productos antivirus reaccionan a palabras clave listadas en el script. detect_webshells.ps1 está escrito intencionalmente como un archivo independiente usando PowerShell muy simple, para que puedas inspeccionarlo tú mismo. Las palabras clave que (correctamente) activan el antivirus están listadas en la línea 94. Si no te sientes seguro de entender lo que hace el script, ¡no lo ejecutes!
Con suerte, el hecho de que el software antivirus comenzó a detectar este script significa que también es capaz de detectar webshells reales, haciendo innecesario detect_webshells.ps1. Sin embargo, verifica que los directorios de Exchange e inetpub no estén en la lista blanca y ten en cuenta que los webshells solo se usaron para el acceso inicial. Una vez que los atacantes lograron la ejecución de código, generalmente implementaron mecanismos de persistencia adicionales, a veces incluso eliminando ellos mismos el webshell inicial para ocultar sus huellas.
Por lo tanto, no confundas la ausencia de webshells con la ausencia de compromiso - desafortunadamente, tu servidor aún podría haber sido hackeado y los atacantes eliminaron el webshell ellos mismos o un antivirus lo hizo (sin expulsar completamente a los atacantes de tu servidor).
Este script busca webshells colocados en servidores Microsoft Exchange mientras eran vulnerables a los siguientes CVE:
La actividad inicial durante enero de 2021 fue atribuida a HAFNIUM, sin embargo, desde entonces otros actores de amenazas obtuvieron estos exploits y comenzaron a usarlos. Antes de la divulgación pública y la publicación de parches por parte de Microsoft (desde aproximadamente el 27 de febrero), los servidores Exchange expuestos públicamente comenzaron a ser explotados indiscriminadamente. Por lo tanto, instalar las últimas actualizaciones de Exchange poco después de que Microsoft las publicara no mitigó completamente el riesgo de un compromiso previo, por lo que todos los servidores Exchange deben ser inspeccionados en busca de signos de acceso no autorizado.
detect_webshells.ps1 verificará la presencia de webshells conocidos en ubicaciones típicas:
inetpub/wwwroot/aspnet_client/: ubicación a nivel de sistema, lugar más común de webshells colocados en ataques actuales; normalmente no contiene ningún archivo, por lo que la presencia de cualquier cosa allí es sospechosa.$($env:exchangeinstallpath)/Frontend/: utilizado por atacantes más sofisticados para mezclarse con archivos legítimos de Exchange (los webshells podrían agregarse como nuevos archivos o modificando los existentes, incluyendo web.config); las ubicaciones más comunes son /owa/ y /ecp/, pero los webshells podrían colocarse en cualquier lugar dentro del directorio Frontend.detect_webshells.ps1 solo busca webshells y no intenta detectar eventos de explotación pasados directamente (usa https://github.com/microsoft/CSS-Exchange/tree/main/Security y otros scripts mencionados a continuación para esto), ni busca actores de amenazas particularmente sigilosos (que podrían eliminar webshells después de su uso o evitar colocarlos por completo). Por lo tanto, un resultado negativo solo puede significar ausencia de evidencia de compromiso en este host en particular. No garantiza que el host no haya sido explotado por otros medios.
Informes/divulgaciones (incluyendo IoC):
Scripts de detección notables: