Geri Dön

Kritik Pillow Görüntü Kütüphanesi Hatası, Oluşturulmuş EPS Dosya Adı ile Kod Çalıştırmaya İzin Veriyor
SiTech AI Team2 dk okuma

Kritik Pillow Görüntü Kütüphanesi Hatası, Oluşturulmuş EPS Dosya Adı ile Kod Çalıştırmaya İzin Veriyor

Pillow'un EPS işleme hatası, dosya adını kontrol ederek saldırganların kod çalıştırmasına izin veriyor; CVE-2026-112900, 2.6.0-12.3.0 sürümlerini etkiliyor ve 13.0.0 sürümünde (16 Ekim) düzeltildi. Yükseltme yapın ve güvensiz EPS yüklemelerini engelleyin.

Güvenlik Açığı Detayları

Pillow, Python için en yaygın kullanılan görüntü kütüphanesidir ve EPS işlemesinde kritik bir hata içerir. Bir EPS dosyası açıldığında, Pillow dosya adını doğrulama yapmadan Ghostscript programına geçirir. Dosya adını kontrol eden bir saldırgan, Ghostscript'in adı komutlar olarak yorumlamasına neden olabilir ve bu da rasgele kod çalıştırmaya yol açar. Güvenlik açığı CVE-2026-112900 olarak takip edilmekte olup Pillow 2.6.0 ile 12.3.0 sürümlerini etkiler. Bakımcılar sorunu gidermek için 16 Ekim'de 13.0.0 sürümünü yayınladı.

Danışma belgesi, hatanın PostScript belgesindeki bir şeyden değil, dosya adından tetiklendiğini belirtiyor; bu da isim manipüle edildiğinde zararsız bir EPS dosyasının tehlikeli hale gelebileceği anlamına geliyor. Hata yalnızca EPS desteği için gerekli olan gs programı kurulu sistemlerde tetiklenir.

Etki ve Kapsam

Pillow, web yükleme formlarında, avatar ve küçük resim oluşturmada, belge ve PDF işlem hatlarında ve çoğu makine öğrenimi projesinde kullanılır. OX Security, kütüphanenin ayda yaklaşık 436 milyon kez indirildiğini tahmin ediyor. 13.0.0 sürümü, dört ciddiyet seviyesinde düzeltmeler içeren büyük bir güvenlik sürümü olup, bunların ikisi bakımcılar tarafından kritik olarak derecelendirilmiştir. CVE kaydı EPS hatasını 10 üzerinden 9,2 olarak derecelendirirken, bakımcılar saldırganın dosya adını kontrol etmesi gerektiği nedeniyle orta derecede buluyor. EPS hatasının doğada istismar edildiği gözlemlenmedi.

Aynı sürümdeki ek kritik düzeltmeler, mod değişikliğinden sonra bir bellek yeniden kullanım hatası, iki JPEG kod çözme taşması ve 2013'ten beri var olan uzun süreli bir TIFF bellek taşmasını ele alıyor. FlashPix formatındaki JPEG taşması, isteğe bağlı olefile paketi kurulu olduğunda Image.open'a yapılan tek bir çağrıyla kod çalıştırmaya olanak sağlayabilir. TIFF taşması, sıkıştırılmış bir TIFF'in io.BytesIO gibi bir bellek içi arabelleğe kaydedildiğinde meydana gelir; bu, yüklemeleri yeniden kodlayan hizmetler için yaygın bir desendir.

Azaltma Adımları

Pillow 13.0.0 sürümüne yükseltin ve eski bir kopyayı içeren konteynerleri, wheel'leri veya temel görüntüleri yeniden oluşturun. Pillow 13, Python 3.10 desteğini bırakıyor, bu nedenle hâlâ 3.10 kullanan ortamlar Python 3.11 veya daha yeni bir sürüme geçmelidir. Yükseltme komutu pip install -U "Pillow>=13.0.0" şeklindedir.

Hemen yükseltme yapılamıyorsa, aşağıdaki azaltmalar riski düşürür: güvensiz yüklemeleri işleyen ana bilgisayarlardan gs programını uzak tutun ve EPS dosyaları için Image.open'a asla saldırgan kontrolündeki bir dosya adını geçirmeyin; güvensiz JPEG'lerde draft() ve thumbnail() kullanmaktan kaçının, ya da önce load() çağırın, ya da reducing_gap=None geçirin; görüntü bir kullanıcıdan geliyorsa, bir TIFF'i bellek içi arabelleğe kaydetmeyi hassas bir işlem olarak kabul edin.

Kaynaklar: The Hacker News

SiTech

SiTech — AI destekli web geliştirme

Hızlı ve modern web siteleri kuruyor, AI'yı gerçek iş akışlarına taşıyoruz. Projeniz veya sorunuz mu var? Yardımcı olmaktan mutluluk duyarız.