Guía de tecnologías

Cómo protegerte del clickjacking y del doble clickjacking

9 min read Seguridad web Actualizado 19 Sep 2025
Protégete del clickjacking y doble clickjacking
Protégete del clickjacking y doble clickjacking

Un letrero que dice click and collect, que ilustra el concepto de clickjacking.

¿Qué es el clickjacking?

El clickjacking, también llamado ataque de redirección de la interfaz de usuario (UI redress), ocurre cuando un atacante superpone capas invisibles, transparentes o desplazadas sobre una página legítima para que el usuario haga clic en algo distinto a lo que ve. En la práctica, parece que haces clic en un botón inocente, pero en realidad activas una acción que entrega credenciales, instala software o realiza operaciones en tu cuenta.

En un ejemplo sencillo, un enlace para descargar un ebook puede estar cubierto por una capa invisible que en realidad inicia la descarga de malware o un keylogger. Técnicamente, el atacante utiliza iframes, estilos CSS, eventos de clic manipulados o scripts que reposicionan controlos para capturar la interacción del usuario.

Código HTML de una página web con elementos superpuestos.

Conceptos clave en una línea:

  • iframe: un elemento HTML que carga otra página dentro de la actual.
  • Overlay (superposición): una capa (visibilidad 0 o transparente) que intercepta clics.
  • Likejacking: variante que hace que el usuario «likee» o comparta contenido sin querer.

Vectores comunes de ataque

El clickjacking puede presentarse por varias técnicas:

  • Superposiciones transparentes u ocultas.
  • Drop de eventos de clic (parece que el clic no funciona, pero en realidad disparas el enlace oculto).
  • Reposicionamiento de controles para alinear botones maliciosos.
  • Ventanas emergentes manipuladas que se mueven con el scroll.
  • Recortes selectivos que atacan sólo controles concretos en la página.

Variantes conocidas incluyen likejacking, cookiejacking, filejacking y cursorjacking. No todos son igual de críticos, pero cualquiera puede filtrar datos o comprometer una sesión.

Por qué el clickjacking evade antivirus y, a veces, defensas del navegador

A diferencia del malware clásico que descarga un binario o modifica archivos locales, el clickjacking se ejecuta en la interfaz del sitio web legítimo. Por eso:

  • Muchos antivirus se fijan en archivos, firmas y comportamiento del sistema, no en eventos UI legítimos dentro del navegador.
  • Si la acción no descarga nada inmediatamente, los motores heurísticos no detectan un fichero malicioso.
  • Los navegadores implementan defensas, pero los atacantes evolucionan: la técnica del doble clickjacking inserta la superposición justo antes de una segunda confirmación, eludiendo protecciones simples basadas en iframes.

El doble clickjacking funciona así: el atacante muestra primero una acción aparentemente inocua que requiere confirmación (captcha, doble clic, confirmar compra). Antes de la segunda interacción, inyecta la capa maliciosa; cuando confirmas, se activa la acción comprometida (instalar plugin, aceptar permisos, etc.). Esto también afecta a móviles mediante prompts de doble toque.

Robot con casilla marcando

Importante: la ausencia de descarga o el uso de un sitio legítimo no implica seguridad. La integridad visual puede ser manipulada sin alterar la URL visible.

Cómo protegerte como usuario

Acciones inmediatas y comprobables para usuarios finales:

  1. Mantén el navegador y las extensiones actualizadas. Muchas mitigaciones se entregan en parches de navegador.
  2. Mantén plugins y extensiones actualizadas y elimina los que no uses. Plugins mal mantenidos pueden modificar el DOM y facilitar overlays.
  3. Evita pop-ups y anuncios que prometen premios o descargas instantáneas. Si algo parece demasiado atractivo, es sospechoso.
  4. Si una página pide una confirmación donde antes no la pedía, sal y revisa primero.
  5. No hagas doble clic ni doble toque cuando no estés seguro de la acción que verás después.
  6. Si un enlace no navega o no abre destino visible, no lo repitas. Primero revisa bloqueadores de anuncios o extensiones que podrían bloquear una ventana emergente legítima.
  7. Usa herramientas de comprobación de URLs antes de interactuar o descargar: VirusTotal, urlscan.io, Google Transparency Report y Hybrid Analysis.
  8. Revisa la barra de direcciones: comprueba errores tipográficos o domains parecidos (typosquatting). Un carácter mal escrito puede indicar un sitio falso.

