07/02/2026
Los hackers están secuestrando servidores web NGINX y redirigiendo el tráfico en vivo a través de su propia infraestructura. No hay malware instalado, no hay vulnerabilidad explotada. Solo unas pocas líneas cambiadas en un archivo de configuración, y los datos de cada visitante fluyen a través de servidores controlados por atacantes sin que nadie se dé cuenta. 🧐
NGINX es el servidor web más popular del planeta. Da energía a más de 5 millones de sitios web y maneja aproximadamente una de cada tres conexiones web en todo el mundo. Los bancos, los gobiernos y las universidades dependen de ello. Y ahora mismo, una campaña está convirtiendo silenciosamente estos servidores en relés de tráfico.
Los investigadores de DataDog Security Labs Ryan Simon y Christophe Tafani-Dereeper acaban de publicar sus hallazgos, y los detalles técnicos son salvajes.
Los atacantes no están dejando caer malware en los servidores. No están explotando un error en NGINX. Están editando archivos de configuración, los mismos archivos con los que trabaja cada administrador del sistema a diario. Algunas directivas añadidas en los lugares correctos, y el servidor comienza a reenviar todo el tráfico a través de un intermediario. El sitio web todavía se carga, las páginas todavía funcionan, todo parece completamente normal. Pero cada solicitud pasa primero por los servidores del atacante.
Eso significa contraseñas, tokens de sesión, llamadas API, todo en tránsito puede ser capturado, copiado o modificado en tiempo real. Un atacante sentado en esa posición puede hacerse pasar por usuarios, robar credenciales a mitad de la sesión y alterar lo que la gente ve en la página sin dejar rastro.
La forma en que entran es a través de una vulnerabilidad completamente separada llamada React2Shell, rastreada como CVE-2025-55182. Este es un error crítico de ejecución de código remoto en los Componentes React Server con una puntuación perfecta de 10.0 CVSS. Fue divulgado públicamente el 3 de diciembre de 2025 y en pocas horas, los piratas informáticos patrocinados por el estado ya lo estaban usando. GreyNoise ha registrado más de 8,1 millones de sesiones de ataque desde la revelación.
El daño ya está hecho en muchos lugares. La Unidad 42 de Palo Alto Networks confirmó que más de 60 organizaciones han sido violadas a través de React2Shell, a través de servicios financieros, gobierno, educación, tecnología y telecomunicaciones en los Estados Unidos, Asia, América del Sur y Oriente Medio. Wiz Research encontró que el 39 por ciento de todos los entornos de la nube contiene instancias vulnerables de React o Next.js. Y Rapid7 lanzó un módulo oficial de exploit de Metasploit en diciembre, lo que significa que cualquier atacante con habilidades básicas ahora puede apuntar y disparar.
React2Shell es la puerta principal. Una vez que los atacantes están dentro, implementan un kit de herramientas de cinco scripts de shell automáticos que se apoderan de la configuración NGINX. Esto no es un truco rápido y sucio. Este kit de herramientas está construido profesionalmente.
Así es como funciona.
El primer guión, zx.sh, dirige el espectáculo. Descarga y ejecuta todos los demás scripts. Y aquí está la parte inteligente: si curl y wget están bloqueados en el servidor, no se rinde. Construye una conexión TCP sin editar y envía solicitudes HTTP a mano. Este kit de herramientas fue construido para funcionar incluso en entornos bloqueados donde las herramientas de seguridad han eliminado los servicios comunes.
El segundo script, bt.sh, va específicamente después de los servidores que ejecutan Baota Panel, una herramienta de administración de hospedaje web china instalada en millones de servidores desde 2014. Busca a través de la ruta de configuración de Baota en /www/server/panel/vhost/nginx, comprueba si el servidor ya ha sido comprometido, y elige una plantilla de inyección basada en el dominio de nivel superior del dominio. Entonces se desencadena una recarga en lugar de un reinicio completo para que las conexiones existentes permanezcan vivas y nadie se dé cuenta de que nada
El tercer guión, 4zdh.sh, va más amplio. Escanea directorios de configuración NGINX estándar como sitios habilitados, conf.d y sitios disponibles. Usa csplit y awk para analizar los bloques del servidor sin romper la estructura de configuración, genera hashes MD5 para seguir lo que ya se ha inyectado, y ejecuta nginx -t para validar todo antes de hacer cambios. Si la prueba falla, se detiene. Quien haya construido esto no quiere colapsar los servidores y llamar la atención.
El cuarto script, zdh.sh, toma un enfoque más estrecho centrado en Linux y entornos NGINX contenedores. Se dirige a /etc/nginx/sites habilitados y da prioridad a los dominios que terminan en . en y. ID. Si una recarga elegante falla, vuelve a la pkill.
El quinto guión, ok.sh, es el espía. Escanea todas las configuraciones NGINX comprometidas, construye un mapa completo de cada dominio secuestrado, cada plantilla de inyección y cada objetivo proxy. Escribe un informe a /dev/shm/nginx_scan.txt o /tmp/nginx _scan.tXT y envía todo a un servidor de comando y control al 158.94.210[. ]227.
Lo que estos scripts cambian en los archivos de configuración se reduce a cuatro directivas NGINX estándar.
→ bloqueos de ubicación capturan solicitudes entrantes en rutas URL específicos
→ reescribir cambia la URL de la solicitud para incluir la ruta original completa
→ proxy_pass reenvía el tráfico a dominios controlados por atacantes
→ proxy_set_header ajusta los encabezados para que todo parezca legítimo
Estos no son órdenes oscuras. Los administradores del sistema los usan todos los días. Eso es exactamente por lo que esto es tan difícil de detectar. Las líneas maliciosas parecen una configuración normal. NGINX los carga sin ningún error, y el servidor sigue funcionando como si nada hubiera pasado.
La campaña se dirige específicamente a servidores con dominios de nivel superior asiáticos.
→ . en (India)
→ . ID (Indonesia)
→ . pe (Perú)
→ . bd (Bangladesh)
→ . th (Tailandia)
→ . edu (educación)
→ . Gobernador (gobierno)
Los datos de GreyNoise del 26 de enero al 2 de febrero muestran 1.083 IPs de fuente única involucrados en la explotación de React2Shell que se alimenta directamente en esta campaña de secuestro de NGINX Dos IPs fueron responsables del 56 por ciento de todo el tráfico de ataque. El primero, 193.142.147[. ]209, generó 488.342 sesiones y abre cartuchos inversos en el puerto 12323 directamente de vuelta al escáner. Eso no es cosecha automática, es alguien que quiere acceso práctico. El segundo, 87.121.84[. ]24, implementó mineros de criptomoneda XMRig a través de servidores de etapa que han estado albergando dominios de atacantes desde al menos 2020. Los IPs vecinos en la misma subred están distribuyendo variantes botnet Mirai y Gafgyt dirigidas a dispositivos IoT.
En seguridad cibernética, la atribución es uno de los problemas más difíciles. Las direcciones IP pueden ser falso. Las herramientas se pueden compartir entre grupos. Las cadenas de idioma en código pueden ser falsificadas. Lo que los investigadores saben con certeza es cómo funciona el kit de herramientas, qué infraestructura utiliza y hacia dónde apunta. AWS identificó conexiones con Earth Lamia, un grupo que se centra en los servicios financieros, logística y organizaciones del gobierno en múltiples continentes, y con Jackpot Panda, que se centran en el este y sudeste asiático. Google confirmó que los actores Iran-Nexus también están explotando React2Shell. El kit de herramientas está dirigido específicamente al Panel Baota, que está desplegado predominantemente en la infraestructura hospedada en China. Pero la ubicación y la atribución de la infraestructura son dos cosas diferentes.
Esto es lo que hace todo esto particularmente desagradable.
La mayoría de las herramientas de seguridad buscan malware, ejecutables sospechosos o firmas inusuales de red. Nada de eso se aplica aquí. No hay ningún binario malicioso para detectar y ninguna firma de exploit que coincida. Los atacantes se esconden dentro de archivos de configuración legítima que ya estaban en el servidor. Una revisión de configuración que solo comprueba si NGINX se inicia sin errores se perderá esto por completo porque las directivas inyectadas son sintácticamente válidas.
Y los usuarios que visitan estos sitios web comprometidos nunca lo sabrán. Las páginas se cargan, el certificado SSL sigue siendo válido y la URL en la barra del navegador es correcta. Todo parece estar bien. Pero entre el usuario y el sitio web real, ahora hay un relevo invisible capturando todo.
Qué hacer si ejecutan servidores NGINX.
→ Revisa todos los archivos de configuración NGINX para directivas proxy_pass apuntando a servidores backend desconocidos
→ Busca reglas inesperadas de reescribir y bloques de ubicación que no formaban parte de la configuración original
→ Comprueba el archivo de mapeo en /tmp/. dominio_grupo_mapa.conf
→ Busca informes de escaneo en /dev/shm/nginx_scan.txt o /tmp/nginx _scan.tXT
→ Configurar la monitorización de la integridad de los archivos en todos los directorios de configuración de N
→ Monitorea los registros de red para conexiones a 158.94.210[. ]227
→ Si se ejecutan aplicaciones React o Next.js, parche CVE-2025-55182 inmediatamente
→ Trata los archivos de configuración NGINX como una superficie de control de seguridad, no sólo los archivos operativos que sólo importan cuando algo se rompe
El panorama general aquí es que los atacantes se están alejando de un malware obvio. Están aprendiendo a vivir dentro de la infraestructura que ya está ahí. Cuando el ataque parece una administración normal del servidor, la detección tradicional no tiene ninguna oportunidad. La única defensa es saber cómo estos sistemas funcionan lo suficientemente bien como para detectar lo que no pertenece.
Esta es exactamente la razón por la que importa entender cómo los atacantes manipulan la infraestructura web. Cubro los fundamentos de la creación de redes, interceptación de tráfico, hackeo de aplicaciones web, y técnicas reales de escaneo y enumeración en mi curso de hackeo ético:
→ https://www.udemy.com/course/ethical-hacking-complete-course-zero-to-expert/?couponCode=FEBRUARY26
(El enlace me apoya directamente como instructor! )
Hackear no es un pasatiempo sino una forma de vida. 🎯
Investigación y escritura: Jolanda de Koff | HackingPassion.com
Compartir está bien. Copiar sin crédito no lo es.
Lee el desglose completo:
→ https://hackingpassion.com/nginx-hijacking-no-malware/