CVE-2021-37647
Təsvir
TensorFlow maşın öyrənməsi üçün uçdan-uca açıq mənbəli platformadır. İstifadəçi etibarlı sparse tensor müəyyən edən arqumentləri təmin etmədikdə, `tf.raw_ops.SparseTensorSliceDataset` tətbiqi null pointer-in istinad edilməsinə (dereference) səbəb ola bilər. [Tətbiq](https://github.com/tensorflow/tensorflow/blob/8d72537c6abf5a44103b57b9c2e22c14f5f49698/tensorflow/core/kernels/data/sparse_tensor_slice_dataset_op.cc#L240-L251) bəzi arqument yoxlamalarına malikdir, lakin boş bir sparse tensor üçün digəri təmin edilmədikdə yalnız `indices` və ya `values` təqdim olunduğu halı nəzərə almır. Əgər `indices` boşdursa, [doğrulamani yerinə yetirən kod](https://github.com/tensorflow/tensorflow/blob/8d72537c6abf5a44103b57b9c2e22c14f5f49698/tensorflow/core/kernels/data/sparse_tensor_slice_dataset_op.cc#L260-L261) (yəni indekslərin monoton artdığının yoxlanılması) null pointer dereference ilə nəticələnir. İstifadəçi tərəfindən təqdim edilən `indices` boş olduqda, yuxarıdakı C++ kodunda `indices` boş bir `std::vector` tərəfindən dəstəklənir, buna görə də `indices->dim_size(0)` çağırışı null pointer dereferencing ilə nəticələnir (boş vektorda `std::vector::at()` çağırmaqla eynidir). Biz bu problemi GitHub commit 02cc160e29d20631de3859c6653184e3f876b9d7 vasitəsilə düzəltmişik. Düzəliş TensorFlow 2.6.0 versiyasına daxil ediləcək. Həmçinin, bu commit TensorFlow 2.5.1, TensorFlow 2.4.3 və TensorFlow 2.3.4 versiyalarına da tətbiq olunacaq, çünki onlar da təsirlənib və hələ də dəstəklənən diapazondadırlar.
Necə düzəltmək olar
- google tensorflow2.3.4, 2.4.3 və ya daha yeni versiya
- tensorflow2.3.4, 2.4.3, 2.5.1 və ya daha yeni versiya
- tensorflow-cpu2.3.4, 2.4.3, 2.5.1 və ya daha yeni versiya
- tensorflow-gpu2.3.4, 2.4.3, 2.5.1 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| google tensorflow | 2.3.0 ≤ v < 2.3.4, 2.4.0 ≤ v < 2.4.3, 2.5.0, 2.6.0 | 2.3.4, 2.4.3 |
| tensorflowPyPI | v < 2.3.4, 2.4.0 ≤ v < 2.4.3, 2.5.0 ≤ v < 2.5.1, 2.3.0 ≤ v < 2.3.4 | 2.3.4, 2.4.3, 2.5.1 |
| tensorflow-cpuPyPI | v < 2.3.4, 2.4.0 ≤ v < 2.4.3, 2.5.0 ≤ v < 2.5.1, 2.3.0 ≤ v < 2.3.4 | 2.3.4, 2.4.3, 2.5.1 |
| tensorflow-gpuPyPI | v < 2.3.4, 2.4.0 ≤ v < 2.4.3, 2.5.0 ≤ v < 2.5.1, 2.3.0 ≤ v < 2.3.4 | 2.3.4, 2.4.3, 2.5.1 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.