Falhas do tipo CWE-43

1 resultado

Equivalência de caminho: manipulação de nomes com caracteres especiais

A aplicação não valida corretamente nomes de arquivo que usam caracteres especiais ou padrões equivalentes (como pontos múltiplos, espaços, ou sequências especiais do sistema de arquivos), permitindo que um atacante contorne restrições de acesso ou manipule caminhos para acessar arquivos não autorizados.

Exemplo

Um validador bloqueia acesso a 'config.ini', mas aceita 'config.ini....' (pontos extras) ou 'config.ini ' (com espaço), que o sistema de arquivos interpreta como equivalentes e carrega o arquivo bloqueado.

Como mitigar

Normalize caminhos de arquivo antes de validar (use funções como realpath/Path.resolve), valide contra uma lista branca de nomes permitidos, e implemente controles de acesso no nível do sistema de arquivos. Nunca confie apenas em padrão de nome para segurança.