Lista rápida de verificación para usuarios (versión imprimible):

  • Navegador actualizado
  • Extensiones revisadas
  • No clics en pop-ups sospechosos
  • URL verificada antes de introducir credenciales
  • Escaneo de enlaces con una herramienta externa

Protección que pueden implementar los responsables de sitios y desarrolladores

Si administras un sitio o eres desarrollador frontend, varias medidas reducen drásticamente la superficie de ataque:

  • Cabeceras HTTP estrictas:
    • X-Frame-Options: DENY o SAMEORIGIN (evita que la página sea cargada en un iframe de origen no deseado).
    • Content-Security-Policy: frame-ancestors ‘none’ o especificar orígenes explícitos.
  • Atributos HTML:
    • iframe sandbox con restricciones (sandbox=”allow-scripts” solo si es necesario y con controles adicionales).
  • Evitar confiar en confirmaciones visuales sencillas. Aplicar pasos de verificación del lado servidor cuando se ejecutan acciones críticas.
  • Revisar y auditar plugins de terceros: desconfía de plugins con permisos amplios o poco mantenidos.
  • Implementar SameSite en cookies y asegurar que las acciones sensibles requieran tokens CSRF rotativos.

Mini-metodología para desplegar defensas en un sitio nuevo:

  1. Inventario: lista todas las páginas que aceptan interacciones peligrosas (transacciones, cambios de cuenta, descargas).
  2. Políticas: definir CSP y X-Frame-Options por sitio y por ruta si aplica.
  3. Pruebas: emular iframes externos y overlays en entorno de staging para comprobar que no se puede interactuar con acciones críticas.
  4. Monitorización: registrar eventos inusuales de confirmación duplicada o picos de activación de acciones.
  5. Actualización: revisar dependencias y actualizar temporalmente medidas si se detecta una técnica nueva (por ejemplo, doble clickjacking).

Cómo analizar y probar una posible vulnerabilidad de clickjacking

Pasos para revisar manualmente en un entorno de pruebas o en producción con permiso:

  1. Inspecciona el DOM con las herramientas de desarrollo: busca iframes, elementos con opacidad 0, z-index alto y listeners de clic.
  2. Forzar selectores: desactiva estilos CSS sospechosos para ver si aparecen capas ocultas.
  3. Simula un overlay: intenta insertar un iframe desde otro origen para ver si el sitio lo permite.
  4. Revisa cabeceras HTTP de respuestas para X-Frame-Options y Content-Security-Policy.
  5. Prueba acciones críticas con scripts automatizados para comprobar que requieren tokens o validaciones del servidor.

Criterios de aceptación básicos para desarrollo:

  • El sitio niega carga en iframe desde orígenes no autorizados.
  • Las acciones críticas requieren validación server-side adicional (token, recaptcha verificado server-side, etc.).
  • No existen elementos con pointer-events activados que cubran controles legítimos.

Playbook de respuesta ante indicios de clickjacking (para administradores)

  1. Aislar la página afectada: servir una versión temporal con confirmaciones adicionales o modo mantenimiento.
  2. Identificar cambios recientes: revisar despliegues, plugins/temas instalados y modificaciones del frontend.
  3. Auditoría de logs: buscar patrones de inserción de iframes o solicitudes anómalas.
  4. Remediación: quitar o deshabilitar el plugin o script malicioso; restaurar archivos desde copia segura si es necesario.
  5. Rotación de credenciales sensibles si hay indicios de compromiso de cuentas.
  6. Notificar a usuarios si hay riesgo de exposición de datos o acciones no autorizadas según normativa aplicable.
  7. Implementar medidas preventivas a medio plazo: aumentar restricciones CSP, revisar dependencias y añadir monitoreo.

Nota: ante cualquier duda legal o riesgo de fuga de datos personales, consulta el departamento legal o de cumplimiento de tu organización.

Herramientas recomendadas y comprobaciones externas

  • VirusTotal: útil para comprobar enlaces de descarga.
  • urlscan.io: analiza la página y muestra iframes, scripts y recursos externos.
  • Google Transparency Report: reputación del sitio.
  • Hybrid Analysis: análisis de muestras y enlaces sospechosos.

