IISerpent: fraude de SEO como servicio impulsado por software malicioso


El último de nuestra serie sobre amenazas de IIS presenta una extensión de IIS maliciosa que se utiliza para manipular la clasificación de páginas de sitios web de terceros.

Los investigadores de ESET han descubierto y analizado un troyano del lado del servidor previamente indocumentado que manipula los resultados del motor de búsqueda al secuestrar la reputación de los sitios web que compromete. Llamamos al troyano IISerpent para resaltar sus dos características principales: implementarse como una extensión maliciosa para Servicios de Información de Internet (IIS) servidor web y el uso de técnicas sospechosas para manipular páginas de resultados del motor de búsqueda (SERPs). Los operadores de IISerpent utilizan una variedad de técnicas para optimización de motores de búsqueda (SEO), en un intento por mejorar la clasificación de las páginas de sitios web de terceros, probablemente los clientes que pagan de estos delincuentes.

Esta publicación de blog es la última entrega de nuestra serie en la que los investigadores de ESET ponen bajo el microscopio las amenazas del servidor web IIS; las partes anteriores discuten el malware IIS utilizado para ciberdelito y espionaje cibernético. Para obtener una guía completa sobre cómo detectar, analizar y eliminar el malware IIS, consulte nuestro informe técnico Anatomía del malware IIS nativo, donde IISerpent aparece como una de las familias estudiadas (Grupo 13).

Resumen del ataque

IISerpent se implementa y configura como una extensión maliciosa para IIS, el software de servidor web de Microsoft. Eso permite que el malware intercepte todas las solicitudes HTTP realizadas a los sitios web alojados por el servidor comprometido, pero también cambiar activamente las respuestas HTTP del servidor. En las entregas anteriores de esta serie, analizamos cómo otras familias de malware IIS aprovechan estos poderes, por ejemplo, para robar información de tarjetas de crédito de clientes de sitios web de comercio electrónico (IIStealer), o para ejecutar comandos de puerta trasera en el servidor IIS comprometido (IISpy).

A diferencia de esas familias, IISerpent no afecta directamente ni al servidor comprometido ni a los usuarios del servidor; de hecho, este malware ignora por completo todas las solicitudes provenientes de visitantes legítimos de los sitios web comprometidos. El malware escucha y analiza todas las solicitudes HTTP enviadas al servidor comprometido, solo para buscar aquellas que se originan en rastreadores de motores de búsqueda específicos. Como se muestra en la Figura 1, IISerpent transmite estas solicitudes a su servidor C&C (o usa su configuración local) para modificar el contenido que se sirve a estos rastreadores.

Figura 1. Mecanismo operativo de IISerpent

Figura 1. Mecanismo operativo de IISerpent

Fraude SEO

¿Cuál es el propósito de este esquema? Los motores de búsqueda rastrean regularmente Internet y luego indexan (registran) todo el contenido encontrado en línea, creando asociaciones entre los términos de búsqueda y el contenido y utilizando varios algoritmos para calcular las clasificaciones de los resultados para términos de búsqueda particulares.

Se pueden utilizar varias técnicas legítimas para aumentar la clasificación de la página en las páginas de resultados de los motores de búsqueda: comprar anuncios o emplear optimización de motores de búsqueda (SEO), pero no todos los especialistas en marketing digital siguen las reglas. El termino SEO poco ético (históricamente conocido como SEO de sombrero negro) se refiere a técnicas de mejora de SEO (que, sin embargo, infringir las directrices para webmasters), como cargar páginas con palabras clave irrelevantes o comprar vínculos de retroceso para aumentar la reputación de un sitio web.

El patrón de ataque de IISerpent utiliza algunas de estas técnicas de SEO poco éticas y podría describirse mejor como "fraude de SEO como servicio", ya que emplea técnicas de fraude de SEO en servidores IIS comprometidos en beneficio de un tercero sin el consentimiento del webmaster. Los operadores de IISerpent utilizan este malware para mejorar la clasificación de la página de sitios web de terceros al eliminar la clasificación del sitio web comprometido y al emplear las siguientes técnicas:

  • Redirigir los motores de búsqueda al sitio web en particular elegido por el atacante, haciendo que el sitio web comprometido sea un página de entrada
  • Inyectar una lista de backlinks (preconfigurados u obtenidos del servidor C&C sobre la marcha) en la respuesta HTTP para los rastreadores de motores de búsqueda, haciendo que los servidores comprometidos por IISerpent sean algo así como una granja de enlaces

