hunt-session
Faz seu agente procurar por problemas na forma como as sessões de usuário são gerenciadas. É importante para evitar que invasores roubem o acesso de usuários.
O que ela faz
Esta ferramenta ajuda a verificar se as sessões de usuário em sites e aplicativos estão seguras. Ela procura por falhas que podem permitir que um invasor acesse a conta de outra pessoa, mesmo depois que ela faz logout ou troca a senha.
Quando usar
- ✓Ao testar a segurança de um site ou aplicativo.
- ✓Para verificar se o logout realmente encerra a sessão do usuário.
- ✓Para garantir que a troca de senha invalide sessões antigas.
Exemplo do que pedir para a IA
“Verifique a segurança da gestão de sessão no site exemplo.com”
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 ações como login, logout e troca de senha, observando se a sessão do usuário é corretamente invalidada. Ela procura por padrões conhecidos de vulnerabilidades em gerenciamento de sessão.
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-sessionOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/hunt-session/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 destina-se apenas a 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.
Porta de confirmação obrigatória Antes de executar qualquer comando que sonde, explore, altere, persista em, extraia dados de 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.
Prioridade de Teste Autônomo
A ausência de HttpOnly em cookies é detectada automaticamente — concentre seus testes ativos na invalidação do ciclo de vida (maior impacto).
Padrão 1 — Sessão sobrevive ao logout (descoberta de alto valor mais comum):
- Faça login e anote o valor do token/cookie da sessão
- Chame o endpoint de logout (
/logout,POST /api/logout, etc.) - Tente usar o token de sessão ANTIGO para acessar um recurso protegido (
/api/me,/dashboard,/account) - Se 200 com dados do usuário → sessão não invalidada no logout = persistência de ATO
Padrão 2 — Sessão não regenerada no login (fixação de sessão):
- GET qualquer página para receber um token/cookie de sessão pré-autenticação
- POST credenciais válidas para o endpoint de login
- Compare o token de sessão ANTES e DEPOIS do login
- Se o token não foi alterado → vulnerabilidade de fixação de sessão
Padrão 3 — Sessão sobrevive à alteração de senha:
- Login → registre o valor da sessão A
- Altere a senha através do endpoint de configurações da conta
- Reenvie a sessão A em um endpoint protegido
- Se 200 → token não rotacionado na alteração de credenciais = ATO persistente (cadeia crítica quando combinada com XSS/roubo de cookie)
Content-type: Endpoints de login e sessão variam — use application/json para APIs REST, application/x-www-form-urlencoded para formulários web tradicionais. Tente ambos se o primeiro retornar uma resposta inesperada.
Prova: Uma resposta 200 de recurso protegido (com dados do usuário) usando um token de sessão que deveria ter sido invalidado confirma a descoberta.
HUNT-SESSION — Gerenciamento de Sessão
Alvos de Joias da Coroa
Fixação de sessão levando a sequestro de admin = Crítico. Sessão sobrevivendo a alteração de senha = Alto a Crítico (ATO persistente a partir de um cookie roubado que a vítima acreditava ter revogado redefinindo sua senha).
Cadeias de maior valor:
- Fixação de sessão — o servidor aceita um ID de sessão definido pelo cliente e NÃO o regenera no login → o atacante pré-implanta um ID, a vítima autentica, o atacante aproveita a sessão agora autenticada → ATO persistente.
- Nenhuma invalidação no logout — o token antigo ainda funciona após
/logout→ a janela de roubo nunca fecha. - Nenhuma invalidação na alteração de senha / e-mail — uma sessão roubada sobrevive ao "Acho que fui hackeado, vou redefinir" da vítima → ATO persistente. Esta é a classe de bug de sessão com maior pagamento.
- Reutilização de refresh-token sem detecção de rotação — um refresh token vazado gera novos access tokens para sempre; a falta de detecção de reutilização significa que o refresh posterior do usuário legítimo NÃO revoga o branch do atacante.
- ID de sessão previsível / de baixa entropia — IDs sequenciais, derivados de timestamp ou userId → força bruta ou computa sessões de outros usuários.
- JWT como sessão sem
exp/ sem lista de revogação — JWT roubado = acesso permanente; logout é cosmético.
Fundamentação — padrões que moldaram cada fase
Nenhum ID de CVE/relatório inventado abaixo. Estes são os padrões nomeados e documentados publicamente que esta habilidade codifica:
- Fixação de sessão, CSRF de login, sem regeneração na autenticação — OWASP WSTG-SESS-03 / WSTG-SESS-01; o clássico artigo de Mitja Kolšek sobre fixação de sessão ACROS. Variante de maior impacto: fixar a sessão de um usuário SSO/admin.
- CSRF de subdomínio irmão SameSite=Lax alcançando estado de sessão — Argo CD CVE-2024-22424 (cookies Lax enviados em navegações cross-site de nível superior de um subdomínio irmão). Use isso quando um cookie de sessão depende de
SameSite=Laxcomo sua única defesa contra CSRF. - Rotação de refresh-token e detecção automática de reutilização — o modelo Auth0/IETF OAuth-Security-BCP: um refresh token rotacionado, se reutilizado, deve invalidar a família inteira de tokens. Ausência = o bug principal a ser provado.
…
Perguntas frequentes
O que é uma 'sessão'?
É como um crachá temporário que um site te dá depois que você faz login, para que ele saiba quem você é nas próximas vezes que você navegar por ele, sem precisar pedir a senha toda hora.
O que é 'invalidação de sessão'?
É o processo de 'deslogar' ou encerrar a sessão do usuário, garantindo que o crachá temporário não funcione mais.
Por que é importante testar isso?
Se a sessão não for invalidada corretamente, um invasor pode usar um crachá antigo (mesmo depois do logout) para continuar acessando a conta da vítima.
Detalhes
Descrição original do autor
Hunt Session Management vulnerabilities
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #3284
- 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