CVE-2021-47587
Açıklama
Linux kernel'da aşağıdaki güvenlik açığı giderilmiştir: net: systemport: Descriptor yaşam döngüsü için küresel kilitleme eklendi Descriptor listesi tüm iletim kuyrukları arasında paylaşılan bir kaynaktır ve günümüzde kullanılan kilitleme mekanizması yalnızca belirli bir iletim kuyruğundaki iletim ve geri kazanım arasındaki eşzamanlılığı korumaktadır. Bu durum, birden fazla iletim kuyruğu kullanıldığında olduğu gibi aynı anda birden fazla üretici olduğunda, SYSTEMPORT donanımının bozulmuş descriptorlar üzerinde çalışması için bir fırsat yaratmaktadır. Bu durum özellikle birden fazla akış/iletim kuyruğu kullanılırken belirginleşmiş ve UDP paketlerinin yanlış bir paket uzunluğu üzerinden doğru bir UDP başlık sağlama toplamı (checksum) hesaplaması şeklinde ilginç biçimlerde ortaya çıkmıştır. Benzer şekilde, TCP paketleri de donanım tarafından yanlış bir paket uzunluğu üzerinden eşit derecede doğru bir sağlama toplamı hesaplanmasına neden olmuştur. SYSTEMPORT donanımı, sürücü WRITE_PORT_{HI,LO} yazmaçlarına her yazdığında yeni bir descriptor ürettiğinde yeniden düzenlediği dahili bir descriptor listesi tutar; ancak donanımın descriptorlarını yeniden organize etmesinde bazı gecikmeler vardır ve eşzamanlı TX kuyruklarının, nihayetinde bu dahili tahsis şemasını, descriptorun uzunluk/durum kısmının yanlış bir veri tamponu için kullanılacağı noktaya kadar bozması mümkündür. Çözüm, WRITE_PORT_{HI,LO} yazmaçlarına yazdığımız kısa bölümde tüm TX kuyrukları için küresel bir serileştirme uygulamaktır; bu işlem, birden fazla eşzamanlı TX kuyruğu kullanılsa bile bozulmayı gidermektedir.
Nasıl düzeltilir
- linux linux_kernel4.4.296, 4.9.294, 4.14.259, 4.19.222, 5.4.168, 5.10.88, 5.15.11 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 | 3.16 ≤ v < 4.4.296, 4.5 ≤ v < 4.9.294, 4.10 ≤ v < 4.14.259, 4.15 ≤ v < 4.19.222, 4.20 ≤ v < 5.4.168, 5.5 ≤ v < 5.10.88, 5.11 ≤ v < 5.15.11, 5.16 | 4.4.296, 4.9.294, 4.14.259, 4.19.222, 5.4.168, 5.10.88, 5.15.11 |
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.