PT-2021-18322 · Google · Tensorflow
CVSS v3.1
7.8
Alta
| Vetor | AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Versões do TensorFlow anteriores à 2.5.0
Versões do TensorFlow 2.4.2 e anteriores
Versões do TensorFlow 2.3.3 e anteriores
Versões do TensorFlow 2.2.3 e anteriores
Versões do TensorFlow 2.1.4 e anteriores
Descrição
A implementação de
tf.raw ops.MaxPoolGradWithArgmax pode causar leituras fora dos limites dos dados alocados na pilha se um invasor fornecer entradas especialmente criadas. O problema surge porque a implementação assume que o último elemento da entrada boxes é 4, conforme exigido pela operação, mas isso não é verificado. Invasores que passam valores menores que 4 podem gravar fora dos limites dos objetos alocados na pilha e causar corrupção de memória. Se a última dimensão em boxes for menor que 4, acessos semelhantes a tboxes(b, bb, 3) acessarão dados fora dos limites. Além disso, durante a execução do código, também há gravações nesses índices.Recomendações
Para versões do TensorFlow anteriores à 2.5.0, atualize para o TensorFlow 2.5.0 ou posterior.
Para versões do TensorFlow 2.4.2 e anteriores, atualize para o TensorFlow 2.4.2 ou posterior.
Para versões do TensorFlow 2.3.3 e anteriores, atualize para o TensorFlow 2.3.3 ou posterior.
Para versões do TensorFlow 2.2.3 e anteriores, atualize para o TensorFlow 2.2.3 ou posterior.
Para versões do TensorFlow 2.1.4 e anteriores, atualize para o TensorFlow 2.1.4 ou posterior.
Como solução alternativa temporária, considere restringir o uso da função
tf.raw ops.DrawBoundingBoxesV2 até que um patch esteja disponível.Evite usar a entrada
boxes com uma última dimensão menor queExploit
Correção
Memory Corruption
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Tensorflow