[11/05/2022] Los investigadores de malware advierten sobre un programa backdoor sigiloso que ha sido utilizado por un actor de amenazas chino para comprometer servidores Linux en organizaciones gubernamentales y privadas de todo el mundo. Aunque el backdoor no es nuevo y se han utilizado variantes durante los últimos cinco años, ha conseguido pasar desapercibido y tener un índice de detección muy bajo. Una de las razones de su éxito es que aprovecha una función llamada Berkeley Packet Filter (BPF) en los sistemas basados en Unix para ocultar el tráfico malicioso.
Los investigadores de PwC Threat Intelligence dieron el nombre de BPFdoor y lo atribuyen a un grupo chino al que llaman Red Menshen. El equipo de PwC descubrió la amenaza mientras investigaba varias intrusiones en Asia el año pasado, e incluyó una breve sección sobre ella en su informe anual sobre amenazas publicado a finales del mes pasado
Esta breve mención no recibió mucha atención hasta que el investigador de seguridad independiente Kevin Beaumont compartió el enlace a una muestra de malware con bajo índice de detección en VirusTotal hace unos días. Esto provocó la confirmación por parte del equipo de PwC de que lo que Beaumont encontró era un controlador para el backdoor pasivo BPFdoor. Esto dio lugar a un escrito más detallado de Beaumont, que también estaba rastreando independientemente el malware desde el año pasado.
"He rastreado Internet en busca de BPFDoor a lo largo del 2021 y he descubierto que está instalado en organizaciones de todo el mundo, en particular en Estados Unidos, Corea del Sur, Hong Kong, Turquía, India, Vietnam y Myanmar, y que es muy evasivo", afirmó Beaumont en un blog. "Estas organizaciones incluyen sistemas gubernamentales, sistemas postales y logísticos, sistemas educativos y más".
Cómo abusa BPFdoor
Mientras que los investigadores de PwC planean compartir más detalles sobre el backdoor en una conferencia en junio, otros investigadores, incluyendo a Beaumont, ya han localizado más muestras en VirusTotal potencialmente subidas por las víctimas u otras partes a lo largo de los años. Además de las muestras, el código fuente de una variante más antigua del backdoor se publicó en línea, y fue analizado por la empresa de detección de intrusiones y respuesta a incidentes de Linux Sandfly Security.
"El código fuente de BPFDoor es pequeño, centrado y bien escrito", dijeron los investigadores de Sandfly. "Aunque la muestra que revisamos era específica para Linux, con algunos pequeños cambios podría ser fácilmente portado a otras plataformas (se informa que existe un binario para Solaris). BPF está ampliamente disponible en todos los sistemas operativos y las funciones básicas del shell probablemente funcionen en todas las plataformas con pocas modificaciones".
Para desplegarse en un sistema de forma efectiva, el malware debe ejecutarse con privilegios de root. Esto sugiere que los atacantes están comprometiendo los servidores infectados utilizando otras técnicas, potencialmente explotando vulnerabilidades.
Una vez ejecutado, el backdoor realiza primero varios pasos de detección-evasión y antiforense. Esto implica copiarse a sí mismo en el disco RAM de Linux, alterando las marcas de tiempo, haciéndose pasar por un proceso legítimo que se ejecuta en el sistema, y eliminando ciertos datos del entorno para la ejecución del proceso que podrían ser útiles para las herramientas forenses. Según los investigadores de Sandfly, el backdoor no tiene un mecanismo o rutina de persistencia incorporada, por lo que es probable que los atacantes lo consigan manualmente desplegando scripts de persistencia.
Una vez ejecutado en un sistema, el backdoor carga un filtro BPF, que le permite monitorizar los paquetes de red que llegan al sistema en varios protocolos como ICMP (ping), TCP y UDP. El objetivo de este filtro es descartar todos los paquetes y solo procesar los que tienen un valor mágico en su cabecera acompañado de una contraseña. Estos paquetes son utilizados por los atacantes para abrir shells remotos en los sistemas infectados.
"La relevancia del filtro BPF y la captura de paquetes es que está olfateando el tráfico a un nivel inferior al del firewall local", explican los investigadores. "Esto significa que, aunque se ejecute un firewall, el implante verá, y actuará, cualquier paquete mágico enviado al sistema. El firewall que se ejecuta en el host local no impedirá que el implante tenga esta visibilidad. Este es un punto importante que hay que entender".
Lo que significa en la práctica es que si, por ejemplo, el firewall del sistema está configurado para permitir únicamente las conexiones a una aplicación web que se ejecuta en el servidor en el puerto 443 (HTTPS), por ejemplo, los atacantes externos pueden utilizar esto para enviar un llamado paquete mágico y activar la puerta trasera sin que el cortafuegos pueda bloquearlo. En otras palabras, se apoya en el tráfico de red legítimo que ya está permitido en el sistema.
Además, cuando se recibe el paquete mágico encriptado, la puerta trasera abrirá un shell de raíz en un puerto alto localmente en el sistema, y utilizará el firewall de Linux iptables para establecer una regla que redirija todo el tráfico procedente de la dirección IP del atacante al puerto del shell. Así que una vez que el backdoor se activa, si los atacantes se conectan de nuevo al sistema a través del puerto 443, serán recibidos con un shell de root en lugar de la aplicación web. Las solicitudes de todas las demás direcciones IP y de los usuarios legítimos seguirán siendo tratadas con normalidad y serán enviadas a la aplicación web.
En lugar de esperar a que los atacantes se conecten al shell, el backdoor también puede configurar un shell inverso que se conecte activamente con los atacantes, pero esto es más fácil de detectar si el sistema está configurado para bloquear las conexiones salientes.
"El uso de BPF y la captura de paquetes proporciona una forma de eludir los firewalls locales para permitir que los atacantes remotos controlen el implante", dijeron los investigadores. "Por último, la función de redireccionamiento es única y muy peligrosa, ya que puede hacer que el tráfico malicioso se mezcle sin problemas con el tráfico legítimo en un host infectado con puertos expuestos a Internet".
Cómo detectar BPFdoor
Según el informe de PwC, el grupo Red Menshen utiliza una variedad de herramientas de post-explotación para el movimiento lateral dentro de las redes corporativas después de ganar un punto de apoyo con BPFdoor. Esto incluye variantes personalizadas de los programas troyanos de Windows Mangzamel y Gh0st, así como herramientas de código abierto como Mimikatz y Metasploit. Los atacantes utilizan servidores privados virtuales alojados en proveedores conocidos para controlar los implantes de BPFDoor y también se apoyan en routers comprometidos en Taiwán para conectarse y gestionar esos servidores.
Tanto Beaumont como el investigador Florian Roth han compartido las reglas de YARA que pueden utilizarse para escanear diferentes muestras de BPFDoor dentro de los entornos. Los investigadores de Sandfly Security también han compartido indicadores de compromiso y tácticas de caza en su análisis advirtiendo que la simple búsqueda de hashes de archivos no es fiable ya que los binarios maliciosos pueden ser fácilmente recompilados y modificados en Linux.
También vale la pena señalar que el abuso de BPF, aunque raro, no es nuevo. En febrero, una empresa china de ciberseguridad llamada Pangu Lab publicó un informe sobre un implante de puerta trasera que atribuyeron a la Agencia de Seguridad Nacional (NSA) de Estados Unidos y que apodaron Bvp47. Ese implante también se basaba en BPF para establecer un canal de comunicación encubierto. Beaumont advirtió entonces que el sector de la ciberseguridad parecía ignorar la importancia y los peligros potenciales del uso de BPF y eBPF (BPF ampliado) para evadir la detección.
Basado en el artículo de Lucian Constantin(CSO) y editado por CIO Perú