Falhas do tipo CWE-675
2 resultadosMúltiplas operações em recurso em contexto de operação única
A fraqueza ocorre quando o código assume que uma operação atômica ou isolada sobre um recurso (arquivo, conexão, memória) será executada uma única vez, mas na prática múltiplas operações podem ocorrer simultaneamente ou em sequência rápida. Isso causa inconsistência de estado, race conditions ou vazamento de recursos quando o código não está preparado para esse cenário.
Um arquivo é aberto para leitura em uma função que presume ser chamada uma única vez por ciclo, mas se threads concorrentes a chamam simultaneamente, múltiplos file handles são criados sem sincronização — alguns podem não ser fechados, causando vazamento. Outro caso: código que executa 'deletar arquivo' + 'recriar arquivo' presume atomicidade, mas um segundo processo pode interferir entre as duas operações.
Use locks (mutex/semáforo) para proteger operações que devem ser atômicas, implemente pool de recursos com sincronização adequada, e prefira operações verdadeiramente atômicas do SO quando disponíveis. Valide consistência de estado antes e após operações críticas sobre o recurso.