CVE-2026-40290
Açıklama
OP-TEE, Arm üzerindeki güvenli olmayan bir Linux çekirdeğine eşlikçi olarak tasarlanmış, TrustZone teknolojisini kullanan Cortex-A çekirdekleri için bir Güvenilir Yürütme Ortamı'dır (TEE). Versiyon 3.16.0 ile başlayıp 4.11.0 öncesine kadar olan sürümlerde, OP-TEE SPMC/SP akışları içindeki FF-A paylaşılan bellek sonlandırma mantığında bir serbest bırakıldıktan sonra kullanım (UAF) yarış durumu mevcuttur. Bu durum yalnızca OP-TEE, S-EL0 SP'ler için bir SPMC olarak yapılandırıldığında, yani `CFG_SECURE_PARTITION=y` seçeneğiyle kullanıldığında geçerlidir. `smem->receivers` ve `smem->regions` içerisindeki girişleri serbest bırakmaktan sorumlu olan `sp_mem_remove()` fonksiyonu, `free()` işlemlerini gerçekleştirmeden önce küresel `sp_mem_lock` kilidini almaya çalışmaz. Eş zamanlı olarak, `sp_mem_get_receiver()` gibi diğer kod yolları bu aynı listeler üzerinde kilit tutmadan gezinirken veya `sp_mem_is_shared()` örneğinde olduğu gibi kilit tutarak gezinirken, `sp_mem_remove()` içindeki korumasız `free()` işlemiyle serileştirilmezler. Bu durum, listeyi tarayan bir iş parçacığının bir girişe (örneğin `struct sp_mem_map_region` veya `struct sp_mem_receiver`) ait işaretçiyi aldığı ve ardından başka bir iş parçacığının `sp_mem_remove()` fonksiyonunu çağırarak nesneyi serbest bıraktığı iş parçacıkları arası bir yarış durumu oluşturur. İlk iş parçacığı devam edip işaretçinin referansını çözdüğünde, bu durum bir Serbest Bırakıldıktan Sonra Kullanım zafiyetine yol açar. Versiyon 4.11.0 bu sorunu düzeltmektedir.
Nasıl düzeltilir
Kaynaklarda bu zafiyet için düzeltilmiş sürüm ya da yama bağlantısı yok.
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| trustedfirmware op-tee | 3.16.0 ≤ v ≤ 4.10.0 | — |
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.