Más de 20 sitios web gubernamentales secuestrados se convirtieron en un canal de ataque – CYBERDEFENSA.MX

Más de 20 sitios web del gobierno brasileño fueron secuestrados y convertidos en canales de distribución de malware en una actividad activa. FantasmaEnigma campaña descubierta por CUALQUIER EJECUCIÓNun proveedor líder de análisis interactivo de malware y soluciones de inteligencia de amenazas.

La investigación reveló un comportamiento de puerta trasera no documentado anteriormente, relaciones de infraestructura ocultas y múltiples armas de ataque detrás de una campaña que pone en riesgo a bancos y agencias públicas.

Al conectar cientos de sesiones de pruebas aparentemente no relacionadas, los investigadores de ANY.RUN expusieron el alcance más amplio de la operación y mostraron cómo los enlaces confiables .gov.br y los correos electrónicos autenticados ayudaron a que la actividad permaneciera oculta.

Para obtener el análisis técnico completo, los detalles de la infraestructura, los indicadores y la guía de detección, lea el informe completo de la investigación de PhantomEnigma

La infraestructura gubernamental confiable se convirtió en el atractivo

El ataque comenzó con documentos policiales falsos presentados como avisos oficiales del “Ofício Polícia Civil” o de la “Procuração Digital”. Algunos contenían códigos QR, mientras que otros dirigían a los destinatarios a enlaces diseñados para parecerse a recursos gubernamentales legítimos.

Documento falso con temática policial analizado dentro del sandbox de ANY.RUN para una visibilidad completa del ataque PhantomEnigma

En varios casos, los correos electrónicos se enviaron a través de buzones de correo comprometidos y pasaron las comprobaciones SPF, DKIM y DMARC. Eso dio a los mensajes una apariencia de legitimidad más fuerte que los correos electrónicos de phishing falsificados ordinarios.

Luego, las víctimas eran redirigidas a través de hosts .gov.br comprometidos o dominios similares con temas policiales antes de llegar al instalador malicioso. Los sistemas gubernamentales se utilizaron como infraestructura de entrega confiable, no necesariamente como objetivos finales de la campaña.

Anfitriones gubernamentales observados

Entre los sistemas comprometidos observados durante la investigación se encuentran timon.ma.gov[.]br, loginam.sesp.es.gov[.]br (seguridad pública estatal), aplicacao.cbm.mt.gov[.]br (departamento de bomberos), prodoc.ap.gov[.]br, y otros.

Consulta de búsqueda de TI que involucra hosts gubernamentales comprometidos

Estos portales legítimos municipales, de seguridad pública y judiciales se utilizaron en diferentes etapas de la cadena de entrega. Varios también aparecieron en más de un brazo de ataque de PhantomEnigma, lo que ayudó a los investigadores a conectar actividades que inicialmente no parecían relacionadas.

La evolución de PhantomEnigma: dos caminos hacia una detección más difícil

Cronología de la actividad maliciosa de PhantomEnigma

La línea de tiempo muestra una operación que evoluciona a lo largo de dos caminos principales:

Entrega: PhantomEnigma pasó de una actividad centrada en la banca en 2025 a abusar de sitios web y cuentas de correo electrónico .gov.br comprometidos en 2026. Esto le dio a la campaña una ruta más confiable hacia las víctimas sin confirmar un nuevo grupo objetivo.

Arsenal: El malware evolucionó desde un banco de extensiones de navegador hasta una puerta trasera modular Inno/Node.js capaz de ejecutar JavaScript y entregar cargas útiles adicionales.

Para los equipos de seguridad, esta combinación crea una grave brecha de visibilidad. La infraestructura confiable reduce las sospechas, las cargas útiles modulares pueden cambiar después de la infección y los dominios C2 rotativos rápidamente hacen que las listas de bloqueo estáticas queden obsoletas. El análisis de comportamiento y la búsqueda continua de amenazas brindan una cobertura más confiable a medida que evoluciona la campaña.