En un escenario de ejemplo que se muestra en la Figura 2, un adversario compromete varios servidores IIS con IISerpent y usa sus capacidades para inyectar backlinks a todos los sitios web alojados en estos servidores. Los sitios web 1 – N son legítimos, con buena reputación; desde la perspectiva de un rastreador de motores de búsqueda, todos enlazan a un sitio web de terceros elegido por el atacante (en este caso, un sitio web fraudulento). Como resultado, el sitio web fraudulento puede parecer más popular, ya que es referenciado por sitios web de buena reputación, lo que puede mejorar la clasificación de su página.

Figura 2. Ejemplo de un mecanismo de fraude SEO

Figura 2. Ejemplo de un mecanismo de fraude SEO

Tenga en cuenta que los visitantes legítimos del servidor comprometido aún recibirán el contenido esperado, por lo que los usuarios y el webmaster pueden no darse cuenta de que algo anda mal con el servidor. Esto distingue a IISerpent de otro malware familias que inyectan backlinks artificiales en sitios comprometidos: al operar como una extensión del servidor, IISerpent puede reservar estas modificaciones para los rastreadores de los motores de búsqueda, sin interferir con el contenido que se ofrece a los visitantes estándar (en lugar de modificar permanentemente el sitio web comprometido agregando los backlinks no deseados para todos sus visitantes para ver).

Por supuesto, los sitios web mal utilizados alojados en los servidores IIS comprometidos no se benefician en absoluto de este esquema; por el contrario, va en contra de las pautas de los webmasters engañar a los rastreadores de los motores de búsqueda mostrándoles una versión diferente del sitio web. mostrados a los visitantes habituales, por lo que estos sitios web podrían incluso terminar penalizados por los motores de búsqueda, reduciendo sus Estadísticas de SEO.

Análisis técnico

Bajo su piel, IISerpent es un módulo IIS nativo, implementado como una DLL de C ++ y configurado en el % windir% system32 inetsrv config ApplicationHost.config expediente. De esa manera, IISerpent asegura tanto la persistencia como la ejecución, ya que todos los módulos de IIS son cargados por los procesos de trabajo de IIS (w3wp.exe) y se usa para manejar solicitudes HTTP entrantes.

No tenemos ninguna información sobre cómo los operadores de IISerpent penetran inicialmente en los servidores IIS, pero sabemos que se requieren privilegios administrativos para configurarlo como un módulo IIS nativo, lo que reduce la cantidad de escenarios plausibles. Una debilidad de configuración o una vulnerabilidad en una aplicación web o en el servidor son probablemente los culpables.

Como con todos los módulos nativos de IIS, IISerpent exporta una función llamada RegisterModule (ver Figura 3), que implementa la inicialización del módulo. La principal funcionalidad maliciosa está oculta en su controladores de eventos – métodos de la clase del módulo (heredados de CHttpModule) que se solicitan en ciertos eventos del servidor. Más específicamente, la clase de código de IISerpent anula su OnBeginRequest y OnSendResponse métodos, lo que significa que se llamará a los controladores del malware cada vez que el servidor IIS comience a procesar una nueva solicitud HTTP entrante y cada vez que envíe el búfer de respuesta.

Figura 3. Exportaciones de DLL de IISerpent

Figura 3. Exportaciones de DLL de IISerpent

IISerpent analiza las solicitudes entrantes y utiliza sus datos de configuración complejos para manipular el contenido servido a los rastreadores de los motores de búsqueda. Como la Tabla 1 enumera en su totalidad, la configuración incluye campos como una URL de redireccionamiento o una lista de vínculos de retroceso que se inyectarán. Los atacantes pueden mostrar o actualizar la configuración del malware enviando cualquier solicitud HTTP al servidor IIS comprometido con el parámetro de consulta. ? DisplayModuleConfig = 1 o ? ReloadModuleConfig = 1, respectivamente, en el URI de solicitud.