Algunas suites antivirus incluyen extensiones de navegador que advierten sobre páginas con mala reputación; no dependas únicamente de ello.

Captura de pantalla de VirusTotal mostrando análisis de URL.

Decisión rápida: ¿debo hacer clic o no? (diagrama)

flowchart TD
  A[Veo un popup o confirmación inesperada] --> B{¿La URL coincide con el dominio que esperaba?}
  B -- No --> C[No hacer clic; cerrar pestaña; escanear URL]
  B -- Sí --> D{¿La acción requiere descarga o permisos?}
  D -- Sí --> E[Escanear enlace con VirusTotal o urlscan.io antes de interactuar]
  D -- No --> F{¿La página mostró confirmaciones anteriormente?}
  F -- No --> G[No confirmar; comprobar plugins y extensiones]
  F -- Sí --> H[Si persiste, evitar segundo clic y revisar en modo incógnito]
  E --> I[Si análisis OK, proceder con cautela; si sospechoso, no clicar]
  C --> I
  G --> I
  H --> I
  I --> J[Si hay indicios de compromiso, cambiar contraseñas y reportar]

Casos en los que las defensas fallan o no aplican

  • Sitios que requieren incrustación legítima por terceros (widgets) y no controlan frame-ancestors con cuidado.
  • Usuarios con extensiones maliciosas ya instaladas en su navegador.
  • Técnicas nuevas que manipulan eventos sin usar iframes clásicos; por ejemplo, modificaciones dinámicas del DOM justo antes de la interacción.

Si dependes de servicios de terceros integrados en tu sitio (SDKs, widgets), audítalos y limita el uso de iframes de terceros.

Pruebas y criterios de aceptación (ejemplos)

  • Prueba: cargar la página en un iframe desde un dominio externo. Resultado esperado: el iframe no debe permitir interacción con controles sensibles.
  • Prueba: desactivar CSS sospechoso. Resultado esperado: no aparecen elementos invisibles que intercepten clics.
  • Prueba: simulación de doble confirmación. Resultado esperado: la segunda confirmación debe validarse server-side antes de ejecutar la acción.

Glosario rápido (una línea cada término)

  • Clickjacking: técnica que usa superposiciones para que el usuario haga clic en algo distinto a lo visible.
  • Likejacking: clickjacking que obliga a dar like o compartir sin consentimiento.
  • iframe: elemento HTML que embeber otra página dentro de la actual.
  • CSP (Content-Security-Policy): cabecera que dicta orígenes permitidos para recursos y frames.
  • X-Frame-Options: cabecera antigua que previene carga en iframes.

Notas de seguridad y privacidad (GDPR)

Si el clickjacking deriva en acceso a datos personales, podría tratarse de una violación de seguridad según la normativa GDPR u otras leyes locales. En tal caso, sigue los requisitos de notificación de incidencias, registra las acciones y consulta asesoría legal para los plazos y comunicaciones obligatorias.

Resumen y recomendaciones finales

  • Mantén navegadores y extensiones actualizados. Las actualizaciones corrigen vectores conocidos.
  • Evita pop-ups y no repitas clics en enlaces que no abren destino.
  • Usa herramientas externas para escanear páginas o enlaces sospechosos.
  • Como administrador, aplica X-Frame-Options y CSP frame-ancestors; audita dependencias y plugins.
  • Ten un plan de respuesta: aislar, auditar, remediar y notificar.

Puntos clave:

  • El clickjacking explota la interfaz, no siempre descarga malware detectable por antivirus.
  • El doble clickjacking añade una confirmación que puede eludir controles básicos.
  • La defensa más sólida combina buenas cabeceras HTTP, validación server-side y concienciación del usuario.

Image credit: Unsplash. All screenshots by Crystal Crowder.

Autor
Edición

Materiales similares

Fondos distintos por pantalla en Android
Android Personalización

Fondos distintos por pantalla en Android

Contadores de rendimiento para Apache Tomcat
Monitorización

Contadores de rendimiento para Apache Tomcat

Protégete del clickjacking y doble clickjacking
Seguridad web

Protégete del clickjacking y doble clickjacking

Fondos distintos por pantalla en Android
Android

Fondos distintos por pantalla en Android

Eliminar tus datos de data brokers
Privacidad

Eliminar tus datos de data brokers

Fondo distinto por cada pantalla en Android
Android

Fondo distinto por cada pantalla en Android