Del correo electrónico confiable al compromiso total: la cadena de ataque PhantomEnigma

El proceso de análisis de PhantomEnigma dentro del sandbox interactivo

Una vez que una víctima interactuaba con el señuelo, la campaña avanzaba a través de una cadena de infección de varias etapas:

  1. Correo electrónico de phishing: Un señuelo falso con temática policial o documento oficial llega a la víctima.
  2. Infraestructura confiable: El enlace redirige a través de un servidor gubernamental comprometido o un dominio similar con temática policial.
  3. Instalador malicioso: Un Inno Setup, MSI u otro instalador inicia la infección.
  4. Aplicación de electrones parcheada: El software legítimo carga una puerta trasera index.js maliciosa.
  5. Activación de puerta trasera: El malware recopila datos del sistema, establece persistencia y se conecta a la infraestructura C2 rotativa.
  6. Entrega de segunda etapa: La puerta trasera ejecuta JavaScript o entrega ladrones, cargadores, software RMM y otro malware.
  7. Impacto empresarial: La infección puede provocar el compromiso de las credenciales, el acceso no autorizado, el fraude, la exposición de los datos y la interrupción operativa.

Lo que los investigadores encontraron dentro de la puerta trasera de PhantomEnigma

Las sesiones de sandbox expusieron más que un simple descargador. Escondido dentro de un Boostnote parcheado y otras aplicaciones había una puerta trasera modular index.js creada para identificar máquinas infectadas, mantener el acceso y entregar diferentes cargas útiles bajo demanda.

Una vez activada, la puerta trasera podría:

  • Recopile el nombre de la computadora, el nombre de usuario y los detalles del sistema de la víctima.
  • Cree una ID de máquina persistente y lea una etiqueta de campaña almacenada junto al instalador.
  • Establezca persistencia a través de la configuración de inicio de sesión
  • Busque nuevos comandos cada 180 segundos
  • Ejecute JavaScript directamente a través de eval()
  • Descargue y ejecute cargas útiles ejecutables
  • Comunicarse a través de múltiples formatos de baliza en infraestructura rotativa

Este diseño modular permite al operador cambiar la carga útil final sin reconstruir toda la cadena de infección. Un sistema inicialmente expuesto al mismo instalador podría recibir más tarde un ladrón, un cargador, una herramienta de administración remota u otro ejecutable, lo que dificulta tanto la detección como la contención.

Una advertencia para bancos y agencias públicas

PhantomEnigma muestra cómo los atacantes pueden convertir una infraestructura confiable en una ventaja de detección. Un dominio gubernamental legítimo, un correo electrónico autenticado o un veredicto de archivo limpio pueden reducir las sospechas incluso cuando la cadena de infección ya está activa.

Para los bancos y las organizaciones del sector público, el riesgo se extiende más allá de un punto final comprometido. Las credenciales robadas y el acceso persistente por puerta trasera pueden exponer los sistemas internos, los datos confidenciales y las operaciones financieras, mientras que las alertas fragmentadas retrasan la contención.

Los equipos de seguridad deben brindar a los empleados una forma segura de denunciar mensajes sospechosos que parezcan oficiales e investigarlos más allá del veredicto inicial. Detectar temprano el señuelo confiable puede evitar el robo de credenciales, la entrega de carga útil adicional y un incidente operativo más amplio.

Obtenga IOC de PhantomEnigma, hallazgos de infraestructura y orientación de detección para fortalecer la búsqueda y respuesta a amenazas.

Acceder al informe completo

¿Encontró interesante este artículo? Este artículo es una contribución de uno de nuestros valiosos socios. Síguenos en noticias de google, Gorjeo y LinkedIn para leer más contenido exclusivo que publicamos.

Los paquetes npm y Go secuestrados utilizan tareas de código VS para implementar Python Infostealer – CYBERDEFENSA.MX

Investigadores de ciberseguridad han descubierto dos paquetes npm secuestrados y un grupo de paquetes Go que están diseñados para implementar un ladrón de información basado en Python en hosts comprometidos de Windows, Linux y macOS.

