Pular para o conteúdo
Skillpedia
Diversos48 mil · #3269

hunt-ldap

Ajuda seu agente a encontrar injeções de LDAP e XPath. Útil para proteger bancos de dados e sistemas que usam essas linguagens.

O que ela faz

Esta ferramenta ajuda a encontrar falhas de segurança em sistemas que usam LDAP ou XPath para verificar informações. Ela procura por maneiras de enganar esses sistemas para obter acesso ou informações que não deveria.

Quando usar

  • ✓Ao testar a segurança de um site ou aplicativo.
  • ✓Para verificar se um sistema de login é vulnerável.
  • ✓Ao investigar como os dados são acessados em um sistema.

Exemplo do que pedir para a IA

“Procure por vulnerabilidades de injeção LDAP e XPath no site example.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

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/hunt-ldap/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/hunt-ldap/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta envia dados especialmente criados para os campos de entrada do sistema. Se o sistema responder de forma inesperada ou com erros específicos, isso pode indicar uma falha de segurança que pode ser explorada.

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-ldap

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/hunt-ldap/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.

⚠️ 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.

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:

  1. Peça ao usuário para declarar a URL exata do alvo, IP, conta ou recurso.
  2. Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
  3. Mostre o(s) comando(s) exato(s) e explique seu efeito esperado.
  4. 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.

HUNT-LDAP — Injeção LDAP e Injeção XPath

Nota de base: A injeção LDAP raramente é divulgada com payloads literais em plataformas públicas (a maioria está em relatórios de pentest internos). Esta habilidade é baseada no Guia de Prevenção/Teste de Injeção LDAP da OWASP (WSTG-INPV-06), na Academia de Segurança Web da PortSwigger (injeção LDAP) e na gramática de filtro RFC 4515 — todas referências publicamente verificáveis em vez de IDs inventados do HackerOne. Não cite um relatório que você não possa vincular.

Alvos de Joias da Coroa

Injeção LDAP que contorna a autenticação = Crítico. Exfiltração cega de atributos de credenciais/segredos = Alto. Apenas enumeração de AD = Médio-Alto.

Cadeias de maior valor:

  • Contorno de autenticação LDAP — feche o filtro uid e anexe um OR sempre verdadeiro para que o bind/search retorne a entrada do administrador sem uma senha válida.
  • Exfiltração cega de atributos — extração caractere por caractere de um valor de atributo via um oráculo booleano (sucesso/falha de login, contagem de resultados ou comprimento da resposta).
  • Exfiltração de hash userPassword (apenas não-AD) — em OpenLDAP/389-DS, o atributo userPassword pode conter hashes {SSHA}/{CRYPT} que SÃO legíveis por consulta. Veja o aviso AD vs genérico abaixo.
  • Contorno de autenticação por injeção XPath — ' or '1'='1 contra autenticação baseada em XML.

CRÍTICO — Active Directory vs LDAP genérico

Não confunda os dois. Eles se comportam de maneira muito diferente:

LDAP genérico (OpenLDAP, 389-DS, ApacheDS) Active Directory
Atributo de senha userPassword — pode conter {SSHA}/{MD5}/{CRYPT} e é legível se a ACL permitir unicodePwd — somente gravação, nunca retornado por nenhuma pesquisa
Exfiltração de hash via injeção Possível onde ACLs vazam userPassword Não é possível — não há atributo de hash legível via LDAP
Atributos de enumeração úteis uid, cn, mail, userPassword sAMAccountName, userPrincipalName, mail, memberOf, description (frequentemente contém segredos em texto claro!)

Não diga a um leitor que a injeção LDAP cega produz hashes de senha do AD — ela não produz. unicodePwd é somente gravação. Contra o AD, a vitória é a enumeração (campos sAMAccountName, memberOf, description/info que os administradores usam indevidamente para armazenar senhas) e o contorno de autenticação — não o despejo de hashes. A técnica de exfiltração de hash se aplica apenas a diretórios não-AD que expõem userPassword.


Sinais de Superfície de Ataque

Corporate SSO / intranet login pages (often legacy Java/Spring/PHP)
Windows + IIS + "integrated" directory auth
/api/ldap/*  /api/directory/*  /people  /address-book  /search?dir=
"Find a colleague" / org-chart / employee-search features
XML-backed config or auth → XPath injection candidate
Error strings that confirm an LDAP backend:
  javax.naming.NameNotFoundException
  javax.naming.directory.InvalidSearchFilterException
  LDAP: error code 49 - 80090308  (AD invalid creds / bind failure)
  com.sun.jndi.ldap.*  /  System.DirectoryServices  /  ldap_search():
  "Bad search filter"  /  net.ldap (Go)  /  python-ldap SERVER_DOWN

Gramática de filtro LDAP (RFC 4515) — por que a injeção funciona

Um filtro de login é tipicamente construído por concatenação de strings:

(&(uid=<USERNAME>)(userPassword=<PASSWORD>))

& = AND, | = OR, ! = NOT. Filtros são notação prefixa/polonesa — o operador vem primeiro e cada sub-filtro é entre parênteses. Para injetar, você deve (a) escapar o grupo (uid=...) atual, (b) injetar sua própria lógica e (c) deixar a contagem geral de parênteses equilibrada ou o servidor lançará um erro de sintaxe de filtro em vez de executar.

O conjunto de caracteres especiais — TESTE CADA UM

…

Perguntas frequentes

O que é injeção LDAP?

É um tipo de ataque onde um invasor insere comandos maliciosos em consultas LDAP (um protocolo para acessar serviços de diretório) para enganar o sistema e obter acesso não autorizado ou dados.

O que é injeção XPath?

É um ataque similar, mas usa o XPath (uma linguagem para consultar documentos XML) para explorar vulnerabilidades em sistemas que usam XML para autenticação ou configuração.

Preciso de permissão para usar esta ferramenta?

Sim, é crucial ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso não autorizado é ilegal.

Detalhes

Descrição original do autor

Hunt LDAP Injection and XPath Injection

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3269
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas