KREMLIN: la extensión de Chrome que nunca instalaste y que puede robar tu sesión bancaria
Imagina abrir Chrome una mañana y encontrarlo exactamente igual que siempre. Tus marcadores siguen ahí, tus contraseñas funcionan, las páginas cargan con normalidad y no recuerdas haber instalado nada extraño. Sin embargo, dentro del navegador puede estar ejecutándose una extensión que tú nunca autorizaste y que tiene capacidad para leer cookies, capturar formularios, hacer capturas de pantalla, inspeccionar las páginas que visitas, modificar su contenido y enviar información a un servidor remoto.
No es una hipótesis. Es precisamente el mecanismo que investigadores de Elastic Security Labs han documentado en una familia de malware denominada KREMLIN, utilizada en campañas de malware bancario al menos desde mayo de 2025. Lo realmente interesante no es que exista otra extensión maliciosa, sino el método que utiliza para introducirse en Chrome y Edge sin depender de que el usuario pulse voluntariamente el botón de instalar.
KREMLIN no viene del Kremlin
El nombre puede llevar fácilmente a error. KREMLIN no ha sido atribuido al Gobierno ruso ni existe evidencia conocida de que la operación tenga origen ruso. El nombre procede del alias utilizado por su desarrollador, Kr3mlin4rt1st.
De hecho, los indicios recogidos por Elastic apuntan principalmente hacia Brasil. Las campañas analizadas suplantan a doce entidades bancarias brasileñas, contienen comentarios y mensajes de error en portugués y muestran una actividad de infraestructura concentrada durante horarios laborales de São Paulo. Elastic llegó a observar 1.515 sistemas intentando contactar con uno de los dominios utilizados por el malware, un 98,75 % de ellos desde Brasil, aunque esa cifra debe entenderse como parte de la infraestructura observada y no necesariamente como el número total de víctimas.
Por ahora, el objetivo parece eminentemente brasileño, pero la técnica utilizada resulta bastante más interesante que la campaña concreta, porque demuestra hasta qué punto un atacante puede aprovechar el propio funcionamiento interno de los navegadores Chromium.
No es una extensión que instalas por error
Aquí está la diferencia fundamental. KREMLIN no depende de convencerte para instalar una extensión desde la Chrome Web Store ni de engañarte con una extensión aparentemente legítima. Para cuando aparece dentro de Chrome o Edge, el ordenador ya ha sido comprometido previamente.
La cadena de infección observada por Elastic comienza normalmente con un archivo JavaScript que se hace pasar por una factura, un recibo bancario u otro documento comercial. El usuario lo ejecuta pensando que está abriendo un documento, pero en realidad pone en marcha el primer componente del malware. A partir de ahí, el loader comprueba si se está ejecutando dentro de una máquina virtual o un entorno de análisis y, si considera que el sistema es real, descarga nuevos componentes, establece mecanismos de persistencia y continúa la infección.
Entre otras acciones, el malware crea una tarea programada en Windows para volver a ejecutarse después del inicio de sesión. Es decir, la extensión maliciosa no es el punto de entrada, sino una de las etapas posteriores de una infección mucho más amplia.
Engañar al sistema de integridad de Chrome
Chrome no permite simplemente copiar una carpeta dentro de su directorio y hacerla pasar por una extensión instalada. Chromium mantiene información sobre las extensiones y otras preferencias sensibles dentro de un archivo denominado Secure Preferences, y utiliza distintos mecanismos criptográficos para detectar si esos datos han sido manipulados desde fuera del navegador.
La idea es sencilla: si otro programa modifica a escondidas determinadas configuraciones, Chrome debería detectar que esas preferencias han sido alteradas. KREMLIN no intenta desactivar esa protección de manera burda, sino que hace algo bastante más sofisticado: modifica los datos y después recalcula las comprobaciones criptográficas necesarias para que los cambios parezcan legítimos.
El malware copia su extensión dentro de los perfiles de Chrome o Edge, activa el modo desarrollador y modifica Secure Preferences. Como Chromium protege determinados valores mediante HMAC y, en versiones modernas, mediante hashes relacionados con las claves de OSCrypt, KREMLIN obtiene las claves necesarias y vuelve a generar las firmas correspondientes después de introducir sus propias modificaciones.
Dicho de otra forma, el atacante no solo modifica el archivo, sino que también reconstruye el mecanismo que debería demostrar que ese archivo no ha sido modificado. Desde el punto de vista del navegador, la configuración vuelve a ser coherente.
El malware no rompe el precinto: fabrica uno nuevo.
El navegador se convierte en parte del malware
Una vez instalada, la extensión analizada por Elastic se presenta como un supuesto software legítimo llamado AVSync. Solicita capacidades relacionadas con pestañas, cookies, almacenamiento y peticiones web, e introduce scripts dentro de las páginas visitadas por la víctima.
Desde ese momento, el atacante ya no necesita observar Chrome desde fuera porque, a efectos prácticos, ya está dentro del navegador. La extensión puede recibir órdenes desde un servidor de control y ejecutar diferentes acciones: obtener cookies y almacenamiento web, enumerar pestañas, capturar la pantalla, recuperar el código HTML de una página, modificar su contenido, redirigir determinados clics o interceptar información introducida en formularios.
También incorpora funciones de keylogging selectivo. Cuando los operadores activan esa capacidad para un determinado dominio, la extensión puede monitorizar campos <input> y <textarea> y enviar al servidor lo que escribe el usuario. Eso incluye potencialmente contraseñas, datos personales, códigos o cualquier otro contenido introducido en una página legítima.
Por eso este tipo de ataque resulta especialmente peligroso. No estamos hablando únicamente de robar contraseñas almacenadas en Chrome, sino de observar directamente la interacción del usuario con servicios reales.
Robar la sesión puede ser mejor que robar la contraseña
Durante años hemos insistido, correctamente, en utilizar contraseñas únicas y activar la autenticación de dos factores. Sin embargo, existe otro activo extremadamente valioso dentro del navegador: la sesión ya autenticada.
Cuando iniciamos sesión en una página, el servidor suele entregar al navegador una cookie o un token que demuestra que ya hemos superado el proceso de autenticación. Mientras ese token siga siendo válido, el navegador puede continuar accediendo al servicio sin pedirnos la contraseña y, en muchos casos, sin solicitar nuevamente el segundo factor.
KREMLIN está diseñado precisamente para acceder a este tipo de información. Elastic comprobó que puede recopilar bases de datos de credenciales de Chrome, cookies y otras partes del perfil, además de obtener las claves necesarias para descifrar determinados datos protegidos por OSCrypt. La extensión también puede extraer cookies, sessionStorage y localStorage directamente desde las páginas abiertas.
Esto explica por qué el robo de sesiones se ha convertido en una técnica tan importante. Si un atacante consigue reutilizar una sesión válida, puede existir un escenario en el que no necesite conocer la contraseña ni superar otra vez el segundo factor de autenticación. El 2FA sigue siendo imprescindible, pero protege una fase diferente del proceso.
Ethereum utilizado como infraestructura de malware
KREMLIN incorpora además una técnica especialmente interesante para dificultar su desactivación. Parte de su infraestructura de mando y control utiliza smart contracts de Ethereum como dead-drop resolvers, es decir, como puntos públicos donde el malware puede consultar información necesaria para localizar nuevos servidores o componentes.
La blockchain no contiene necesariamente el malware completo. Lo que almacena es información que permite a los equipos infectados saber dónde deben conectarse o desde dónde deben descargar determinadas piezas de la cadena de infección. El malware consulta el contrato inteligente, obtiene las direcciones actualizadas y continúa su ejecución.
Para los atacantes esto tiene una ventaja evidente. Un dominio convencional puede bloquearse, retirarse o incautarse, y un servidor puede desaparecer. La información almacenada en una blockchain pública resulta mucho más difícil de eliminar, por lo que puede utilizarse como una especie de tablón de anuncios resistente a la censura donde el malware consulta nuevas instrucciones.
Es un buen ejemplo de algo que vemos cada vez con más frecuencia en ciberseguridad: tecnologías perfectamente legítimas pueden convertirse también en piezas útiles dentro de una infraestructura ofensiva.
Mucho más que una simple extensión
Reducir KREMLIN a una extensión de Chrome sería simplificar demasiado el problema. Elastic describe un ecosistema compuesto por loaders JavaScript, instaladores escritos en C++, técnicas de evasión de máquinas virtuales, persistencia mediante tareas programadas, sideloading de DLL y extensiones maliciosas.
En algunas campañas también se han utilizado herramientas de acceso remoto como PULSAR y posteriormente REMCOS. La extensión es solo el componente que actúa dentro del navegador, mientras que debajo existe malware ejecutándose en Windows con suficiente control sobre el sistema como para modificar los perfiles de Chrome y Edge desde fuera.
Esto también cambia la forma correcta de responder ante una posible infección. Eliminar manualmente la extensión no garantiza que KREMLIN haya desaparecido, porque si el componente que la instaló continúa activo en Windows, puede volver a modificar el perfil o mantener otras capacidades maliciosas.
¿Es un fallo de seguridad de Chrome?
No exactamente. Existe la tentación de resumir esta historia diciendo que un malware ha roto la seguridad de Chrome, pero eso no describe del todo lo que está ocurriendo.
KREMLIN necesita primero conseguir ejecución de código en el ordenador de la víctima. Es decir, el sistema operativo ya ha sido comprometido antes de que el malware manipule el navegador. A partir de ese acceso local, los atacantes han estudiado cómo Chromium protege sus preferencias y han desarrollado un sistema capaz de reconstruir correctamente las comprobaciones de integridad necesarias.
Eso no significa que el problema sea irrelevante para Chrome. Al contrario, demuestra los límites de cualquier mecanismo de protección cuando el entorno sobre el que se ejecuta ya está bajo control del atacante. Un navegador puede proteger sus archivos frente a modificaciones normales, pero resulta mucho más complicado defenderlos si el propio sistema operativo está comprometido.
La lección es incómoda pero importante: el navegador no puede considerarse una isla segura dentro de un sistema operativo controlado por un atacante.
¿Cómo saber si podemos estar infectados?
No existe una única señal inequívoca, pero la aparición de extensiones desconocidas, cambios inesperados en el modo desarrollador o configuraciones de Chrome que nadie recuerda haber modificado deberían levantar sospechas. La muestra estudiada por Elastic se hacía pasar por AVSync, aunque no hay ninguna garantía de que futuras variantes vayan a conservar el mismo nombre.
También conviene prestar especial atención si recientemente se ha ejecutado un supuesto recibo, factura o documento bancario distribuido como .js, .lnk u otro archivo ejecutable en lugar de un documento convencional. Este tipo de engaño sigue funcionando precisamente porque muchos usuarios continúan identificando los archivos por su icono o por el nombre visible, sin comprobar su extensión real.
Ante una sospecha seria, lo recomendable es tratar el ordenador como potencialmente comprometido. Conviene desconectarlo de servicios sensibles, analizar Windows con herramientas de seguridad actualizadas y cambiar las credenciales importantes desde otro dispositivo limpio. En cuentas especialmente sensibles, como correo electrónico, banca, almacenamiento en la nube, redes sociales o servicios empresariales, también es aconsejable cerrar o revocar las sesiones activas.
Cambiar únicamente la contraseña puede no ser suficiente si una sesión robada continúa siendo válida.
La primera defensa sigue siendo sorprendentemente sencilla
Después de hablar de smart contracts, HMAC, OSCrypt, WebSockets, inyección de HTML y claves criptográficas, resulta fácil perder de vista algo bastante irónico: toda esta sofisticada arquitectura necesita inicialmente que alguien ejecute un archivo.
Una factura no necesita ejecutar JavaScript. Un banco no debería enviarnos un recibo que requiera ejecutar un .js, y una empresa no debería necesitar que abramos un .lnk, .cmd, .bat o .exe para consultar un documento.
Windows lleva décadas facilitando que determinadas extensiones de archivo queden ocultas al usuario, y los atacantes llevan prácticamente el mismo tiempo aprovechándolo. Mostrar siempre las extensiones completas de los archivos continúa siendo una de esas pequeñas configuraciones que pueden evitar problemas enormes.
El verdadero valor de KREMLIN
No parece que KREMLIN esté atacando de forma masiva a usuarios españoles en estos momentos. Los datos publicados por Elastic sitúan prácticamente toda la actividad observada en Brasil, por lo que sería incorrecto presentar esta campaña como una amenaza dirigida actualmente contra usuarios de banca española.
Sin embargo, centrarse exclusivamente en quién está siendo atacado ahora sería perder la parte más interesante. KREMLIN representa una evolución bastante lógica del malware moderno: durante años protegimos el sistema operativo, después protegimos las contraseñas y posteriormente añadimos autenticación de dos factores. Ahora los atacantes están interesados en un lugar donde todas esas medidas ya han sido superadas: el navegador autenticado.
Nuestro navegador se ha convertido en una especie de sistema operativo dentro del sistema operativo. Contiene correo, banca, almacenamiento, aplicaciones empresariales, redes sociales, contraseñas, sesiones y buena parte de nuestra identidad digital. Una extensión capaz de controlar silenciosamente ese entorno tiene, por tanto, un valor enorme.
KREMLIN no necesita sustituir la página de nuestro banco por una copia falsa. Puede esperar dentro del navegador mientras nosotros mismos visitamos la página verdadera.
Durante años nos enseñaron a preguntarnos si la página que estamos viendo es realmente la página de nuestro banco. Ahora empieza a ser necesario hacerse también otra pregunta:
¿podemos confiar en el navegador desde el que la estamos viendo?