«Este ataque evita las rutas de ejecución de npm más comunes a través de scripts de ciclo de vida, tal vez en un intento de seguir siendo ‘compatible’ con los refuerzos de seguridad de npm v12», JFrog dicho en un análisis técnico.

«El paquete oculta la ejecución dentro de una tarea de VS Code, configurada para ejecutarse automáticamente cuando se abre la carpeta del proyecto en VS Code. Desde allí, el malware recupera JavaScript cifrado de los datos de transacciones de blockchain, se conecta a la infraestructura controlada por el atacante, lanza una puerta trasera socket.io y, finalmente, implementa un ladrón de información de Python.

Los nombres de los paquetes npm identificados se enumeran a continuación:

  • HTML a Gutenberg
  • fetch-page-assets (que enumera html-to-gutenberg como una dependencia)

Los dos paquetes se cargaron en npm el 25 de mayo de 2026 y ya no están disponibles para descargar desde el registro. El punto de partida del ataque es una tarea oculta de Microsoft Visual Studio Code (VS Code) llamada «eslint-check» que está configurada con la opción «runOn: ‘folderOpen’» para activar la ejecución de código arbitrario cuando la carpeta se abre como una carpeta de espacio de trabajo en un IDE como VS Code o Cursor.

Ciberseguridad

«No ejecutan recursivamente cada .vscode/tasks.json anidado; en este caso, el disparador se activa cuando el directorio del paquete malicioso se abre como espacio de trabajo y se marca como confiable, o cuando el desarrollador permitió explícitamente tareas automáticas», dijo JFrog. «El comando también disfraza la carga útil como un archivo de fuente: public/fonts/fa-solid-400.woff2, aunque el archivo solo contiene código JavaScript».

Vale la pena señalar que el El abuso de una tarea de ejecución automática de VS Code, junto con el disfraz de malware JavaScript como archivos de fuentes, se ha atribuido a Corea del Norte. El equipo de OpenSourceMalware, que está rastreando la actividad bajo el nombre de Fake Font, lo ha descrito como una variante de Entrevista contagiosauna campaña de larga duración dirigida a desarrolladores de software y personal técnico a través de procesos fraudulentos de entrevistas de trabajo.

«Esta campaña ‘Fake Font’ ofrece un cargador de múltiples etapas que finalmente implementa la puerta trasera InvisibleFerret Python, diseñada para robar billeteras de criptomonedas, credenciales de navegador y establecer acceso persistente», dijo el investigador de seguridad Paul McCarty. anotado allá por enero. «Esta es la tercera subcampaña de la campaña ‘Entrevista Contagiosa’ que ha estado en curso desde 2023».

El archivo de fuente falso utiliza la infraestructura blockchain como un solucionador de entrega muerta, confiando en TronGrid y Aptos como mecanismo alternativo para recuperar una carga útil de JavaScript de la siguiente etapa de una manera que sea resistente a los esfuerzos de eliminación. La etapa de JavaScript repite el mismo patrón de recuperación de punto muerto para configurar un servidor de comando y control (C2) que permite la carga de archivos y la entrega de malware Python.

Esto incluye la configuración de una puerta trasera Socket.io que otorga al operador control remoto sobre el host infectado a través de funciones como ejecución de shell, recolección del portapapeles, operaciones del sistema de archivos, carga de archivos, gestión de procesos y ejecución arbitraria de JavaScript.

En paralelo, la cadena de infección lanza un componente del cargador de Python que es responsable de recuperar el ladrón de información de Python del servidor C2 e instalar las dependencias necesarias. El artefacto es un ladrón de credenciales, navegadores, billeteras y artefactos de desarrollador de amplio alcance que puede desviar datos almacenados en navegadores, administradores de contraseñas, autenticadores y billeteras de criptomonedas basados ​​en Chromium y Mozilla Firefox.

