El ataque SleeperGem se llevó a cabo mediante código malicioso en tres paquetes Ruby: git_credential_manager, Dendreo y fastlane-plugin-run_tests_firebase_testlab. Estos paquetes fueron publicados a través de cuentas inactivas y sin actualizaciones durante años. En particular, git_credential_manager imitó el Administrador de Credenciales de Git de Microsoft para aprovecharse de la confianza de los usuarios. El código malicioso evita entornos CI/CD y escanea más de 30 variables de entorno en el sistema.

Los paquetes maliciosos descargan una segunda carga desde un servidor Forgejo y la ejecutan mediante PowerShell en Windows. La versión 2.8.3 instala un servicio persistente en segundo plano, utiliza systemd y cron para obtener permisos de inicio de sesión, y, si el usuario tiene privilegios sudo, crea un shell setuid con privilegios de root. Este método garantiza acceso persistente a datos sensibles en el sistema.

Los investigadores señalaron que RubyGems ya no es solo una herramienta de distribución de paquetes, sino que también se utiliza como un "dead drop" para almacenar datos robados. Otros ataques recientes han demostrado que claves SSH, credenciales de AWS y expresiones de semilla de billeteras criptográficas se almacenan a través de RubyGems. Los usuarios que hayan instalado estos paquetes deben asegurar completamente sus sistemas y cambiar todas sus credenciales.