Falhas do tipo CWE-1282

8 resultados

Dados assumidos como imutáveis armazenados em memória gravável

O código assume que certos dados (como constantes de segurança, chaves, flags críticas) não serão modificados, mas os armazena em memória que pode ser alterada em tempo de execução. Um atacante ou processo comprometido consegue sobrescrever esses dados, mudando o comportamento esperado da aplicação ou contornando controles de segurança.

Exemplo

Um firmware assume que uma flag booleana que determina se o acesso administrativo está ativado é imutável, mas a armazena em RAM comum. Um atacante que consegue injetar código consegue escrever diretamente nesse endereço de memória e ativar privilégios sem autenticação.

Como mitigar

Armazene dados críticos e constantes de segurança em memória somente leitura (ROM, FLASH com proteção de escrita, ou seções read-only do executável). Se for necessário guardar em RAM, aplique técnicas de detecção de modificação (checksums, assinaturas) e valide frequentemente antes de usar esses dados.