Seguridad

Perfctl, el malware que ha infectado a miles de sistemas Linux desde 2021

Investigadores informaron recientemente que miles de máquinas que ejecutan Linux habían sido infectadas por un malware que se destaca por su sigilo, la amplitud de actividades maliciosas que puede llevar a cabo y el número de configuraciones erróneas que puede explotar.

Este malware lleva circulando desde 2021 y se instala aprovechando más de 20.000 errores de configuración comunes, una capacidad que puede convertir a millones de máquinas conectadas a Internet en objetivos potenciales. También es capaz de aprovechar la vulnerabilidad crítica Apache RocketMQ (CVE-2023-33246), la cual fue corregida el año pasado. 

Perfctl storm

Perfctl es un tipo de malware diseñado para ocultarse en sistemas Linux y minar criptomonedas de forma encubierta. Su nombre proviene de la combinación de la herramienta de monitoreo de Linux «perf» y la abreviatura común «ctl» utilizada en comandos.

¿Cómo se oculta Perfctl?

  • Camuflaje: Utiliza nombres de procesos y archivos similares a los legítimos de Linux para pasar desapercibido.
  • Rootkits: Instala muchos componentes como rootkits, lo que dificulta su detección por el sistema operativo.
  • Disimulo: Detiene actividades que podrían revelar su presencia, como ciertas acciones al iniciar sesión.
  • Comunicación encubierta: Usa un socket Unix sobre TOR para comunicarse de forma anónima.
  • Autoeliminación: Elimina su archivo de instalación original para evitar ser detectado.
  • Manipulación: Interfiere con el proceso pcap_loop de Linux para ocultar su tráfico malicioso.
  • Silencio: Suprime mensajes de error para evitar alertas visibles.

Una amenaza persistente y versátil

Perfctl ha demostrado ser una amenaza más compleja y persistente, permaneciendo en la máquina infectada después de reinicios e intentos de eliminar los componentes principales. Pero… ¿cómo logra esto?

Con persistencia, modificando archivos de configuración del sistema (como ~/.profile) para asegurarse de que se ejecute cada vez que un usuario inicie sesión. También se copia a sí mismo en múltiples ubicaciones del disco duro para dificultar su eliminación, y además, utiliza técnicas de enganche (como con pcap_loop) para mantener sus actividades incluso si las partes principales del malware son detectadas y eliminadas.

Sumado a lo anterior, convierte la máquina infectada en un servidor proxy para generar ingresos a través del tráfico de otros usuarios, y sirve como punto de entrada para instalar otros tipos de malware, ampliando aún más su capacidad de daño. 

¿Por qué es tan peligroso Perfctl? Hay tres grandes motivos:

  • Su diseño lo hace difícil de detectar y eliminar.
  • Una vez que se encuentra dentro del sistema, es complicado deshacerse de él.
  • Puede realizar múltiples actividades maliciosas, desde minar criptomonedas hasta robar datos del usuario.

Los investigadores han encontrado muchos casos de usuarios que han reportado infecciones por Perfctl, pero no hay muchos estudios detallados sobre él. Este malware es especialmente difícil de eliminar por dos razones principales: primero, cuando infecta un sistema, se reinicia automáticamente si es detectado o eliminado manualmente. Segundo, se detiene temporalmente cuando el usuario inicia sesión, lo que complica aún más su detección. Sin embargo, una vez que el usuario cierra sesión, el malware se reactiva, continuando su actividad maliciosa.

Un usuario comentó su experiencia en un post de Reddit cuando se dio cuenta de que dos de sus servidores estaban infectados con un secuestrador de criptomonedas con los nombres perfcc y perfctl. 

Sólo me di cuenta del malware porque mi configuración de monitorización me alertó de una utilización del 100% de la CPU, Sin embargo, el proceso se detenía inmediatamente cuando iniciaba sesión a través de SSH o la consola. En cuanto cerraba la sesión, el malware volvía a ejecutarse en unos segundos o minutos

Proceso de infección y funcionamiento del malware

El ataque comienza explotando una vulnerabilidad o configuración débil en el sistema objetivo. Una vez que obtiene acceso, descarga la carga útil principal desde un servidor comprometido. Esta carga útil recibe un nombre como “httpd”. Esta carga se copia a sí misma en el directorio /tmp con un nombre diferente para disimular su verdadera identidad y así evitar ser detectada. Luego, el malware intenta obtener permisos de root explotando la vulnerabilidad CVE-2021-4043, lo que le permite controlar el sistema de forma completa. Una vez que obtiene los privilegios de root, establece un canal de comunicación con un servidor externo para recibir nuevas instrucciones y enviar información robada. Además de esto, vuelve a copiarse a sí mismo en múltiples ubicaciones del disco duro, adoptando nombres de archivos comunes para camuflarse. 

Para ocultar su presencia, implanta un rootkit que modifica herramientas del sistema para este propósito, instalando también software para minar criptomonedas, utilizando los recursos del sistema infectado para generar ganancias a los atacantes. 

Flujo de ataque de Perfctl.
Fuente: Aqua Security

Impacto y alcance de la infección

Se estima que miles de servidores Linux están infectados con este malware. Sumado a esto, el número de sistemas susceptibles de ser infectados es mucho mayor, debido a la falta de parches o configuraciones incorrectas.

Algunos de los nombres que reciben los archivos maliciosos que se instalan.
Fuente: Aqua Security

Detección y prevención

Un aumento inusual en el uso de la CPU o un rendimiento lento del sistema pueden ser indicadores claros de una posible infección. Estos síntomas suelen ocurrir cuando el malware consume recursos del sistema para ejecutar sus tareas maliciosas, como el robo de datos, la comunicación con servidores remotos o la propagación a otros dispositivos. Si se observa un uso de la CPU que no corresponde a las actividades habituales o una disminución significativa en el rendimiento del sistema, es crucial investigarlo más a fondo para descartar una posible amenaza.

Medidas preventivas:

  • Instalar el parche para CVE-2023-33246.
  • Corregir las configuraciones incorrectas identificadas.

En resumen, Perfctl es un malware altamente persistente que se propaga rápidamente y causa un daño significativo a los sistemas infectados. Para protegerse, es fundamental mantener los sistemas actualizados, corregir las vulnerabilidades y estar atentos a cualquier signo de infección.

Más información:

La entrada Perfctl, el malware que ha infectado a miles de sistemas Linux desde 2021 se publicó primero en Una Al Día.

Powered by WPeMatico

Gustavo Genez

Informático de corazón y apasionado por la tecnología. La misión de este blog es llegar a los usuarios y profesionales con información y trucos acerca de la Seguridad Informática.