También está equipado para recopilar información orientada al desarrollador, como credenciales de Git, GitHub CLI hosts.yml, registros de GitHub Desktop, VS Code y almacenamiento global, así como datos de Windows Credential Manager, Linux Secret Service, KDE Wallet, macOS Keychain y metadatos de almacenamiento en la nube para Dropbox, Google Drive, Microsoft OneDrive, Apple iCloud, Box, Mega y pCloud.

En la etapa final, los datos recopilados se empaquetan en archivos ZIP comprimidos y se cargan en el servidor C2 y en un bot de Telegram si el atacante proporciona un token de bot durante el tiempo de ejecución.

Ciberseguridad

La campaña también se ha dirigido al ecosistema Go, con Nextron Systems descubriendo un conjunto de 16 paquetes Go que contienen el mismo malware. La lista es la siguiente:

  • github.com/lambda-platform/lambda
  • github.com/reauheau/goaubio
  • github.com/glacialspring/go-winsparkle
  • github.com/bm-197/chill
  • github.com/naol7/dist-task-scheduler
  • github.com/anatoli-derese/a2sv-excercise
  • github.com/amantsehay/a2sv-go-course
  • github.com/dexbotsdev/uniswap-v2-v3-arbitrage
  • github.com/lambda-platform/ebarimt-rest-api
  • github.com/lambda-platform/dan
  • github.com/zainirfan13/graphql-client
  • github.com/hngi/team-fierce-backend-golang
  • github.com/glacialspring/static
  • github.com/rickt/slack-weather-bot
  • github.com/Barsu5489/commerce
  • github.com/Setsu548/Logística

«La mayoría parecen ser paquetes legítimos cuya última versión lanzada incluía el malware junto con el contenido del paquete original, utilizando la misma estructura y el mismo archivo de fuente falso», añadió JFrog.

Se recomienda a los usuarios que hayan instalado los paquetes que los eliminen con efecto inmediato, busquen en las máquinas de los desarrolladores tareas ocultas de apertura de carpetas de VS Code y roten credenciales, tokens, credenciales de la nube, claves API, credenciales almacenadas en el navegador y credenciales de billetera.

«Las cargas útiles muestran que el atacante estaba interesado tanto en el robo inmediato como en el acceso interactivo», concluyó la empresa de ciberseguridad. «La puerta trasera basada en socket.io proporciona ejecución de comandos y recopilación de archivos, mientras que la etapa Python realiza una amplia recolección de credenciales y billeteras en navegadores, almacenes de credenciales de sistemas operativos, herramientas de desarrollo y aplicaciones de criptomonedas».

Más de 400 paquetes AUR de Arch Linux secuestrados para implementar Infostealer y eBPF Rootkit – CYBERDEFENSA.MX

Los atacantes se apoderaron de más de 400 paquetes en el Arch User Repository (AUR) esta semana y reescribieron sus scripts de compilación para instalar un ladrón de credenciales en cualquier máquina que los haya creado.

El malware es un binario de Rust creado para recopilar secretos de los desarrolladores. Cuando aterriza con root, también puede cargar un rootkit eBPF para ocultarse. AUR es la colección de paquetes comunitarios de Arch Linux y está separada de los repositorios oficiales de Arch, que no se vieron afectados.

Si instaló o actualizó un paquete AUR a partir del 11 de junio, compárelo con las listas actuales de paquetes afectados antes de confiar en el host. La lista de nombres es larga, sigue creciendo y aún no está completa.

Este ataque persigue el modelo de confianza, no una falla de software. Los paquetes comprometidos conservaron sus nombres, sus historias y la confianza que los acompañaban. Sólo cambiaron las instrucciones de construcción.

La trampa estaba en la receta, dejando el paquete exactamente igual al software que los usuarios pretendían instalar. Ningún exploit, ningún día cero y ninguna señal de que los propios sistemas de Arch hayan sido violados.

Los atacantes adoptaron paquetes abandonados, editaron los archivos de compilación y permitieron a los usuarios ejecutar la carga útil por ellos. Sonatype, que nombró la campaña Arco Atómicolos encontró persiguiendo proyectos huérfanos: paquetes cuyos mantenedores se habían retirado, dejándolos abiertos para que cualquiera los adoptara.