Al recibir la solicitud de actualización, IISerpent obtiene la configuración del servidor C&C enviando una solicitud HTTP GET a esta URL:

http: //sb.qrfy (.) net / mconfig /.xml

El valor se toma de la solicitud original del atacante y probablemente se use como identificación de víctima. La biblioteca libcurl se utiliza para la comunicación en red.

Tabla 1. Campos de configuración utilizados por IISerpent

Campo de configuración Comentario
banip Lista de direcciones IP. El malware ignora las solicitudes HTTP de estas direcciones IP.
redireccionador Indicador binario: establezca si el malware debe manejar las solicitudes con las cadenas araña, Bot o baidu.com/ en el Referer encabezamiento.
Araña móvil Indicador binario: establezca si el malware solo debe manejar las solicitudes del rastreador con las cadenas Androide o AppleWebKit en el Referer encabezamiento.
redireccionar Si se establecen estos valores, el malware redirigirá todas las solicitudes del rastreador a la URL configurada a través de una respuesta HTTP 301.
Redireccionar URL
apoderado Si se establecen estos valores, el malware reenviará las solicitudes del rastreador del motor de búsqueda a su servidor C&C y reemplazará la respuesta HTTP con los datos obtenidos, en lugar de redirigir a los rastreadores directamente a una URL maliciosa.
proxyurl
modo proxy
enlace de carpeta Si se establecen estos valores, el malware los agregará todos como vínculos de retroceso a la respuesta para cualquier solicitud HTTP con las cadenas araña o Bot en el Agente de usuario encabezamiento.
carpetaenlace
carpetaenlace
carpeta proxy
locallink
locallinkext
locallinkfolder
locallinkcount

IISerpent reconoce las solicitudes del rastreador del motor de búsqueda analizando el Agente de usuario encabezado y buscando subcadenas específicas, como se ve en la Figura 4. Si el Redireccionar URL campo está configurado, el malware redirige todas las solicitudes con las cadenas araña o Bot en el Agente de usuario encabezado a esta URL configurando el Localización encabezado en la respuesta HTTP. El estado HTTP se establece en 301 ("Movido permanentemente").

Figura 4. IISerpent reconoce las solicitudes del rastreador del motor de búsqueda analizando el encabezado User-Agent

Figura 4. IISerpent reconoce las solicitudes del rastreador del motor de búsqueda analizando el encabezado User-Agent

Si modo proxy está configurado, en lugar de redirigir los rastreadores a una URL maliciosa, IISerpent reenvía la solicitud del rastreador a su servidor C&C proxyurly reemplaza el cuerpo de respuesta HTTP con los datos adquiridos. Esto se aplica a todas las solicitudes HTTP con araña, Bot o baidu.com/ en el Referer encabezado, u opcionalmente a solicitudes con las cadenas Androide o AppleWebKit en el Referer encabezamiento. Además, el malware se puede configurar para:

  • Solo maneje aquellas solicitudes HTTP donde el servidor IIS haya establecido el estado de respuesta en 404
  • Ignore las solicitudes provenientes de una lista configurable de direcciones IP prohibidas

Finalmente, IISerpent puede tener una lista de enlaces configurada y agregar estos enlaces al cuerpo de respuesta HTTP para cualquier solicitud del rastreador del motor de búsqueda. Estos enlaces se agregan como entidades HTML al cuerpo de respuesta HTTP existente:

<a href = ’/__.html ’>

Otras serpientes notables

IISerpent no es el único módulo IIS malicioso conocido con capacidades de fraude SEO: de las 14 familias de malware que analizamos para nuestro artículo Anatomía del malware nativo de IIS, seis tienen soporte para técnicas de fraude SEO. En estas familias, la funcionalidad de fraude de SEO a menudo se combina con otras capacidades maliciosas (como el soporte de puerta trasera o el envío de contenido malicioso a los visitantes legítimos del sitio web).

