
Uma ferramenta leve projetada para impedir ataques clickfix usando formatação da área de transferência com verificações de superfície de execução.
Detecção em tempo real de ataques de injeção de área de transferência ClickFix no Windows.
O ClipGuard monitora a atividade da área de transferência e intercepta operações de colagem suspeitas antes que possam ser executadas — visando especificamente a técnica ClickFix, onde páginas de verificação falsas enganam os usuários para colar comandos maliciosos.
Os ataques ClickFix funcionam assim:
O insight principal: quando o JavaScript escreve na área de transferência via navigator.clipboard.writeText(), a área de transferência contém apenas CF_UNICODETEXT — Quando um usuário seleciona e copia manualmente texto de uma página web, o navegador coloca tanto CF_UNICODETEXT quanto CF_HTML na área de transferência. O ClipGuard usa essa diferença de formato como um de seus principais sinais de detecção.
O ClipGuard é executado na bandeja do sistema e combina vários mecanismos de detecção:
Rastreamento de Origem da Área de Transferência — Escuta mensagens WM_CLIPBOARDUPDATE e registra o processo de origem, formatos da área de transferência presentes (CF_HTML vs CF_UNICODETEXT), comprimento do conteúdo e uma prévia do conteúdo para cada alteração na área de transferência.
Detecção de Superfície de Execução — Identifica quando a janela em primeiro plano é uma superfície de execução de comandos: a caixa de diálogo Executar (Win+R), cmd.exe, powershell.exe, pwsh.exe ou Windows Terminal.
Gancho de Teclado (Interceptação de Ctrl+V) — Um gancho de teclado de baixo nível (WH_KEYBOARD_LL) intercepta teclas Ctrl+V. Quando uma colagem é tentada em uma superfície de execução com conteúdo de área de transferência proveniente do navegador, o ClipGuard avalia a ameaça.
Verificação Baseada em Formato — Se o conteúdo da área de transferência veio de um navegador e contém apenas texto (sem CF_HTML), ele é marcado como suspeito — indicando uma provável escrita via JavaScript e não uma cópia iniciada pelo usuário (sem indicador de HTML). A colagem é bloqueada e o usuário vê um alerta com o conteúdo da área de transferência antes de decidir permitir ou bloquear.
Clipboard updated by browser?
-- YES: User pastes (Ctrl+V) into execution surface?
-- YES: Clipboard has CF_UNICODETEXT only (no CF_HTML)?
-- YES: BLOCK — Suspected ClickFix (JS clipboard write)
-- NO: Strict Mode on?
-- YES: WARN — User copy, but going to exec surface
-- NO: ALLOW
Edge, Chrome, Firefox, Brave, Opera, Vivaldi, Chromium, Arc
Pré-requisitos:
Compilar a partir do código-fonte:
git clone https://github.com/CertainlyP/ClipGuard.git
cd ClipGuard
dotnet build -c Release
Ou baixe o binário compilado na página de Releases.
Quando uma colagem suspeita é detectada, o ClipGuard exibe um alerta com a prévia do conteúdo da área de transferência, processo e PID de origem, análise do formato da área de transferência e a opção de bloquear ou permitir a colagem.
Logs são escritos em %APPDATA%\ClipGuard\shield.log
Esta ferramenta é baseada em pesquisa original sobre os mecanismos do ataque ClickFix:
MIT