hunt-csrf
Ajuda seu agente a detectar vulnerabilidades de CSRF. Protege usuários de ações indesejadas em sites.
O que ela faz
Esta ferramenta ajuda a verificar se um site é vulnerável a um tipo de ataque chamado CSRF. Esse ataque pode fazer com que o site realize ações indesejadas em nome do usuário sem que ele perceba.
Quando usar
- ✓Ao testar a segurança de um site que você tem permissão para analisar.
- ✓Para entender como os ataques CSRF funcionam em um ambiente controlado.
- ✓Ao verificar se um site protege corretamente as ações importantes do usuário.
Exemplo do que pedir para a IA
“Verifique se o site 'exemplo.com' é vulnerável a CSRF na página de alteração de senha.”
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
A ferramenta simula como um atacante poderia enganar o site para realizar ações. Ela verifica se o site confia em informações que podem ser falsificadas, como cabeçalhos de requisição, para executar tarefas sensíveis.
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 sickn33/agentic-awesome-skills --skill hunt-csrfOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/hunt-csrf/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.
⚠️ USO AUTORIZADO APENAS Esta habilidade é apenas para fins educacionais ou avaliações de segurança autorizadas. Você deve ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso indevido desta ferramenta é ilegal e estritamente proibido.
Portão de confirmação obrigatório Antes de executar qualquer comando que sonde, explore, altere, persista, extraia dados ou tente acesso a credenciais contra um alvo:
- Peça ao usuário para declarar o URL, IP, conta ou recurso exato do alvo.
- Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
- Mostre o(s) comando(s) exato(s) e explique seu efeito esperado.
- Aguarde a confirmação explícita na conversa atual.
Sem essa confirmação, permaneça apenas em modo de leitura e forneça orientação defensiva. Prefira um sandbox, VM descartável ou laboratório controlado.
Atalho: um cliente HTTP bruto supera uma página cross-origin real para CSRF de verificação de cabeçalho
Um cliente HTTP bruto (curl, Burp Repeater, qualquer cliente de script) não é um navegador: ele enviará qualquer valor de cabeçalho Origin/Referer que você definir, de qualquer caminho, na mesma conexão que seu cookie autenticado. Muitos aplicativos que afirmam se defender contra CSRF fazem apenas uma verificação de string ingênua no cabeçalho Origin/Referer recebido (ele contém/é igual a algum valor esperado?) em vez de uma aplicação real de mesma origem — você pode satisfazer essa verificação diretamente definindo o cabeçalho, sem a necessidade de entrega cross-site real (hospedagem de uma página HTML, um navegador headless). Isso é mais rápido e confiável do que construir uma página de atacante real para este padrão exato:
POST /profile HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Origin: https://a-domain-the-app-treats-as-trusted-or-attacker-controlled.example
Cookie: <authenticated session>
username=csrf_poc
Se algum texto nomeia uma origem/domínio ESPECÍFICO como a página de atacante "esperada", esse valor literal é frequentemente exatamente o que a verificação do servidor está procurando — tente-o literalmente em Origin (recorra a Referer se Origin sozinho não o alterar). Construa uma página cross-origin real (entrega real por navegador) apenas quando o alvo fizer uma aplicação genuína de mesma origem/baseada em fetch que um cabeçalho falsificado não possa satisfazer.
Prioridade de Teste Autônomo
CSRF só importa em ações que mudam o estado e que um navegador pode ser enganado para fazer cross-site.
Fluxo de teste:
- OBTENHA o endpoint do formulário para estabelecer uma linha de base e verificar quais campos existem (procure por campos ocultos
csrf_token,authenticity_token,_token,csrfmiddlewaretoken). - POST a ação que muda o estado sem nenhum campo de token CSRF. Envie apenas os parâmetros funcionais (email, valor, etc.).
- Use um "simple-request" Content-Type —
application/x-www-form-urlencoded,multipart/form-data, OUtext/plainsão os três tipos de conteúdo "simples" do CORS que um formulário cross-origin pode enviar sem preflight. Um endpoint JSON é resistente a CSRF apenas se o servidor rejeitar esses — se ele também aceitar um corpotext/plain(comum), crie uma cargatext/plainque analise como JSON válido (veja a seção JSON-CSRF-via-text/plain). Não pule um endpoint JSON sob a suposição de queapplication/jsonsozinho é protetor. - Se a ação for bem-sucedida (2xx, sem erro "token inválido") → CSRF é confirmado.
Alvos de alto valor (em ordem de impacto):
- Alteração de e-mail/senha → tomada de conta
- Transferência de dinheiro ou pagamento → fraude financeira
- Ações de administrador (atribuição de função, exclusão de usuário)
- Vinculação de conta social OAuth → ATO persistente
Técnicas de bypass de token quando um token ESTÁ presente:
- Omita o campo de token inteiramente — alguns frameworks apenas validam se o campo existe, não se está ausente
- Envie um valor vazio (
_token=) — alguns validam o formato, não a presença - Copie um token de outra sessão — alguns tokens não estão vinculados à sessão
Escopo: Não teste CSRF em formulários de login (sem sessão existente para explorar), logout (sem impacto real) ou endpoints GET somente leitura.
Alvos Joia da Coroa
CSRF se torna de alto valor quando toca ações que mudam o estado com consequências em nível de conta ou financeiras. Os alvos de maior valor são:
- Vetores de tomada de conta: fluxos OAuth/SSO (manipulação de RelayState), vinculação/desvinculação de conta social (Oculus-Facebook, SocialClub), recursos de importação de amigos que expõem tokens OAuth
- Infraestrutura de autenticação: CSRF de login, fixação de sessão via CSRF, associação forçada de conta
Perguntas frequentes
O que é CSRF?
CSRF (Cross-Site Request Forgery) é um ataque que engana o navegador de um usuário para executar ações indesejadas em um site onde ele já está logado.
Preciso de permissão para usar esta ferramenta?
Sim, você precisa de permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso não autorizado é ilegal.
Quais tipos de ações são mais perigosas se afetadas por CSRF?
Ações que mudam informações importantes, como troca de senha, transferências de dinheiro, ações administrativas ou vinculação de contas.
Detalhes
Descrição original do autor
Hunting skill for csrf vulnerabilities.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #3252
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-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