Falhas do tipo CWE-413
21 resultadosBloqueio inadequado de recursos
Ocorre quando código acessa ou modifica um recurso compartilhado (arquivo, memória, banco de dados) sem garantir que apenas uma thread ou processo o faça por vez. Isso causa condições de corrida, corrupção de dados ou comportamento imprevisível.
Exemplo
Uma aplicação web atualiza o saldo de uma conta sem usar locks: duas requisições simultâneas leem o mesmo saldo, decrementam valores diferentes e gravam de volta, perdendo uma das transações ou gerando inconsistência financeira.
Como mitigar
Use mecanismos de sincronização apropriados: mutexes, semáforos, transações com isolamento no banco de dados ou operações atômicas. Revise seções críticas do código que acessem estado compartilhado e garanta exclusão mútua.