PT-2021-21797 · Google · Tensorflow

Haris Sahovic

·

Publicado

2021-08-12

·

Atualizado

2024-03-06

·

CVE-2021-37679

CVSS v4.0

8.4

Alta

VetorAV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Nome do software vulnerável e versões afetadas
Versões do TensorFlow anteriores à 2.6.0
TensorFlow versão 2.5.1
TensorFlow versão 2.4.3
TensorFlow versão 2.3.4
Descrição
O problema ocorre ao aninhar um tf.map fn dentro de outra chamada tf.map fn, especificamente com entradas RaggedTensor e sem assinatura de função fornecida. O código assume que a saída é um tensor totalmente especificado e preenche o buffer de saída com conteúdo não inicializado da pilha. Isso pode levar a vazamentos de informações de memória, já que a última linha da saída t contém dados da pilha. O bug está na conversão de um tensor Variant para um RaggedTensor, onde a implementação não verifica se as formas internas correspondem, resultando em dimensões adicionais. Isso também pode causar perda de dados se o tensor de entrada for alterado.
Recomendações
Para versões do TensorFlow anteriores à 2.6.0, atualize para a versão 2.6.0 ou posterior.
Para a versão 2.5.1 do TensorFlow, aplique o patch do commit 4e2565483d0ffcadc719bd44893fb7f609bb5f12 do GitHub ou atualize para uma versão posterior.
Para a versão 2.4.3 do TensorFlow, aplique o patch do commit 4e2565483d0ffcadc719bd44893fb7f609bb5f12 no GitHub ou atualize para uma versão posterior.
Para a versão 2.3.4 do TensorFlow, aplique o patch do commit 4e2565483d0ffcadc719bd44893fb7f609bb5f12 do GitHub ou atualize para uma versão mais recente.
Como solução alternativa temporária, considere evitar o uso de chamadas aninhadas de tf.map fn com entradas RaggedTensor até que o problema seja resolvido.

Correção

Out of bounds Read

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

BIT-TENSORFLOW-2021-37679
CVE-2021-37679
GHSA-G8WG-CJWC-XHHP
OPENSUSE-SU-2022:10014-1
OPENSUSE-SU-2024:12116-1
PYSEC-2021-301
PYSEC-2021-592
PYSEC-2021-790

Produtos afetados

Tensorflow