También falsificaron los metadatos de git commit para que los cambios parecieran provenir de un mantenedor de larga data, una cuenta que un usuario de confianza de Arch Linux confirmó más tarde que nunca estuvo comprometida.

Ciberseguridad

Una vez que se adoptaba un paquete, se editaba su script PKGBUILD o .install para ejecutar npm install atomic-lockfile durante la compilación, colocando el paquete npm malicioso junto con un par de paquetes legítimos para cubrirse. Ese paquete, atomic-lockfile@1.4.2, lleva un gancho de preinstalación que ejecuta un ELF de Linux incluido llamado deps. Compile el paquete y el binario se ejecutará.

Los ejemplos confirmados reportados a la lista de correo de Arch incluyen los paquetes alvr y premake-git.

Qué hace el malware

Investigador independiente Whanos ingeniería inversa la carga útil de deps y describe un ladrón de credenciales de Rust dirigido a estaciones de trabajo de desarrolladores y sistemas de compilación. Recoge:

  • Cookies, tokens y almacenamiento local de navegadores basados ​​en Chromium (Chrome, Edge, Brave y muchos más)
  • Datos de sesión de aplicaciones de Electron, incluidos Slack, Discord y Microsoft Teams
  • Tokens de GitHub, npm y HashiCorp Vault, además de material al portador OpenAI/ChatGPT y metadatos de cuenta
  • Claves SSH, hosts_conocidos e historiales de shell
  • Credenciales de Docker y Podman y perfiles VPN

Los archivos robados se envían a través de HTTP a temp.sh. El comando y el control se ejecutan a través de un servicio cebolla Tor a través de un proxy de bucle invertido local.

Para lograr persistencia, instala un servicio systemd con Restart=always. Con root, se copia a sí mismo en /var/lib/ y escribe una unidad en /etc/systemd/system/; como usuario normal, utiliza el directorio de inicio y una unidad por usuario en ~/.config/systemd/user/. De cualquier manera, quiere volver.

Los primeros artículos sobrevendieron el rootkit eBPF. Es opcional y solo se carga cuando el binario ya tiene raíz y la capacidad adecuada. No se utiliza para ganar privilegios. Cuando se activa, oculta los propios procesos del malware, los nombres de los procesos y los inodos de socket de las herramientas estándar, utilizando mapas BPF anclados llamados hide_pids, hide_names y hide_inodes, y elimina los intentos de adjuntar un depurador.

Eso cambia los consejos de limpieza. Eliminar el paquete AUR no es suficiente una vez que se ha ejecutado la carga útil. Un administrador de paquetes puede eliminar los archivos que conoce. No puede demostrar que la máquina esté limpia después de que una carga útil compatible con rootkit haya tenido la oportunidad de ejecutarse.

El binario también presenta un segundo archivo vinculado a monero-wallet-gui que el análisis señala como un posible criptominero no analizado. Un rootkit eBPF acoplado a un ladrón que ataca y atrapa es inusual, y es por eso que éste vale más que encogerse de hombros.

Alcance y una segunda ola

El primer artículo de Sonatype contó más de 20 paquetes secuestrados. En un día, los rastreadores comunitarios y el Arco hilo general de aur había catalogado más de 400, con una lista maestra compilada al buscar el espejo git de AUR, colocándola alrededor de 408, y listas consolidadas subiendo más.

El paquete atomic-lockfile npm en sí mostró solo 134 descargas semanales en Enchufe antes de que fuera retirado del registro, por lo que la exposición real es la ruta de compilación de AUR en lugar de las instalaciones de npm.

Una segunda ola utilizó bun install js-digest, impulsado desde un conjunto separado de cuentas que los rastreadores de la comunidad vinculan al mismo editor npm que atomic-lockfile. Su carga útil es un binario diferente, un ELF separado por su hash, que la comunidad también marcó como malicioso.

