PT-2021-21806 · Google · Tensorflow
Yakun Zhang
·
Publicado
2021-08-12
·
Atualizado
2024-03-06
·
CVE-2021-37687
CVSS v4.0
6.8
Média
| Vetor | AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/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
Versões do TensorFlow 2.5.1 e anteriores
Versões do TensorFlow 2.4.3 e anteriores
Versões do TensorFlow 2.3.4 e anteriores
Descrição
O problema decorre do fato de a implementação GatherNd do TFLite não suportar índices negativos, mas não possuir verificações para essa situação, permitindo que um invasor leia dados arbitrários da pilha (heap) criando um modelo com valores negativos em
indices. Um problema semelhante existe na implementação do Gather. Isso pode ser explorado criando-se cuidadosamente um modelo, conforme demonstrado em um exemplo em Python fornecido, que utiliza a função tf.gather com valores negativos em indices para ler dados da pilha.Recomendações
Para versões anteriores à 2.6.0, atualize para o TensorFlow 2.6.0 ou posterior.
Para versões 2.5.1 e anteriores, atualize para o TensorFlow 2.5.1 ou posterior.
Para versões 2.4.3 e anteriores, atualize para o TensorFlow 2.4.3 ou posterior.
Para versões 2.3.4 e anteriores, atualize para o TensorFlow 2.3.4 ou posterior.
Como solução temporária, considere desativar as implementações
GatherNd e Gather até que um patch esteja disponível. Restrinja o acesso ao kernel do TFLite vulnerável para minimizar o risco de exploração. Evite usar valores negativos em indices para os endpoints da API afetados 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
Produtos afetados
Tensorflow