Weaknesses of type CWE-27
28 resultsTravessia de diretórios via sequências relativas
É quando a aplicação constrói um caminho de arquivo a partir de entrada do usuário sem validar ou neutralizar sequências como '../' e './', permitindo acessar arquivos fora do diretório intencional. Um atacante usa essas sequências para 'subir' na árvore de diretórios e ler ou modificar arquivos sensíveis do sistema.
Uma aplicação web permite download de arquivos passando o nome via URL: GET /download?file=documento.pdf. Se não validar, o atacante pode fazer GET /download?file=../../etc/passwd e recuperar o arquivo de senhas do servidor.
Implemente whitelist de nomes de arquivo permitidos, ou normalize o caminho fornecido (remova '../' e './') e valide que o resultado final fica dentro do diretório base. Use APIs de manipulação de paths seguras (como Path.resolve() no Node.js seguido de verificação de limite) em vez de concatenação de strings.