PamStealer macOS Malware Adds Live C2 Payload Decryption and Multi-Layer Persistence
The Hacker News · 25 sept, 15:18

Investigadores de seguridad han identificado una nueva versión de PamStealer para macOS que implementa cifrado de payload dinámico vinculado a un servidor C2, imposibilitando el análisis estático sin acceso a una sesión en vivo. El malware utiliza un sitio falsificado que promociona una billetera de criptomonedas inexistente y establece múltiples capas de persistencia mediante LaunchAgent, scripts de reparación y hooks de Git que se activan en cada sesión zsh.
La nueva variante de PamStealer mantiene el mecanismo de dropper basado en JavaScript for Automation (JXA), pero introduce cambios significativos en la cadena de cifrado. En lugar de embeber la clave de descifrado en el código fuente, ahora obtiene una utilidad de descifrado desde el servidor C2 y realiza un intercambio de claves X25519 antes de poder desencriptar el payload. Cada ejecución genera un par de claves efímero nuevo, lo que impide que una clave de encriptación capturada (DEK) pueda ser reutilizada para extraer el contenido del payload.
El malware utiliza un sitio falso ("wavel[.]app") que impersona un servicio de billetera de criptomonedas. Al descargar el archivo .dmg, se obtiene un archivo AppleScript compilado que, al abrirse en Script Editor, ejecuta un dropper zsh que descarga la utilidad "pkgunpack" desde "wavel.apple03cloudstore[.]com". El malware implementa cuatro métodos redundantes de persistencia: LaunchAgent, un script de reparación que restaura el payload si se elimina, y hooks de Git (post-checkout y pre-commit) que activan el script en cualquier operación de repositorio. El componente final, escrito en Swift en lugar de Rust como versiones anteriores, actúa como stealer de credenciales: captura contraseñas del sistema mediante un diálogo falso, enumera elementos del llavero y roba credenciales de navegadores basados en Chromium y Firefox, incluyendo Chrome, Edge, Firefox, Brave, Opera, Arc y Zen.
Puntos clave
- Cifrado de payload vinculado a servidor C2: requiere intercambio X25519 en vivo para descifrar
- Cuatro métodos de persistencia: LaunchAgent, script de reparación, hooks de Git y ~/.zshrc
- Stealer de credenciales: sistema operativo, llavero, navegadores (Chromium y Firefox) y archivos de usuario
- Sitio de distribución falso imitando billetera Wavel
- Análisis estático imposible sin sesión C2 activa
Figuras de la fuente
