Weaknesses of type CWE-31
11 resultsTraversal de diretórios com notação de caminho relativo
Fraqueza que permite um atacante navegar para fora do diretório intendido usando sequências como `..\` ou `../` no caminho de arquivo. O aplicativo não valida adequadamente entradas de caminho, permitindo acesso a arquivos fora do escopo autorizado. É um caso específico de Path Traversal, explorado historicamente em sistemas Windows com a notação de barra invertida.
Um sistema de upload de documentos aceita o parâmetro `filename=relatorios\..\..\windows\system32\config\sam`, permitindo que o atacante acesse arquivos críticos do SO em vez do diretório seguro de uploads. Sem validação, o caminho é processado literalmente.
Implemente whitelist de caracteres permitidos e normalize caminhos usando funções de sistema (`realpath()`, `Path.GetFullPath()`), rejeitando qualquer resultado fora do diretório base autorizado. Teste entradas maliciosas com `../`, `..\` e variações codificadas antes de usar em operações de arquivo.