Weaknesses of type CWE-29
63 resultsTravessia de Diretório via Prefixo '..filename'
Quando uma aplicação constrói caminhos de arquivo concatenando entrada do usuário diretamente, sem validação, um atacante pode usar sequências como '..filename' para escapar do diretório intendido e acessar arquivos fora da árvore autorizada. O perigo está em expor ou modificar arquivos sensíveis do sistema.
Uma função que serve downloads recebe 'file=../../../etc/passwd' como parâmetro. Se o código não validar ou normalizar o caminho antes de abrir o arquivo, o atacante consegue ler arquivos críticos do servidor que não deveriam ser acessíveis publicamente.
Valide e normalize todos os caminhos de arquivo usando funções específicas (ex: `realpath()` em PHP, `Path.GetFullPath()` em C#), implemente listas brancas de nomes permitidos, e confine acessos a um diretório raiz usando chroot ou sandbox. Nunca confie em entrada do usuário para montagem de caminhos.