Pular para o conteúdo
Skillpedia
Segurança48 mil · #3297

hunt-xxe

Ensina seu agente de IA a proteger aplicações contra ataques.

O que ela faz

Esta ferramenta ajuda a encontrar uma falha de segurança chamada XXE em sites e aplicativos. Essa falha pode permitir que um invasor leia arquivos sensíveis do servidor ou acesse sistemas internos.

Quando usar

  • ✓Ao testar a segurança de um site.
  • ✓Ao procurar por vulnerabilidades em aplicativos que processam arquivos XML.
  • ✓Em avaliações de segurança autorizadas.

Exemplo do que pedir para a IA

“Procure por vulnerabilidades XXE 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

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/hunt-xxe/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-xxe/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 o site, esperando que ele reaja de forma inesperada se a falha XXE existir. Ela verifica se o site revela informações ou tenta se conectar a outros sistemas.

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

Ou baixe só o arquivo:

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

Porta de confirmação obrigatória 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 o URL exato, IP, conta ou recurso alvo.
  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.

Alvos Principais (Crown Jewel Targets)

XXE é uma vulnerabilidade de gravidade crítica que consistentemente paga no topo das escalas de bug bounty (US$ 5.000–US$ 30.000+) devido ao seu caminho direto para a exfiltração de dados sensíveis e SSRF. Alvos de maior valor:

  • Plataformas empresariais de grande porte com integrações de backend ricas em XML (finanças, logística, APIs de transporte por aplicativo)
  • Domínios com capacidade de leitura de arquivos — /etc/passwd, /etc/shadow, arquivos de configuração internos, endpoints de metadados da AWS
  • Subdomínios compartilhando infraestrutura de backend — um endpoint XXE pode fazer pivô para serviços internos em dezenas de domínios (como demonstrado por mais de 26 domínios da Uber através de um único ponto de entrada)
  • Gateways de API que aceitam tipos de conteúdo XML — especialmente APIs REST que aceitam silenciosamente Content-Type: application/xml
  • Recursos de upload de arquivos — parsers SVG, DOCX, XLSX, PDF, PPTX no lado do servidor
  • Endpoints SAML/SSO — asserções SAML são baseadas em XML e frequentemente vulneráveis
  • Serviços de processamento de Office/documentos — qualquer recurso que converte ou processa documentos fornecidos pelo usuário

Sinais da Superfície de Ataque

Padrões de URL

/api/v*/xml
/upload
/import
/parse
/convert
/saml/acs
/sso/saml
/feed
/rss
/sitemap
/webdav
/soap/*
/wsdl
/service.asmx
/xmlrpc
/graphql (multipart with XML)

Cabeçalhos de Requisição/Resposta

Content-Type: application/xml
Content-Type: text/xml
Content-Type: application/soap+xml
Content-Type: multipart/form-data  ← check file upload fields
Accept: application/xml
X-Content-Type-Options: (absent — good sign of loose parsing)

Padrões de JavaScript (reconhecimento de código-fonte)

// Look for in JS bundles
XMLSerializer
DOMParser
parseFromString
new ActiveXObject("Microsoft.XMLDOM")
$.parseXML(
xml2js
libxmljs
lxml

Sinais de Pilha Tecnológica (Tech Stack)

  • Pilhas Java: Spring, Struts, JAX-WS — parsers XML padrão (SAX, DOM) são vulneráveis a XXE sem hardening explícito
  • PHP: simplexml_load_string(), DOMDocument::loadXML() — vulnerável por padrão antes do PHP 8
  • Python: lxml, xml.etree (seguro por padrão), xml.sax (inseguro)
  • Ruby: Nokogiri versões mais antigas, REXML
  • Node.js: xml2js, libxmljs, fast-xml-parser (versões mais antigas)
  • Serviços WSDL/SOAP: Sempre teste — parsing XML legado virtualmente garantido
  • Parsers de arquivos: Apache POI (Java), python-docx, integrações com LibreOffice

Metodologia de Caça Passo a Passo

  1. Mapeie todos os pontos de entrada XML — Use o scanner passivo do Burp Suite para sinalizar todas as requisições/respostas com tipos de conteúdo XML. Intercepte também endpoints JSON e troque manualmente Content-Type por application/xml com um corpo XML equivalente.

  2. Identifique recursos de upload de arquivos — Faça upload de SVG, DOCX, XLSX e observe se o servidor processa/renderiza o conteúdo. Estes são frequentemente XML internamente.

  3. Tente XXE inline (leitura de arquivo clássica) — Substitua o corpo XML por um payload básico de teste de entidade visando /etc/passwd ou C:\Windows\win.ini. Observe se o valor é refletido na resposta.

  4. Se não houver reflexão, faça pivô para Blind OOB — Configure um listener OOB (Burp Collaborator, interactsh ou um servidor netcat auto-hospedado). Injete uma entidade externa apontando para seu URL de callback. Confirme o hit de DNS/HTTP para validar que o parser está fazendo conexões de saída.

  5. Escalone Blind OOB para exfiltração de arquivos — Use um payload de dois estágios: a primeira entidade carrega o arquivo local, a segunda entidade o envia via OOB através de um parâmetro HTTP ou exfiltração de DNS.

  6. Teste o pivô SSRF — Aponte a entidade externa para endereços da rede interna (http://169.254.169.254/latest/meta-data/, http://10.0.0.1/, http://localhost:8080/admin). Procure por diferenças no tempo de resposta ou mensagens de erro.

…

Perguntas frequentes

O que é XXE?

XXE significa 'XML External Entity' (Entidade Externa XML). É um tipo de falha de segurança que ocorre quando um aplicativo processa dados XML de forma insegura.

Quais são os riscos de uma falha XXE?

Um invasor pode ler arquivos confidenciais do servidor, como senhas ou configurações, ou usar o servidor para atacar outros sistemas internos (SSRF).

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.

Detalhes

Descrição original do autor

Hunting skill for xxe vulnerabilities.

repo: sickn33/agentic-awesome-skills

Popularidade

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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas