CVE-2026-98104

Belirsiz

Açıklama

Linux çekirdeğinde aşağıdaki güvenlik açığı giderilmiştir: net/sched: cls_u32: düğüm kimliği havuzu tükendiğinde yinelenen tutamaç sorununu düzeltin gen_new_kid(), her iki idr_alloc_u32() aralığı dolu olduğunda hata bildirmek yerine max (htid | 0xFFF) değerini döndürmeye yönelmektedir. u32_change() bu değere güvenir ve özet tabloda halihazırda aktif olan bir tutamaca sahip yeni bir knode ekleyerek tablonun düğüm kimliği alanı içindeki tutamaç benzersizliğini bozar. Tutamaç hiçbir zaman ht->handle_idr içinde rezerve edilmediğinden, idr_remove(&ht->handle_idr, handle) işlemini gerçekleştiren sonraki tüm hata yolları farklı ve aktif bir knode rezervasyonunu kaldırır ve bu da yeniden kullanılır; böylece başarısız olan tek bir ekleme işlemi daha fazla yinelenen kayda yol açar. 4095 sınırı (tablo, kova) başına geçerlidir — ht->handle_idr özet tablo başına tanımlıdır ve aralık htid (bucketid)'den türetilir, dolayısıyla böleni 256 olan bir tablo meşru olarak 256*4095 knode tutabilir. Benzer yardımcı fonksiyon olan gen_new_htid() de aynı sessiz dahili hataya sahiptir: tp_c tutamaç havuzu (1..0x7FF) dolu olduğunda 0 döndürür ve u32_init() kontrol yapmadan kök özet tabloyu 0 tutamacıyla yayınlar. Tutamacı 0 olan iki kök tablo u32_lookup_ht() içinde takma ad oluşturarak çapraz tcf_proto knode ekleme/arama/silme işlemlerine izin verir. Bölücü yolunun zaten sahip olduğu tüketim kontrolünü buraya da ekleyin. Düğüm kimliği alanı tükendiğinde u32_change()'in ENOSPC/ENOMEM ile, özet tablo kimlik alanı tükendiğinde ise u32_init()'in -ENOMEM ile hata vermesini sağlayın. extack mesajı, havuz tüketimini (-ENOSPC) geçici bir tahsis hatasından (-ENOMEM) ayırır. Hatanın yeniden oluşturulma koşulları: - CONFIG_NET_SCHED=y, CONFIG_CLS_U32=y (veya modül yüklüyken =m) - Bir cihaz üzerinde clsact qdisc oluşturun, ardından kök özet tablosunun (tek kova) düğüm kimliği alanını doldurmak için otomatik oluşturulan tutamaçlara sahip 4095 adet u32 filtresi ekleyin. 4096. otomatik tutamaçlı filtre eklemesi, yinelenen tutamacı tetikler (fh 800::fff yeniden kullanılır). Seviye 2'den erişilebilir (unshare -Urn, namespace-yerel CAP_NET_ADMIN). - gen_new_htid için: tp_c tutamaç havuzunu doldurmak için aynı blokta 2047 u32 proto girişi oluşturun, ardından bir tane daha oluşturun. Kök tablo 0 tutamacını alır ve diğer tutamacı 0 olan kök tablolarla takma ad oluşturur.

ÖnemBelirsiz
CVSS—
İstismar olasılığı—
ÜrünLinux
Yayın25 Eyl 2026
İlk görülme25 Eyl 2026

Nasıl düzeltilir

Güncelleyin
  • Linux Linuxf4ee13ed7f7b22dcd8287fcf477ae37bd84567da, 84223baf21bc9b008444ae9bc38d5fb91fe00b9d, 6890e28840bae4f6805e8de981c4ec8e12a4e064, feab9261b537df4ebb8350e4779bc185373059fd, f594f04268d01c5fdc975f3f51fc219ea2159ac6, d7e7e98d23f42a92d9ab7e36302bd96bd9b33b5f ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linux7801db8aec957fa6610efe0ee26a6c8bc0f1d73b ≤ v < f4ee13ed7f7b22dcd8287fcf477ae37bd84567da, 7801db8aec957fa6610efe0ee26a6c8bc0f1d73b ≤ v < 84223baf21bc9b008444ae9bc38d5fb91fe00b9d, 7801db8aec957fa6610efe0ee26a6c8bc0f1d73b ≤ v < 6890e28840bae4f6805e8de981c4ec8e12a4e064, 7801db8aec957fa6610efe0ee26a6c8bc0f1d73b ≤ v < feab9261b537df4ebb8350e4779bc185373059fd, 7801db8aec957fa6610efe0ee26a6c8bc0f1d73b ≤ v < f594f04268d01c5fdc975f3f51fc219ea2159ac6, 7801db8aec957fa6610efe0ee26a6c8bc0f1d73b ≤ v < d7e7e98d23f42a92d9ab7e36302bd96bd9b33b5f, 3.16f4ee13ed7f7b22dcd8287fcf477ae37bd84567da, 84223baf21bc9b008444ae9bc38d5fb91fe00b9d, 6890e28840bae4f6805e8de981c4ec8e12a4e064, feab9261b537df4ebb8350e4779bc185373059fd, f594f04268d01c5fdc975f3f51fc219ea2159ac6, d7e7e98d23f42a92d9ab7e36302bd96bd9b33b5f

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.

Intelligence 360 paketinde

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.

CVE-2026-98104 · Linux · Dark Radar