Análisis de una extensión maliciosa de Chrome que se hace pasar por una barra lateral de YouTube
Se ha descubierto una extensión de Chrome llamada «Youside — YouTube Sidebar» en la Chrome Web Store. No tiene nada que ver con la funcionalidad de YouTube. En lugar de las características prometidas —un reproductor incrustado, gestión de suscripciones y acceso rápido—, implementa un cliente ligero para un backend de terceros, completo con control remoto de la interfaz, recopilación de datos de usuario y monetización oculta.
Arquitectura: Cliente sin lógica
La extensión con ID mmecpiobcdbjkaijljohghhpfgngpjmk ejemplifica la arquitectura típica de software malicioso: lógica local mínima y una fuerte dependencia de un servidor externo. Al iniciarse, genera o recupera un user_id persistente de localStorage, luego consulta la API en https://mines.cloudapi.stream/user_info. La respuesta del servidor dicta completamente el comportamiento de la interfaz de usuario, desde la visibilidad de elementos hasta el contenido de bloques HTML.
Características clave:
- Sin llamadas a la API de YouTube ni al dominio
youtube.com - Sin implementación de la IFrame Player API
- Sin lógica para manejar suscripciones, búsqueda de videos o streaming de video
- Todas las acciones controladas mediante respuestas del servidor externo
Esta configuración permite a los atacantes alterar dinámicamente el comportamiento de la extensión sin necesidad de actualizar su código en la tienda.
Control remoto de la interfaz
El servidor devuelve un objeto JSON con campos como success, is_valid, rating y protxt. El cliente aplica estos datos directamente al DOM sin ninguna validación:
if (result.is_valid) {
proplansID.classList.add('h_');
playBtn.classList.remove('h_');
} else {
playBtn.classList.add('h_');
}
Este enfoque imita las banderas de características, pero carece de protección contra inyecciones. La inserción directa de HTML es especialmente riesgosa:
if (result.protxt) {
proplansID.innerHTML = result.protxt;
}
Dado que el contenido no se filtra ni se sanitiza, el servidor puede inyectar JavaScript arbitrario mediante innerHTML, permitiendo ataques XSS incluso en el contexto aislado de la extensión.
Monetización oculta y seguimiento
Todos los botones con clase .buyBtn se interceptan y redirigen a un dominio externo:
document.querySelectorAll('.buyBtn').forEach(btn => {
btn.setAttribute(
'href',
`https://topup.cloudapi.stream/?user_id=${encodeURIComponent(localStorage.getItem("user_id"))}&type=game`
);
});
Cualquier clic en estos elementos pasa el ID único del usuario mediante parámetro URL. Esto vincula las acciones del usuario a su perfil para monetización o perfilado adicional.
Para un seguimiento fiable, combina:
user_iddelocalStorage(identificador persistente)chrome.runtime.id(ID único de la extensión en el navegador)navigator.language(código de idioma del usuario)
Esta combinación asegura una identificación de alta precisión incluso si cambia la IP o se borran las cookies.
Falta de funcionalidad prometida
A pesar de la descripción en la tienda, la extensión no contiene código relacionado con YouTube:
- Sin llamadas a la YouTube Data API
- Sin reproductor de video incrustado mediante iframe
- Sin manejo de eventos de reproducción
- Sin lógica de listas de reproducción o canales
Su única interacción con YouTube es un redireccionamiento al hacer clic en el botón Reproducir:
playBtn.addEventListener("click", () => {
window.location = "https://youtube.com/";
});
Esto confirma que la extensión es puramente una fachada para una herramienta útil, con su verdadero propósito siendo la recopilación de datos y la monetización de tráfico.
Puntos clave
- La extensión no ofrece las características de YouTube prometidas.
- La interfaz está completamente controlada por un servidor externo mediante APIs no seguras.
- Es posible la inyección arbitraria de HTML, con riesgos potenciales de XSS.
- Seguimiento oculto de usuarios mediante identificadores combinados.
- Todos los enlaces de monetización redirigen a dominios de terceros, pasando
user_id.
— Editorial Team
Aún no hay comentarios.