PT-2021-18301 · Google · Tensorflow
CVSS v3.1
5.5
Média
| Vetor | AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Nome do software vulnerável e versões afetadas
Versões do TensorFlow anteriores à 2.5.0
TensorFlow versão 2.4.2
TensorFlow versão 2.3.3
TensorFlow versão 2.2.3
TensorFlow versão 2.1.4
Descrição
Um invasor pode causar um erro de divisão por zero em tempo de execução e negação de serviço em
tf.raw ops.FractionalAvgPool. Isso ocorre porque a implementação calcula um divisor dividindo dois valores controlados pelo usuário, input size[i] e pooling ratio [i]. Se o valor em input size[i] for menor que pooling ratio [i], a operação de arredondamento para baixo resulta em output size[i] igual a 0. Posteriormente, esses valores calculados são usados como argumentos para GeneratePoolingSequence, onde o primeiro cálculo é uma divisão em uma operação de módulo. Como output length pode ser 0, isso resulta em falha de tempo de execução.Recomendações
Para a versão 2.1.4 do TensorFlow, atualize para a versão 2.1.4 ou posterior após a inclusão da correção.
Para a versão 2.2.3 do TensorFlow, atualize para a versão 2.2.3 ou posterior após a inclusão da correção.
Para a versão 2.3.3 do TensorFlow, atualize para a versão 2.3.3 ou posterior após a inclusão da correção.
Para a versão 2.4.2 do TensorFlow, atualize para a versão 2.4.2 ou posterior após a inclusão da correção.
Para versões do TensorFlow anteriores à 2.5.0, atualize para a versão 2.5.0 ou posterior.
Como solução alternativa temporária, considere evitar o uso de
tf.raw ops.FractionalAvgPool até que um patch esteja disponível.Exploit
Correção
Divide By Zero
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Tensorflow