· kaynak dev.to (home feed)
CVE-2026-63349: AnyIO'daki tek satırlık değişken yazım hatası 4.14.0 ve 4.14.1 sürümlerinde yetki düşürmeyi bozuyor
AnyIO 4.14.0 ve 4.14.1'deki tek satırlık bir değişken yazım hatası extra_groups ayarını yok sayıyor; böylece subprocess'ler ebeveyn sürecin yükseltilmiş tamamlayıcı gruplarını koruyor. CVE-2026-63349 (CVSS 7.0) 4.14.2'de giderildi.

Tek bir değişken adındaki yazım hatası yüksek önem derecesi aldı: CVE-2026-63349, Python asenkron kütüphanesi AnyIO'da, POSIX sistemlerinde 4.14.0 ve 4.14.1 sürümlerini etkileyen bir yetki düşürme atlatma açığını tanımlıyor. Dev.to'da yayımlanan CVE raporuna göre açıklığın CVSS v4.0 puanı 7.0 (Yüksek), 18 Eylül 2026'da yayımlandı ve AnyIO 4.14.2'de giderildi.
Hata nasıl çalışıyor
Etkilenen bileşen anyio._core._subprocesses. Geliştiriciler AnyIO'nun open_process fonksiyonuyla bir child process başlatırken, yeni sürecin hangi birincil ve tamamlayıcı gruplara sahip olacağını kontrol etmek için bir group argümanı ve bir extra_groups argümanı iletebilir — daha az güvenilen işleri düşürülmüş yetkilerle çalıştırmanın standart bir yolu.
Düzeltme olan eb562e6 commit'i ("Fix typo in extra_groups parameter propagation") tek bir satırı değiştiriyor: kod, birincil grup değerini tamamlayıcı gruplar alanına yazan kwargs["extra_groups"] = group atamasını kullanıyordu. Düzeltilen satır, amaçlandığı gibi extra_groups değerini atıyor.
Rapora göre sonuç, geliştiricinin belirttiği tamamlayıcı grupların hiçbir zaman yürütme backend'ine ulaşmaması. Subprocess bunun yerine ebeveyn sürecin tamamlayıcı grup üyeliklerini —potansiyel olarak güçlü olanlar dahil— koruyor. Kritik nokta şu: Hiçbir şey hata vermiyor; API çağrısı başarıyla sonuçlanıyor, süreç başlıyor ve çağıran tarafın istediği yetki düşürmesi sadece hiç gerçekleşmiyor.
Kapsam ve önem derecesi
Yazı, sorunu POSIX platformlarındaki AnyIO 4.14.0 ve 4.14.1 sürümleriyle (yani >= 4.14.0 ve < 4.14.2) sınırlıyor ve 4.14.2'yi düzeltilmiş sürüm olarak gösteriyor. Açıklığı yanlış yetkilendirme ve hatalı yetki yönetimini kapsayan CWE-266 ve CWE-269 ile eşleştiriyor, saldırı vektörünü yerel olarak sınıflandırıyor ve istismar durumunu proof-of-concept/teorik olarak listeliyor. Sorun CISA KEV kataloğunda yer almıyor. Raporun başlığı hizmet dışı bırakmadan da bahsediyor, ancak yayımladığı teknik ayrıntı yetki düşürme atlatmasıyla ilgili.
Rapor, bir child sürecin istemeden koruyabileceği gruplara örnek olarak docker ve shadow gibi grupları sayıyor. Bu üyelikler pratikte önemli: docker grubu genellikle bir ana bilgisayarda root'a eşdeğer kabul edilir ve shadow grubu parola hash'lerini açıkta bırakabilir.
Düzeltme adımları
Rapor şu adımları öneriyor:
- Etkilenen sürümlerin kurulu olduğu her yerde AnyIO 4.14.2 veya sonrasına yükseltin.
- Python ortamlarındaki kurulumları envanterlemek için
pip show anyiokomutunu kullanın. - Yamalı sürümün bir bağımlılık olarak zorunlu kılınması için requirements.txt, pyproject.toml veya Pipfile dosyalarında
anyio >= 4.14.2sabitleyin. - CVE'nin kapatıldığını doğrulamak için otomatik güvenlik açığı taraması çalıştırın.
- Hemen yükseltme mümkün değilse, yetki düşürmeye bağlı kod yollarında Python'un yerleşik asyncio veya subprocess modüllerini doğrudan kullanın.
extra_groups'u bir güvenlik kontrolü olarak kullanan ekipler, etkilenen sürümlerin başlattığı süreçlerin gerçek grup üyeliklerini de yeniden incelemeli; çünkü amaçlanan kısıtlama reddedilmek yerine sessizce yok sayıldı.
Neden önemli
Yetki düşürme bir güvenlik sınırıdır ve bu hata, böyle bir sınırın ne kadar sessizce başarısız olabileceğini gösteriyor. Güvenlik açığı bulunan kod argümanları kabul ediyor, süreci başlatıyor ve başarı bildiriyor — testler, kod incelemesi ve izleme hepsi sağlıklı bir çağrı görürken, child sessizce yükseltilmiş grup erişimini devralıyor. Etkilenme penceresi dar, iki nokta sürümüyle sınırlı, ancak 4.14.0 veya 4.14.1'e sabitlenmiş ve düşürülmüş yetkilerle subprocess başlatan her dağıtım etkileniyor ve yükseltmeyi öncelik olarak görmeli. Kütüphane geliştiricileri için bu aynı zamanda, güvenlikle ilgili argümanların yalnızca kabul edilmelerinin değil, etkin sonuçlarının da doğrulanması gerektiğinin bir hatırlatıcısı.
- #python
- #security
- #cve
- #anyio
- #privilege-escalation
İlgili yazılar
- CVE-2024-1086: Linux çekirdeğindeki use-after-free yerel saldırganlara root erişimi veriyor
- PaperCut NG/MF kimlik doğrulama atlama ve RCE zinciri büyük ölçekte istismar edildi; ancak 1,2 milyonluk暴露 sayısı yanıltıcı
- CISA KEV listesi, küçük açık ayak izine rağmen SonicWall SMA 1000 SSL VPN açıklarını gündeme taşıdı