Ciberseguridad

Aún se está contando hasta qué punto se ha extendido esta ola. Los primeros desgloses enumeraron unas pocas docenas de paquetes, mientras que las búsquedas posteriores basadas en grep en el espejo AUR arrojaron números mucho más altos que pueden incluir la deserción a medida que se eliminan las confirmaciones. De cualquier manera, no es una nota a pie de página de la primera ola, así que verifique tanto atomic-lockfile como js-digest.

Que hacer ahora

Los mantenedores de Arch están restableciendo las confirmaciones maliciosas, prohibiendo las cuentas y pidiendo a los usuarios que sigan informando paquetes sospechosos en el hilo de la lista de correo.

Trate la lista publicada de paquetes afectados como incompleta. Por tu parte:

  • Verifique cualquier paquete AUR instalado o actualizado a partir del 11 de junio con las listas de paquetes de la comunidad y los scripts de detección, que comparan sus paquetes externos con el conjunto defectuoso conocido. Grep historial de compilación reciente y cachés para npm install atomic-lockfile, bun install js-digest y la ruta de carga útil src/hooks/deps.
  • Si se ejecutó un paquete marcado, trate al host como con credenciales comprometidas. Rote todo lo que toca el ladrón: sesiones de navegador, claves SSH, tokens de GitHub y npm, sesiones de Slack, Teams y Discord, tokens de Vault, credenciales de Docker y Podman, y cualquier clave de nube.
  • Caza por la perseverancia. Busque servicios systemd desconocidos (tanto unidades del sistema como ~/.config/systemd/user/) y archivos inesperados en /var/lib/. Inspeccione /sys/fs/bpf/ para ver los mapas Hidden_pids, Hidden_names y Hidden_inodes. Revisar las conexiones salientes a Tor y cargar servicios.
  • Si el paquete se ejecutó como root, asuma que el rootkit está presente y reinstálelo desde un medio confiable. De lo contrario, no hay forma de confiar en el sistema.
  • En el futuro, lea PKGBUILD y cualquier enlace .install antes de compilar, especialmente para paquetes adoptados recientemente o que se activan repentinamente después de un largo período de inactividad. Si no comprende las instrucciones de compilación, no instale el paquete.

Para la detección, el SHA-256 de la carga útil principal es 6144d433f8a0316869877b5f834c801251bbb936e5f1577c5680878c7443c98b; el conjunto completo de indicadores, incluido el host cebolla C2, se encuentra en el análisis ioctl.fail.

La misma táctica de adopción afectó a un paquete de visor de PDF abandonado en 2018; la versión 2026 simplemente la amplió, como parte de una serie más amplia de ataques a la cadena de suministro que secuestran proyectos huérfanos para heredar la confianza en lugar de utilizar errores tipográficos para engañar a los usuarios. La lista de afectados aún está incompleta y no se ha asignado ningún CVE; Sonatype rastrea la campaña como Sonatype-2026-003775 (CVSS 8.7).

El ataque funcionó porque la AUR todavía confía en el nombre y el historial de un paquete antes que en quién lo mantiene ahora. Un paquete adoptado recientemente, o uno del que de repente surgen nuevos ganchos de instalación, ahora merece la misma sospecha que un paquete de un extraño.

Más de 400 paquetes AUR de Arch Linux secuestrados para implementar Infostealer y eBPF Rootkit – CYBERDEFENSA.MX

Los atacantes se apoderaron de más de 400 paquetes en el Arch User Repository (AUR) esta semana y reescribieron sus scripts de compilación para instalar un ladrón de credenciales en cualquier máquina que los haya creado.

El malware es un binario de Rust creado para recopilar secretos de los desarrolladores. Cuando aterriza con root, también puede cargar un rootkit eBPF para ocultarse. AUR es la colección de paquetes comunitarios de Arch Linux y está separada de los repositorios oficiales de Arch, que no se vieron afectados.

