CVE-2021-47288
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: media: ngene: ngene_command_config_free_buf() fonksiyonundaki sınır dışı (out-of-bounds) hatası düzeltildi -Warray-bounds ile yakalanan aşağıdaki uyarılar ele alınırken, ngene_command_config_free_buf() içerisindeki 11 yıllık bir hata düzeltilmiştir: arch/alpha/include/asm/string.h:22:16: warning: '__builtin_memcpy' offset [12, 16] from the object at 'com' is out of the bounds of referenced subobject 'config' with type 'unsigned char' at offset 10 [-Warray-bounds] arch/x86/include/asm/string_32.h:182:25: warning: '__builtin_memcpy' offset [12, 16] from the object at 'com' is out of the bounds of referenced subobject 'config' with type 'unsigned char' at offset 10 [-Warray-bounds] Sorun, orijinal kodun tek bir memcpy() çağrısı ile yanlış yapı olan FW_CONFIGURE_BUFFERS içindeki bir bayt boyutundaki _config_ üyesine 6 baytlık veri kopyalamaya çalışmasıdır. Bu durum, memcpy() fonksiyonunun &com.cmd.ConfigureBuffers.config uzunluğunu aşması nedeniyle geçerli bir derleyici uyarısına yol açmaktadır. Bunun yerine doğru yapının, _hdr_ başlığının yanı sıra 6 ek üye içeren FW_CONFIGURE_FREE_BUFFERS olduğu görülmektedir. Ayrıca, ngene_command_config_free_buf() fonksiyonunun adı, asıl amacın (yukarıdaki ngene_command_config_buf() fonksiyonunda gerçekleşen) ConfigureBuffers değil, ConfigureFreeBuffers olduğunu göstermektedir. Bu sorun, struct FW_CONFIGURE_FREE_BUFFERS yapısının bu 6 üyesi yeni bir struct config içine alınarak ve memcpy() çağrılırken hedef adres olarak &com.cmd.ConfigureBuffers.config yerine &com.cmd.ConfigureFreeBuffers.config kullanılarak düzeltilmiştir. Bu işlem aynı zamanda -Warray-bounds özelliğinin genel olarak etkinleştirilmesi yönündeki süregelen çalışmalara yardımcı olmakta ve memcpy() üzerindeki FORTIFY_SOURCE rutinlerinin sıkılaştırılmasına bizi daha da yaklaştırmaktadır.
Nasıl düzeltilir
- linux linux_kernel4.4.277, 4.9.277, 4.14.241, 4.19.199, 5.4.136, 5.10.54, 5.13.6 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| linux linux_kernel | 2.6.34 ≤ v < 4.4.277, 4.5 ≤ v < 4.9.277, 4.10 ≤ v < 4.14.241, 4.15 ≤ v < 4.19.199, 4.20 ≤ v < 5.4.136, 5.5 ≤ v < 5.10.54, 5.11 ≤ v < 5.13.6, 5.14 | 4.4.277, 4.9.277, 4.14.241, 4.19.199, 5.4.136, 5.10.54, 5.13.6 |
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.
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.