ClickLock: nuevo malware para macOS que fuerza a los usuarios a revelar su contraseña de inicio de sesión
Un nuevo malware para macOS, denominado ClickLock, detiene todos los procesos visibles para que las víctimas se vean forzadas a introducir su contraseña de inicio de sesión. El software malicioso está diseñado para robar activos en criptomonedas, credenciales de acceso, datos de gestores de contraseñas, información de navegadores y datos de autenticación de macOS, además de poder instalar una puerta trasera persistente para acceso remoto continuo.
Investigadores de Group-IB analizaron el script de shell de ClickLock tras encontrarlo en VirusTotal, donde se subió por primera vez el 9 de junio. En el momento del informe, ninguna plataforma de seguridad lo detectaba. Investigaciones adicionales revelaron que el script ha infectado al menos 100 sistemas en 33 países desde mayo.
La infección probablemente comienza mediante un señuelo ClickFix, ya que los investigadores observaron comandos maliciosos pegados en la Terminal que activan una falsa verificación humana de Cloudflare con una barra de progreso animada. Al mismo tiempo, se deshabilitan las interrupciones del teclado, se oculta el cursor y los módulos de robo se descargan en segundo plano. El NotificationCenter de macOS se suprime durante unas seis horas, eliminando notificaciones que podrían alertar al usuario.
Forzando la introducción de la contraseña
Group-IB destaca que ClickLock no requiere exploits ni privilegios elevados, sino que logra su objetivo mediante ingeniería social y bucles de interacción forzada. El script muestra inicialmente un diálogo falso de contraseña de macOS con el nombre de usuario real de la víctima y un icono de Apple descargado. Si el usuario introduce su contraseña, el malware la valida y la exfiltra al atacante a través de Telegram.
Si el usuario cancela el diálogo, el malware establece persistencia mediante dos LaunchAgents de macOS (com.authirity.plist y com.chromer.plist) y se recarga en el próximo inicio de sesión. En la siguiente activación, el módulo de robo de contraseñas ejecuta un bucle de terminación cada 210 milisegundos, dirigido a aplicaciones clave (Finder, Dock, Terminal, Monitor de Actividad, Consola, Ajustes del Sistema, Spotlight, navegadores web) y muestra solo un diálogo de contraseña hasta que la víctima cumple.
Group-IB informa que el bucle está configurado para durar 300.000 segundos (unas 83 horas), o hasta que la víctima proporcione una contraseña correcta. El segundo LaunchAgent ejecuta un mecanismo de coacción separado que también termina muchas aplicaciones del sistema, solicitando autorización de Llavero mediante un aviso legítimo para acceder a la clave Safe Storage de Chrome. Esa clave podría usarse para descifrar contraseñas, cookies y datos de autocompletado de Chromium almacenados offline. Este segundo mecanismo tiene un intervalo de repetición de 200 milisegundos y está configurado para durar casi 35 días (3 millones de segundos).
Módulo de recolección de datos
ClickLock despliega un módulo de recolección que ataca los siguientes objetivos: datos de ocho navegadores (Chrome, Firefox, Brave, Edge, Opera, Vivaldi, Arc y Chromium); inicios de sesión guardados, cookies, autocompletado, marcadores, almacenamiento local y de sesión; extensiones de billetera de criptomonedas y archivos de billetera de escritorio; material de bóveda de billetera encriptado para posible descifrado offline; datos de extensiones de gestores de contraseñas; direcciones de criptomonedas en caché en EVM, Bitcoin, Solana, TRON, TON y Stacks; historiales de shell; configuración de FileZilla FTP y datos de servidores recientes; información básica del sistema y dirección IP pública.
El módulo empaqueta la información recopilada junto con un archivo de registro de resumen en un archivo ZIP, que luego se sube a través de la API de Telegram Bot. Los archivos mayores de 40 MB se dividen en partes más pequeñas, y la lógica de reintento garantiza que la subida se reanude tras fallos temporales de red.
Puerta trasera persistente
El módulo final es una versión modificada de la herramienta de código abierto GSocket, que actúa como puerta trasera persistente para los atacantes. Se establece mediante múltiples métodos, incluyendo un LaunchAgent, entradas en crontab y modificaciones en archivos de configuración de shell. Se conecta a través de un relay GSocket, permitiendo al atacante abrir una shell inversa y controlar el sistema de forma remota. A diferencia de otros módulos de ClickLock que se autodestruyen tras la ejecución, GSocket es el único componente que persiste en los sistemas infectados.
Group-IB advierte que "el malware deja una ventana de detección estrecha" y que las cargas maliciosas se alojan en dominios legítimos comprometidos con buena reputación. Además, el script no se marca como malicioso en VirusTotal y sus módulos se autodestruyen tras la ejecución, sin dejar artefactos. A pesar de esto, los investigadores afirman que la detección es posible basándose en la actividad generada, como osascript lanzando diálogos de contraseña, terminación repetida de procesos, acceso masivo a directorios de perfiles de navegador y conexiones salientes a la API de Telegram.
Para defenderse, los usuarios deben evitar pegar comandos en la Terminal que no entiendan completamente, especialmente si la petición proviene de un sitio web. "Cualquier página que te indique que abras la Terminal, por muy profesional que parezca, está intentando comprometer tu sistema", advierten los investigadores. Si se solicita la contraseña de inicio de sesión cuando el resto del sistema parece no responder, Group-IB recomienda forzar el apagado manteniendo presionado el botón de encendido y luego iniciar en Modo Seguro para recuperar el sistema.