CVE-2024-36895
Açıklama
Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: usb: gadget: uvc: configfs listeleri ayrıştırılırken doğru arabellek boyutunu kullanın Bu commit, 32-bit platformlarda uvc gadget desteğini düzeltmektedir. 0df28607c5cb numaralı commit ("usb: gadget: uvc: Generalise helper functions for reuse"), configfs öznitelik depolarındaki öğe listelerinin ayrıştırılmasına yardımcı olmak için __uvcg_iter_item_entries() adlı bir yardımcı fonksiyon tanıtmıştır. Bu fonksiyon, listedeki her öğe için sabit boyutlu ve yığında tahsis edilmiş geçici bir arabellek kullanan ve potansiyel arabellek taşmalarını kontrol etmek için sizeof() operatörünü kullanan başka bir benzer fonksiyonun genelleştirilmiş halidir. Yeni fonksiyon, artık değişken boyutlu olan geçici arabelleği yığma (heap) üzerinde tahsis edecek şekilde değiştirilmiş ancak maksimum arabellek boyutunu sizeof() operatörü yerine hesaplanan boyutu kullanarak kontrol edecek şekilde uygun olarak güncellenmemiştir. Sonuç olarak, maksimum öğe boyutu 64-bit platformlarda 7 (artı null sonlandırıcı), 32-bit platformlarda ise 3 olmuştur. 7 değeri tesadüfen ucu ucuna yeterli olsa da, 3 değeri bazı UVC configfs öznitelikleri için kesinlikle çok küçüktür. Örneğin, 100ns birimlerinde belirtilen dwFrameInteval genellikle 6 haneli öğe değerlerine sahiptir (örneğin 60fps için 166666).
Nasıl düzeltilir
- linux linux_kernel6.6.31, 6.8.10 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 | 6.3 ≤ v < 6.6.31, 6.7 ≤ v < 6.8.10, 6.9 | 6.6.31, 6.8.10 |
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.