Los actores de amenazas están abusando de npm y sus espejos para alojar páginas HTML maliciosas que imitan los CAPTCHA de Cloudflare y redirigen a los visitantes a sitios web controlados por el atacante. Esta técnica fue detectada por primera vez en julio por el investigador de seguridad inf0stache, quien encontró un paquete npm llamado 'china_airlines' que utilizaba una página de verificación falsa de Cloudflare para redirigir a los usuarios a un dominio malicioso. IntelFusions también informó de este hallazgo.
En un informe posterior, OX Security descubrió 24 paquetes npm que contenían la misma página HTML maliciosa alojada en npm y en varios espejos. Sin embargo, a diferencia de los típicos ataques a la cadena de suministro de npm vistos recientemente, la instalación de estos paquetes no infecta el ordenador del desarrollador con malware o ladrones de información. En su lugar, los atacantes utilizan el registro npm como almacenamiento gratuito para páginas HTML maliciosas, que luego son copiadas por plataformas espejo como UNPKG y npmmirror.
Debido a que algunas de estas plataformas permiten acceder directamente a archivos individuales de paquetes npm en un navegador, convierten efectivamente estos sitios para desarrolladores en alojamiento web gratuito para páginas de phishing. OX Security explica: 'Aunque el malware es simplemente una página HTML dentro del paquete npm, y aunque descargarlo no causaría daño, el uso de npm por parte del actor de amenazas no es para infectar a los desarrolladores que lo instalan, sino para utilizar el registro y sus espejos como un almacenamiento seguro y validado para el malware'.
BleepingComputer examinó uno de los paquetes identificados en la campaña y encontró que contenía solo dos archivos: un index.html y un package.json que declaraba el archivo HTML como el archivo principal del paquete. Cuando UNPKG refleja el paquete, el archivo HTML se puede abrir directamente en un navegador usando una URL como https://unpkg[.]com/ndmxchdjxn2@1.0.0/index[.]html. Esto hace que el HTML del atacante se renderice en el navegador desde el dominio legítimo unpkg.com en lugar de desde la infraestructura controlada por el actor de la amenaza, lo que potencialmente evita que el software de seguridad bloquee un sitio malicioso.
Según OX, esta técnica convierte los espejos de npm en 'hosts frontales gratuitos para páginas HTML maliciosas y potencialmente otros payloads'.
HTML malicioso actúa como redireccionador
El HTML malicioso imita una página de verificación de seguridad de Cloudflare que integra el servicio legítimo de CAPTCHA Turnstile de Cloudflare. Independientemente de si la verificación tiene éxito, la página ejecuta JavaScript muy ofuscado que redirige al visitante a otro sitio.
Moshe Siman Tov Bustan, líder del equipo de investigación de OX Security, dijo a BleepingComputer que las versiones anteriores redirigían a microcloud[.]homes en julio y a login[.]microsofte[.]live en agosto. Los investigadores dijeron que algunos de los primeros redireccionamientos de julio finalmente se resolvían al sitio legítimo de inicio de sesión de correo de Microsoft Outlook (https://outlook.office.com/mail).
BleepingComputer probó una de las páginas maliciosas alojadas a través de UNPKG y confirmó que todavía redirige a los visitantes a ese dominio. Este dominio no está actualmente activo, pero podría usarse para alojar una página falsa de inicio de sesión de Microsoft.
Los investigadores señalan que otros paquetes cambiaron a un método de redireccionamiento diferente que utiliza api.keyval.org, una plataforma legítima para almacenar pares clave-valor. Según los investigadores, el código más reciente recupera un valor cifrado del servicio, lo descifra en el navegador y luego redirige al visitante a la URL descifrada. Esto permite a los atacantes cambiar la URL de redireccionamiento de forma remota sin modificar o volver a publicar el paquete npm.
En el momento de la investigación de OX, el destino configurado remotamente redirigía a los visitantes al sitio web legítimo de ChatGPT. Aunque OX dice que el valor podría cambiarse en cualquier momento para apuntar a ClickFix u otras páginas de phishing, el HTML alojado en npm revisado por BleepingComputer no realiza un ataque ClickFix. Estas páginas también podrían redirigir a los visitantes a páginas de phishing, descargas de malware u otros destinos controlados por el atacante.
OX también advierte que los paquetes npm pueden permanecer en los espejos después de ser eliminados del registro oficial npm. Concluye OX: 'Los actores de amenazas siguen encontrando y utilizando técnicas nuevas y novedosas no solo para entregar malware, sino para usar infraestructura legítima para almacenar sus payloads y datos'. Los investigadores recomiendan tratar las solicitudes HTML directas a los dominios espejo de npm como potencialmente sospechosas.