CVE-2021-29614

Yüksek

Açıklama

TensorFlow, makine öğrenimi için uçtan uca açık kaynaklı bir platformdur. `tf.io.decode_raw` uygulaması, `fixed_length` ve daha geniş veri türleri birleştirildiğinde hatalı sonuçlar üretmekte ve Python yorumlayıcısını çökertebilmektedir. Dolgulu versiyonun (https://github.com/tensorflow/tensorflow/blob/1d8903e5b167ed0432077a3db6e462daf781d1fe/tensorflow/core/kernels/decode_padded_raw_op.cc) uygulaması, işaretçi aritmetiği kurallarıyla ilgili bir karışıklık nedeniyle hatalıdır. İlk olarak kod, `fixed_length` değerini tür argümanının boyutuna bölerek her bir çıktı öğesinin genişliğini hesaplar (https://github.com/tensorflow/tensorflow/blob/1d8903e5b167ed0432077a3db6e462daf781d1fe/tensorflow/core/kernels/decode_padded_raw_op.cc#L61). `fixed_length` argümanı aynı zamanda çıktı tensörü için gereken boyutu belirlemek amacıyla kullanılır (https://github.com/tensorflow/tensorflow/blob/1d8903e5b167ed0432077a3db6e462daf781d1fe/tensorflow/core/kernels/decode_padded_raw_op.cc#L63-L79). Bunu yeniden kodlama kodu takip eder (https://github.com/tensorflow/tensorflow/blob/1d8903e5b167ed0432077a3db6e462daf781d1fe/tensorflow/core/kernels/decode_padded_raw_op.cc#L85-L94). Hatalı kod yukarıdaki son satırdır: girdiyle en fazla `fixed_length` bayt kopyalamış olmasına rağmen, `out_data` işaretçisini `fixed_length * sizeof(T)` bayt kaydırmaktadır. Bu durum, girdinin bazı bölümlerinin çıktıya çözümlenmemesiyle sonuçlanır. Ayrıca, işaretçi ilerlemesi istenenden çok daha geniş olduğu için bu durum hızla destekleyici verilerin sınırları dışına yazılmasına yol açar. Bu OOB yazma işlemi, burada belirtilen reprodüktörde yorumlayıcı çökmesine neden olur; ancak bu mekanizma bellekte periyodik olarak yerleştirilmiş konumlara yazmaya izin verdiğinden, daha ciddi saldırılar da düzenlenebilir. Düzeltme TensorFlow 2.5.0 sürümüne dahil edilecektir. Etkilenen ve hala desteklenen aralıkta oldukları için bu commit ayrıca TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 ve TensorFlow 2.1.4 sürümlerine de uygulanacaktır.

ÖnemYüksek
CVSS7.1
İstismar olasılığı—
ÜrünGoogle Tensorflow
Yayın14 May 2021
İlk görülme14 May 2021
Zayıflık türüCWE-665CWE-665

Nasıl düzeltilir

Güncelleyin
  • google tensorflow2.1.4, 2.2.3, 2.3.3, 2.4.2 ya da sonraki bir sürüm
  • tensorflow2.1.4, 2.2.3, 2.3.3, 2.4.2 ya da sonraki bir sürüm
  • tensorflow-cpu2.1.4, 2.2.3, 2.3.3, 2.4.2 ya da sonraki bir sürüm
  • tensorflow-gpu2.1.4, 2.2.3, 2.3.3, 2.4.2 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
google tensorflowv < 2.1.4, 2.2.0 ≤ v < 2.2.3, 2.3.0 ≤ v < 2.3.3, 2.4.0 ≤ v < 2.4.22.1.4, 2.2.3, 2.3.3, 2.4.2
tensorflowPyPIv < 2.1.4, 2.2.0 ≤ v < 2.2.3, 2.3.0 ≤ v < 2.3.3, 2.4.0 ≤ v < 2.4.22.1.4, 2.2.3, 2.3.3, 2.4.2
tensorflow-cpuPyPIv < 2.1.4, 2.2.0 ≤ v < 2.2.3, 2.3.0 ≤ v < 2.3.3, 2.4.0 ≤ v < 2.4.22.1.4, 2.2.3, 2.3.3, 2.4.2
tensorflow-gpuPyPIv < 2.1.4, 2.2.0 ≤ v < 2.2.3, 2.3.0 ≤ v < 2.3.3, 2.4.0 ≤ v < 2.4.22.1.4, 2.2.3, 2.3.3, 2.4.2

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.

CVE-2021-29614 · Google Tensorflow · Dark Radar