Fallos del tipo CWE-694

11 resultados

Uso de múltiplos recursos com identificador duplicado

Ocorre quando uma aplicação cria ou gerencia múltiplos recursos (arquivos, conexões, objetos em memória) usando o mesmo identificador, sem garantir que cada um seja único. Isso leva a conflitos: o código pode liberar, modificar ou acessar o recurso errado, causando corrupção de dados, vazamento de memória ou execução não intencional de lógica.

Ejemplo

Um servidor cria IDs de sessão sequenciais (1, 2, 3...) sem incluir aleatoriedade ou timestamp. Dois usuários recebem o mesmo ID de sessão por coincidência de timing, e um consegue acessar dados do outro. Ou um gerenciador de arquivo temporário reutiliza nomes sem verificar se o arquivo anterior foi realmente deletado.

Cómo mitigar

Use identificadores únicos garantidos: UUIDs, hashes criptográficos ou contadores sincronizados com mutex. Valide que o identificador não existe antes de alocar o recurso e implemente cleanup explícito antes de reutilizar IDs. Em linguagens com gestão automática, use estruturas que garantem unicidade (Sets, Maps com chave garantida).