(https://i.imgur.com/MF3CLVf.jpeg)
Una investigación forense sobre una infraestructura comprometida en Amazon Web Services (AWS) reveló un rootkit GNU/Linux novedoso y altamente sigiloso bautizado LinkPro, según el análisis publicado por la empresa francesa Synacktiv. LinkPro combina módulos eBPF (Berkeley Packet Filter extendido) y técnicas en espacio de usuario para ocultarse, activarse mediante un "paquete mágico" y proporcionar control remoto y túneles proxy a los atacantes.
Vectores iniciales y entrega: Jenkins, Docker y KubernetesEl actor aprovechó un Jenkins expuesto vulnerable (CVE-2024-23897) como punto de entrada para comprometer clústeres Kubernetes y desplegar una imagen maliciosa de Docker Hub identificada como kvlnt/vv (el repositorio fue eliminado tras la investigación). La imagen incluía una base Kali Linux y una carpeta app con scripts y binarios responsables del acceso remoto y la descarga de cargas útiles cifradas. Estas cadenas de ataque permitieron a los operadores pivotar dentro de clústeres y entregar múltiples familias de malware, incluido LinkPro.
Componentes observados: vnt, vGet, vShell y LinkProLa imagen maliciosa y los artefactos desplegados contenían: (1) start.sh, que inicia SSH y ejecuta componentes maliciosos; (2) link (un binario vnt que actúa como servidor VPN/proxy); y (3) vGet, un descargador en Rust que obtiene una carga útil vShell cifrada desde un bucket S3 y establece comunicación con un servidor C2 vía WebSocket. Además, se entregaron droppers que instalaban vShell y el rootkit LinkPro, codificado en Golang, para facilitar persistencia y ocultación.
Arquitectura y modos de operación de LinkProLinkPro emplea dos módulos eBPF principales: Hide (ocultación) y Knock (activación basada en paquete). Dependiendo de la configuración, puede operar en:
- Modo activo/forward: el agente inicia la conexión C2; soporta HTTP, WebSocket, UDP, TCP y DNS.
- Modo pasivo/reverse: espera a que un "paquete mágico" desencadene la ventana de activación y usa solo HTTP para comunicarse.
El "paquete mágico" identificado por Synacktiv es un paquete TCP con tamaño de ventana 54321; cuando Knock lo detecta almacena la IP origen y abre una ventana de una hora para recibir comandos desde esa IP, además de manipular encabezados TCP para sortear correlaciones en registros de firewall frontales. Estas técnicas complican enormemente la detección y la correlación forense.
Técnicas de ocultación y persistencia: eBPF y ld.so.preloadPara permanecer indetectable, LinkPro usa:- eBPF (tracepoints y kretprobe) para interceptar syscalls como getdents y ocultar archivos/procesos y sus propios programas BPF. Esto requiere configuraciones kernel específicas como CONFIG_BPF_KPROBE_OVERRIDE.
- Fallback en espacio de usuario: si la instalación eBPF falla o no es posible, el rootkit modifica /etc/ld.so.preload para cargar libld.so, una biblioteca compartida maliciosa que engancha funciones libc y altera resultados de llamadas para ocultar artefactos en tiempo de ejecución.
- Persistencia mediante creación de un servicio systemd y mecanismos para reinstalar módulos o restaurar el sistema tras señales de terminación, además de limpieza ordenada si se interrumpe la operación.
Capacidades C2 y comandos admitidosLinkPro permite ejecutar comandos remotos en un pseudo-terminal, ejecutar comandos de shell, listar y manipular archivos, descargar y subir ficheros, y configurar túneles SOCKS5, entre otras acciones. La flexibilidad para elegir puertos y protocolos (con reemplazo de puertos en paquetes entrantes) facilita eludir reglas de firewall y evadir correlaciones simples entre registros de perímetro y actividad interna.
Impacto y motivación del atacanteAunque el investigador no atribuye públicamente LinkPro a una operación APT conocida, los hallazgos indican una motivación principalmente financiera: uso de servidores comprometidos como proxies o pivotes, despliegue de loaders y ladrones de información (stealers) y potencial uso para fraude o exfiltración de credenciales. La combinación de Kubernetes, imágenes Docker maliciosas y un rootkit eBPF hace que las infraestructuras cloud sean objetivos atractivos.
Recomendaciones prácticas y medidas de mitigación (prioritarias)- Corregir y endurecer Jenkins: parchear CVE-2024-23897 y limitar el acceso público al panel y CLI de Jenkins. Monitorizar accesos y patrones de CLI atípicos.
- Control de imágenes y registries: bloquear imágenes no autorizadas, habilitar firmas de imágenes (Content Trust), y escanear imágenes en CI/CD antes de desplegar en Kubernetes.
- Hunting en entornos Kubernetes: auditar Deployments, DaemonSets y contenedores con privilegios, buscar kvlnt/vv y artefactos start.sh, libld.so, y conexiones a dominios/IPs señalados por la investigación.
- Detección eBPF y archivos preload: monitorizar cambios en /etc/ld.so.preload, cargas inusuales de BPF y llamadas sys_bpf; usar herramientas de integridad de kernel y EDR con visibilidad a eBPF.
- Segmentación y bloqueo de C2: bloquear en firewalls salidas hacia IPs y dominios C2 conocidos; limitar comunicaciones salientes desde pods a destinos aprobados.
- Respuesta ante incidentes: si sospecha compromiso, aislar nodos, obtener volcado de memoria, volcar eBPF programs y proceder a análisis forense de imágenes y configuraciones. Coordinar notificación y medidas de remediación.
En fin...LinkPro demuestra la convergencia entre técnicas kernel-level (eBPF), supply-chain y abuso de entornos cloud (Jenkins + Docker + Kubernetes) para lograr persistencia y evasión avanzadas. Su capacidad para alternar entre eBPF y mecanismos de espacio de usuario lo hace adaptable a distintos entornos de kernel. Las organizaciones que operan en la nube deben priorizar parches de Jenkins, control estricto de imágenes y detección enfocada en eBPF y ld.so.preload para minimizar riesgo.
Fuente: https://thehackernews.com/