Si instaló o actualizó un paquete AUR a partir del 11 de junio, compárelo con las listas actuales de paquetes afectados antes de confiar en el host. La lista de nombres es larga, sigue creciendo y aún no está completa.

Este ataque persigue el modelo de confianza, no una falla de software. Los paquetes comprometidos conservaron sus nombres, sus historias y la confianza que los acompañaban. Sólo cambiaron las instrucciones de construcción.

La trampa estaba en la receta, dejando el paquete exactamente igual al software que los usuarios pretendían instalar. Ningún exploit, ningún día cero y ninguna señal de que los propios sistemas de Arch hayan sido violados.

Los atacantes adoptaron paquetes abandonados, editaron los archivos de compilación y permitieron a los usuarios ejecutar la carga útil por ellos. Sonatype, que nombró la campaña Arco Atómicolos encontró persiguiendo proyectos huérfanos: paquetes cuyos mantenedores se habían retirado, dejándolos abiertos para que cualquiera los adoptara.

También falsificaron los metadatos de git commit para que los cambios parecieran provenir de un mantenedor de larga data, una cuenta que un usuario de confianza de Arch Linux confirmó más tarde que nunca estuvo comprometida.

Ciberseguridad

Una vez que se adoptaba un paquete, se editaba su script PKGBUILD o .install para ejecutar npm install atomic-lockfile durante la compilación, colocando el paquete npm malicioso junto con un par de paquetes legítimos para cubrirse. Ese paquete, atomic-lockfile@1.4.2, lleva un gancho de preinstalación que ejecuta un ELF de Linux incluido llamado deps. Compile el paquete y el binario se ejecutará.

Los ejemplos confirmados reportados a la lista de correo de Arch incluyen los paquetes alvr y premake-git.

Qué hace el malware

Investigador independiente Whanos ingeniería inversa la carga útil de deps y describe un ladrón de credenciales de Rust dirigido a estaciones de trabajo de desarrolladores y sistemas de compilación. Recoge:

  • Cookies, tokens y almacenamiento local de navegadores basados ​​en Chromium (Chrome, Edge, Brave y muchos más)
  • Datos de sesión de aplicaciones de Electron, incluidos Slack, Discord y Microsoft Teams
  • Tokens de GitHub, npm y HashiCorp Vault, además de material al portador OpenAI/ChatGPT y metadatos de cuenta
  • Claves SSH, hosts_conocidos e historiales de shell
  • Credenciales de Docker y Podman y perfiles VPN

Los archivos robados se envían a través de HTTP a temp.sh. El comando y el control se ejecutan a través de un servicio cebolla Tor a través de un proxy de bucle invertido local.

Para lograr persistencia, instala un servicio systemd con Restart=always. Con root, se copia a sí mismo en /var/lib/ y escribe una unidad en /etc/systemd/system/; como usuario normal, utiliza el directorio de inicio y una unidad por usuario en ~/.config/systemd/user/. De cualquier manera, quiere volver.

Los primeros artículos sobrevendieron el rootkit eBPF. Es opcional y solo se carga cuando el binario ya tiene raíz y la capacidad adecuada. No se utiliza para ganar privilegios. Cuando se activa, oculta los propios procesos del malware, los nombres de los procesos y los inodos de socket de las herramientas estándar, utilizando mapas BPF anclados llamados hide_pids, hide_names y hide_inodes, y elimina los intentos de adjuntar un depurador.

Eso cambia los consejos de limpieza. Eliminar el paquete AUR no es suficiente una vez que se ha ejecutado la carga útil. Un administrador de paquetes puede eliminar los archivos que conoce. No puede demostrar que la máquina esté limpia después de que una carga útil compatible con rootkit haya tenido la oportunidad de ejecutarse.

El binario también presenta un segundo archivo vinculado a monero-wallet-gui que el análisis señala como un posible criptominero no analizado. Un rootkit eBPF acoplado a un ladrón que ataca y atrapa es inusual, y es por eso que éste vale más que encogerse de hombros.

Alcance y una segunda ola

