Clickjacking
O que é Clickjacking?
ClickjackingAtaque de "UI redress" que engana o utilizador para clicar em algo diferente do que percebe, sobrepondo ou ocultando uma página-alvo dentro de uma página controlada pelo atacante.
O clickjacking incorpora uma página sensível (por exemplo, definições de conta, consentimento OAuth, confirmação de pagamento) dentro de um iframe num site malicioso e disfarça-a visualmente — frequentemente através de transparência, sobreposições CSS cuidadas ou posicionamento estratégico sob botões-isca. O utilizador julga estar a interagir com a página visível, enquanto os seus cliques, toques ou arrastes são, na verdade, entregues ao frame oculto, executando ações na sua sessão autenticada.
O termo foi cunhado em 2008 por Jeremiah Grossman e Robert Hansen, que demonstraram o enquadramento (framing) do gestor de definições do Adobe Flash para ativar silenciosamente a webcam e o microfone de uma vítima. A defesa que surgiu, o cabeçalho X-Frame-Options, foi padronizada como RFC 7034 (2013) e desde então foi substituída pela diretiva frame-ancestors do Content-Security-Policy, que é mais granular e suporta múltiplas origens permitidas. As variantes continuam a evoluir: cursorjacking, roubo de dados por drag-and-drop e likejacking. No final de 2024, o investigador Paulos Yibelo publicou o "DoubleClickjacking", que explora o intervalo entre os dois eventos de um duplo-clique para trocar a página subjacente após o primeiro clique, contornando X-Frame-Options, frame-ancestors e cookies SameSite, porque nenhum frame cross-site está de facto presente no momento do clique.
As defesas combinam controlos de framing (frame-ancestors 'self' ou uma allowlist explícita), exigência explícita de gesto do utilizador e de confirmação para ações sensíveis, desativação de botões até um breve atraso após o foco, e cookies SameSite para limitar o estado entre contextos.
flowchart TD A[Vítima visita<br/>página do atacante] --> B[UI-isca:<br/>'Clique para ganhar'] B --> C[Iframe invisível carrega<br/>o site-alvo real] C --> D[Vítima está autenticada<br/>no alvo] B --> E[Sobreposição transparente<br/>alinha botão oculto] E --> F[Vítima clica na isca] F --> G[Clique recai no botão<br/>oculto 'Aprovar'] G --> H[Ação executa na<br/>sessão da vítima]
● Exemplos
- 01
Uma página convida a "clicar para ganhar" com um iframe transparente sobre o botão a apontar para um diálogo de permissões de uma rede social.
- 02
Uma sobreposição ao pixel induz o utilizador a clicar em "Aprovar" num ecrã de consentimento OAuth de uma app maliciosa.
● Perguntas frequentes
O que é Clickjacking?
Ataque de "UI redress" que engana o utilizador para clicar em algo diferente do que percebe, sobrepondo ou ocultando uma página-alvo dentro de uma página controlada pelo atacante. Pertence à categoria Ataques e ameaças da cibersegurança.
O que significa Clickjacking?
Ataque de "UI redress" que engana o utilizador para clicar em algo diferente do que percebe, sobrepondo ou ocultando uma página-alvo dentro de uma página controlada pelo atacante.
Como se defender contra Clickjacking?
As defesas contra Clickjacking costumam combinar controles técnicos e práticas operacionais, conforme detalhado na definição acima.
Quais são outros nomes para Clickjacking?
Nomes alternativos comuns: Ataque de redress de UI.