Ícone do Lab

XXE Exposed

Desafio Atualizado em 21 jun. 2026 Solução (Pro)
XXE XML Security File Disclosure External Entity Web Security Vulnerability Assessment

Inicie a máquina, hackeie o sistema e encontre as flags escondidas para completar este desafio e ganhar XP!

1
Flags
50
XP
69%
Taxa de Sucesso

A injeção XML External Entity (XXE) é uma vulnerabilidade de segurança web que visa aplicações que processam entrada XML. Quando parsers XML são configurados para resolver referências de entidades externas, os atacantes podem explorar essa funcionalidade para ler arquivos arbitrários do servidor, realizar Server-Side Request Forgery (SSRF) e, em alguns casos, obter execução remota de código. O XXE foi reconhecido como uma ameaça crítica no OWASP Top 10 e afeta qualquer aplicação que analise dados XML de fontes não confiáveis.

Como funcionam os ataques XXE

O XML suporta um recurso chamado entidades externas, definidas na Document Type Definition (DTD), que permite que documentos XML referenciem recursos externos. Uma declaração de entidade como <!ENTITY xxe SYSTEM "file:///etc/passwd"> instrui o parser XML a buscar o conteúdo do arquivo especificado e incluí-lo onde quer que a referência de entidade &xxe; apareça no documento. Quando uma aplicação reflete o conteúdo XML analisado de volta ao usuário, o conteúdo do arquivo é divulgado na resposta.

A superfície de ataque do XXE é mais ampla do que muitos desenvolvedores percebem. Qualquer endpoint que aceite entrada XML é potencialmente vulnerável - isso inclui serviços web SOAP, processadores de feeds RSS, manipuladores de upload de documentos (arquivos DOCX, XLSX e SVG são todos baseados em XML), fluxos de autenticação SAML e parsers de arquivos de configuração. Mesmo aplicações que parecem usar JSON podem aceitar XML se o cabeçalho Content-Type for alterado, já que muitos frameworks suportam múltiplos tipos de conteúdo de forma transparente.

Técnicas avançadas de XXE

Quando a aplicação não reflete diretamente o conteúdo XML, os atacantes podem usar técnicas fora de banda (OOB) para exfiltrar dados. Ao definir entidades externas que fazem requisições HTTP para um servidor controlado pelo atacante com o conteúdo dos arquivos codificado na URL, dados sensíveis podem ser extraídos sem nenhuma saída visível na resposta da aplicação. Entidades de parâmetros e técnicas baseadas em erros fornecem canais adicionais de exfiltração quando abordagens padrão falham.

Prevenindo vulnerabilidades XXE

A defesa mais eficaz contra XXE é desabilitar o processamento de entidades externas na configuração do parser XML. Em Java, isso significa configurar recursos como disallow-doctype-decl e external-general-entities para prevenir a resolução de entidades. A maioria das bibliotecas XML modernas usa configurações seguras por padrão, mas código legado e alguns frameworks ainda habilitam recursos perigosos. Validação de entrada, uso de JSON em vez de XML quando possível, e testes de segurança regulares complementam o fortalecimento do parser.

O que você vai aprender

  • Compreender o processamento de entidades externas XML e como os parsers resolvem referências externas
  • Aprender a criar payloads XXE para divulgação de arquivos e ataques SSRF
  • Dominar técnicas de exfiltração de dados fora de banda quando a saída direta não está disponível
  • Reconhecer as várias superfícies de ataque onde XXE pode ocorrer além dos endpoints XML tradicionais
  • Desenvolver habilidades para testar e remediar vulnerabilidades XXE em aplicações web

Pré-requisitos

Basic understanding of XML structure and syntax Familiarity with HTTP and web applications Knowledge of Linux file system paths

Pronto para hackear este lab?

Crie uma conta gratuita e pratique cibersegurança.

Começar - É grátis
Comece Seu Desafio
~1-2 min de configuração
Servidor dedicado
Instância privada
Potência padrão
Novo aqui? Veja o que fazer
1
Clique em "Start Lab" acima Você receberá sua própria máquina com um endereço IP
2
Explore o alvo Abra o IP no seu navegador e procure vulnerabilidades
3
Encontre e envie as flags Flags são textos secretos escondidos no sistema - cole-os abaixo para pontuar

Pronto para hackear este lab?

Crie uma conta gratuita para iniciar seu próprio servidor dedicado, enviar flags e ganhar XP no ranking.

Começar a Hackear Grátis
13.000+ Hackers 100+ Labs & Cursos Grátis
Comece Grátis