El primer artículo de Sonatype contó más de 20 paquetes secuestrados. En un día, los rastreadores comunitarios y el Arco hilo general de aur había catalogado más de 400, con una lista maestra compilada al buscar el espejo git de AUR, colocándola alrededor de 408, y listas consolidadas subiendo más.

El paquete atomic-lockfile npm en sí mostró solo 134 descargas semanales en Enchufe antes de que fuera retirado del registro, por lo que la exposición real es la ruta de compilación de AUR en lugar de las instalaciones de npm.

Una segunda ola utilizó bun install js-digest, impulsado desde un conjunto separado de cuentas que los rastreadores de la comunidad vinculan al mismo editor npm que atomic-lockfile. Su carga útil es un binario diferente, un ELF separado por su hash, que la comunidad también marcó como malicioso.

Ciberseguridad

Aún se está contando hasta qué punto se ha extendido esta ola. Los primeros desgloses enumeraron unas pocas docenas de paquetes, mientras que las búsquedas posteriores basadas en grep en el espejo AUR arrojaron números mucho más altos que pueden incluir la deserción a medida que se eliminan las confirmaciones. De cualquier manera, no es una nota a pie de página de la primera ola, así que verifique tanto atomic-lockfile como js-digest.

Que hacer ahora

Los mantenedores de Arch están restableciendo las confirmaciones maliciosas, prohibiendo las cuentas y pidiendo a los usuarios que sigan informando paquetes sospechosos en el hilo de la lista de correo.

Trate la lista publicada de paquetes afectados como incompleta. Por tu parte:

  • Verifique cualquier paquete AUR instalado o actualizado a partir del 11 de junio con las listas de paquetes de la comunidad y los scripts de detección, que comparan sus paquetes externos con el conjunto defectuoso conocido. Grep historial de compilación reciente y cachés para npm install atomic-lockfile, bun install js-digest y la ruta de carga útil src/hooks/deps.
  • Si se ejecutó un paquete marcado, trate al host como con credenciales comprometidas. Rote todo lo que toca el ladrón: sesiones de navegador, claves SSH, tokens de GitHub y npm, sesiones de Slack, Teams y Discord, tokens de Vault, credenciales de Docker y Podman, y cualquier clave de nube.
  • Caza por la perseverancia. Busque servicios systemd desconocidos (tanto unidades del sistema como ~/.config/systemd/user/) y archivos inesperados en /var/lib/. Inspeccione /sys/fs/bpf/ para ver los mapas Hidden_pids, Hidden_names y Hidden_inodes. Revisar las conexiones salientes a Tor y cargar servicios.
  • Si el paquete se ejecutó como root, asuma que el rootkit está presente y reinstálelo desde un medio confiable. De lo contrario, no hay forma de confiar en el sistema.
  • En el futuro, lea PKGBUILD y cualquier enlace .install antes de compilar, especialmente para paquetes adoptados recientemente o que se activan repentinamente después de un largo período de inactividad. Si no comprende las instrucciones de compilación, no instale el paquete.

Para la detección, el SHA-256 de la carga útil principal es 6144d433f8a0316869877b5f834c801251bbb936e5f1577c5680878c7443c98b; el conjunto completo de indicadores, incluido el host cebolla C2, se encuentra en el análisis ioctl.fail.

La misma táctica de adopción afectó a un paquete de visor de PDF abandonado en 2018; la versión 2026 simplemente la amplió, como parte de una serie más amplia de ataques a la cadena de suministro que secuestran proyectos huérfanos para heredar la confianza en lugar de utilizar errores tipográficos para engañar a los usuarios. La lista de afectados aún está incompleta y no se ha asignado ningún CVE; Sonatype rastrea la campaña como Sonatype-2026-003775 (CVSS 8.7).

El ataque funcionó porque la AUR todavía confía en el nombre y el historial de un paquete antes que en quién lo mantiene ahora. Un paquete adoptado recientemente, o uno del que de repente surgen nuevos ganchos de instalación, ahora merece la misma sospecha que un paquete de un extraño.