Falhas do tipo CWE-1290
1 resultadoDecodificação incorreta de identificadores de segurança
O componente recebe um identificador usado para decidir privilégios, como ID de mestre de barramento, domínio de segurança ou tag de transação, e o interpreta de forma errada. Isso acontece, por exemplo, quando bits são ignorados, a largura do campo é tratada incorretamente ou um valor não previsto cai em um caminho de decodificação indevido. A checagem de acesso então se baseia na identidade errada, o que pode conceder acesso a recursos protegidos.
Em um SoC, um barramento transporta um ID de 4 bits que identifica o mestre; se o decodificador de acesso considera apenas 3 bits, um mestre não confiável com ID 0b1000 pode ser tratado como o mestre confiável 0b000 e alcançar regiões protegidas, como áreas de memória segura ou registradores de configuração. Este exemplo é ilustrativo, pois a fraqueza é genérica e a forma exata depende do design.
Decodifique e valide sempre a largura completa do identificador, negando por padrão (fail closed) qualquer valor não mapeado, e cubra os casos limite com testes de verificação de hardware e análise formal dirigida a controle de acesso.