Si bien detectamos IISerpent por primera vez en mayo de 2021, pudimos rastrear el fenómeno de fraude de SEO hasta el primer caso conocido públicamente en 2019, cuando Secpulse publicó un reporte de incidente en chino sobre el malware sin nombre que afecta a los servidores IIS. El análisis de ese malware y sus capacidades de fraude de SEO se presenta en nuestro informe técnico en la categoría del Grupo 9.

Las diversas familias de fraudes de SEO que analizamos difieren en las técnicas de SEO no éticas admitidas y se dirigen a una amplia gama de rastreadores de motores de búsqueda, especificados en claro (Grupo 12 en el documento, como se muestra en la Figura 5), ​​como una lista encriptada (Grupo 9), o se obtienen sobre la marcha consultando los registros TXT de DNS del nombre de host del servidor C&C (Grupo 11). Todas estas familias son detectadas por las soluciones de seguridad de ESET como Win32 / BadIIS.

Figura 5. Ejemplo de cadenas utilizadas para reconocer las solicitudes del rastreador de motores de búsqueda por parte del malware IIS

Figura 5. Ejemplo de cadenas utilizadas para reconocer las solicitudes del rastreador de motores de búsqueda por parte del malware IIS

Para obtener un desglose completo de estas otras familias de malware IIS, consulte nuestro papel blanco.

Conclusión

IISerpent es un módulo IIS malicioso con objetivos y propósitos inusuales, diseñado para ayudar en prácticas sospechosas destinadas a mejorar el rango de página de sitios web de terceros. Aunque no afecta a los visitantes legítimos del servidor comprometido, merece atención por distorsionar los resultados de búsqueda y su potencial de monetización.

Además de secuestrar la reputación de los sitios web comprometidos, IISerpent puede ser un motivo de quebraderos de cabeza para los especialistas en marketing digital, ya que cualquier sitio web que participe en prácticas de SEO poco éticas puede ser penalizado por los algoritmos de los motores de búsqueda. La mejor opción para evitar un compromiso por parte de IISerpent (y otro malware de IIS) es mantener sus servidores IIS actualizados y tener cuidado de no descargar extensiones de IIS de fuentes no confiables; tenga especial cuidado con los módulos que prometen ser demasiado buenos para ser características reales como la mejora mágica del SEO. Para una protección adicional, considere usar un firewall de aplicaciones web y / o una solución de seguridad en su servidor IIS.

Se pueden encontrar recomendaciones de mitigación e indicadores de compromiso adicionales en nuestro papel blanco, y en GitHub. Para cualquier consulta o para hacer presentaciones de muestra relacionadas con el tema, contáctenos en: amenazaintel@eset.com.

Indicadores de compromiso (IoC)

Nombres de detección de ESET

Win32 / BadIIS.H

SHA-1

D0F274EBD2A0636FEF9D9C48A7AC2FAD7B661653

Nombre del archivo

stati.dll

Indicadores de red

Parámetros de consulta de URL

? DisplayModuleConfig = 1
? ReloadModuleConfig = 1

Servidor C&C

http: //sb.qrfy (.) net

Técnicas MITRE ATT & CK

Nota: esta tabla fue construida usando versión 9 del marco MITRE ATT & CK.

Táctica IDENTIFICACIÓN Nombre Descripción
Desarrollo de recursos T1587.001 Desarrollar capacidades: malware IISerpent es una familia de malware a medida.
Ejecución T1569.002 Servicios del sistema: ejecución de servicios El servidor IIS (y por extensión, IISerpent) persiste como un servicio de Windows.
Persistencia T1546 Ejecución activada por evento IISerpent se carga mediante el proceso de trabajo de IIS (w3wp.exe) cuando el servidor IIS recibe una solicitud HTTP entrante.
Comando y control T1071.001 Protocolo de capa de aplicación: protocolos web Los adversarios envían solicitudes HTTP con parámetros de consulta específicos al servidor IIS comprometido para controlar IISerpent.
Impacto T1565.002 Manipulación de datos: manipulación de datos transmitidos IISerpent modifica el contenido proporcionado por el servidor comprometido a los rastreadores de los motores de búsqueda.




Enlace a la noticia original