Un actor malicioso conocido como GemStuffer ha comprometido más de 150 paquetes RubyGems con el objetivo de extraer datos de portales de consejos municipales del Reino Unido. La campaña utiliza la técnica de stuffing, creando gemas con nombres similares a bibliotecas legítimas para engañar a desarrolladores. Una vez instaladas, estas gemas recopilan información sensible de ciudadanos y registros administrativos, exfiltrándola a servidores controlados por el atacante.
Cómo opera el ataque de stuffing en el ecosistema Ruby 🛡️
El ataque se basa en la publicación masiva de gemas con nombres tipográficamente cercanos a librerías populares, como typosquatting o combosquatting. Al ser instaladas, ejecutan código que raspa datos de portales de ayuntamientos, incluyendo nombres, direcciones y registros de servicios públicos. La exfiltración se realiza mediante peticiones HTTP a servidores remotos. La detección es compleja porque las gemas maliciosas imitan funciones básicas de las originales, ocultando su carga dañina en módulos secundarios o mediante ofuscación de código.
GemStuffer: el coleccionista de datos que no pidió permiso 😅
Parece que GemStuffer entendió el concepto de open source de forma literal: todo lo que encuentran en los portales municipales es suyo. Con más de 150 gemas, han montado una biblioteca de datos ajena que haría palidecer a cualquier archivero. Lo curioso es que, en vez de pedir una API pública, prefirieron el método de pedir por favor a través de malware. Al menos, si alguien pregunta, ya saben que el código no era suyo, solo estaba de paso.