Este simples visualizador de arquivos usa concatenação direta de strings para construir caminhos de arquivo, criando a oportunidade perfeita para ataques de travessia de diretório. A travessia de diretório é uma vulnerabilidade web fundamental que permite aos atacantes acessar arquivos fora do diretório pretendido, potencialmente expondo arquivos sensíveis do sistema e dados de configuração. A aplicação confia na entrada do usuário sem validação - um erro clássico que abre a porta para exploração do sistema de arquivos!
A travessia de diretório (também conhecida como travessia de caminho) é uma vulnerabilidade fundamental de segurança web que permite aos atacantes acessar arquivos e diretórios fora do escopo pretendido da aplicação. Ao manipular entradas de caminhos de arquivo com sequências de caracteres especiais, atacantes podem ler arquivos sensíveis do sistema, código-fonte da aplicação e arquivos de configuração contendo credenciais. Este tipo de vulnerabilidade tem estado consistentemente presente em avaliações de segurança web por décadas.
Aplicações web frequentemente servem arquivos baseados em entrada fornecida pelo usuário - seja através de parâmetros de URL, campos de formulário ou requisições de API. Quando a aplicação constrói caminhos de arquivo concatenando diretamente a entrada do usuário sem validação adequada, atacantes podem usar sequências ../ (ponto-ponto-barra) para subir na árvore de diretórios e acessar arquivos fora da raiz web. Por exemplo, requisitar ../../etc/passwd tentaria ler o arquivo de senhas do Linux subindo dois diretórios acima do diretório de serviço de arquivos da aplicação.
A travessia de diretório básica usa sequências simples ../, mas a exploração no mundo real frequentemente requer técnicas de bypass. Codificação URL (%2e%2e%2f), codificação URL dupla (%252e%252e%252f) e uso de barras invertidas em sistemas Windows (..\) podem evadir filtros de entrada básicos. Algumas aplicações removem sequências ../ uma vez, o que pode ser contornado com ....// (os caracteres restantes formam ../ após a remoção). Injeção de byte nulo (%00) foi historicamente usada para truncar extensões de arquivo. Entender essas técnicas é essencial para testes de segurança completos.
Vulnerabilidades de travessia de diretório foram descobertas em servidores web, sistemas de gerenciamento de conteúdo, aplicações de compartilhamento de arquivos e plataformas em nuvem. Exploração bem-sucedida pode revelar credenciais de banco de dados, chaves de API, certificados SSL e outros dados sensíveis de configuração. Em casos graves, atacantes combinam travessia de diretório com vulnerabilidades de upload de arquivo para obter execução remota de código. A defesa requer validação adequada de entrada, canonicalização de caminhos de arquivo antes do uso, jails chroot ou conteinerização e o princípio do menor privilégio para acesso ao sistema de arquivos da aplicação.
Crie uma conta gratuita e pratique cibersegurança.
Crie uma conta gratuita para iniciar seu próprio servidor dedicado, enviar flags e ganhar XP no ranking.
Começar a Hackear GrátisLabs que compartilham habilidades semelhantes
Escolha como deseja começar
Entre na sua conta