Açığın Teknik Boyutu: Sorun Görselde Değil, Dosya Adında
Güvenlik danışma belgesi açığın işleyişini şu şekilde özetliyor: "Açık, PostScript belgesinin içeriğiyle değil, dosya adıyla tetikleniyor." Bu ayrım kritik önem taşıyor; çünkü görünürde zararsız bir EPS dosyası bile saldırgan tarafından belirlenen bir dosya adıyla sunucuya ciddi zarar verebiliyor. Ghostscript, kendisine iletilen adı bir dosya yolu olarak değil, çalıştırılabilir bir komut dizisi olarak okuyabiliyor ve bu yolla ikinci bir dosyaya yönlendirilerek içindeki komutları işletiyor.Açık, Pillow'un 2.6.0 sürümünden 12.3.0 dahil tüm sürümlerini etkiliyor. Ghostscript'in sisteme yüklü olmasını gerektirdiğinden yalnızca gs programının kurulu olduğu sunucularda gerçekleşebiliyor; zira Pillow, EPS dosyalarını işleyebilmek için bu programa ihtiyaç duyuyor. Kütüphane geliştiricileri açığı saldırganın dosya adını kontrol etmesi gerektiği gerekçesiyle "orta" düzeyde değerlendirirken GitHub tarafından atanan CVE kaydı buna 10 üzerinden 9,2 puan biçerek kritik sınıfına aldı.
JPEG ve TIFF Formatlarındaki Kritik Açıklar
Sürüm 13.0.0, yalnızca EPS açığını değil birden fazla formattaki güvenlik sorununu birlikte kapatan kapsamlı bir güvenlik güncellemesi olarak öne çıkıyor. Geliştiricilerin kendi sınıflandırmasında "kritik" düzeyde değerlendirdiği iki ayrı açık da bu sürümle giderildi.Bunlardan ilki, Pillow'un JPEG kod çözme motorundaki iki taşma açığıyla ilgili. Bu açıklardan biri FlashPix (FPX) formatını etkiliyor: İsteğe bağlı olefile paketi yüklüyken özel olarak hazırlanmış bir dosya üzerinde yalnızca Image.open() çağrısı yapılması, saldırganın komutlarını çalıştırmak için yeterli olabiliyor. Pillow bu dosyaları uzantıya değil içeriğe bakarak tanıdığından, güvenilmeyen yüklemeleri işleyen bir sunucu herhangi bir kullanıcı etkileşimi olmaksızın bu açığa maruz kalabiliyor. İkinci JPEG açığı olan CVE-2026-112403 ise kayıpsız sıkıştırılmış bir JPEG dosyasından küçük resim oluşturulurken bellek tamponunu taşırıyor; danışma belgesi bu açık için kod çalıştırma değil, süreç çökmesi bildiriyor.
CVE-2026-112403 açığının keşfinde dikkat çekici bir ayrıntı var: Danışma belgesi, açığın "Anthropic tarafından Claude kullanılarak açık kaynak yazılımların güvenliğini inceleme amacıyla bulunduğunu ve Ada Logics tarafından manuel olarak doğrulandığını" belirtiyor. Belgeye göre bu çalışma, açık kaynak kütüphanelerde yüzlerce açığın ortaya çıkarılmasını sağlayan kapsamlı bir girişimin parçası.
Üçüncü kritik sorun ise CVE-2026-112393 numaralı TIFF açığı; bu açığın Pillow'da 2013'ten bu yana var olduğu tespit edildi. Sıkıştırılmış bir TIFF görüntüsü diske değil belleğe kaydedildiğinde, yani bir yüklemeyi yeniden kodlayıp geri döndüren servisler için yaygın olan bu senaryoda, bellek tamponu taşıyor. Araştırmacılar bu açıkla süreci çökertebildiklerini, kod çalıştırma aşamasına ulaşmak için ise bellek adreslerini sızdıran ikinci bir açığa ihtiyaç duyduklarını aktarıyor. Diske doğrudan kaydetme bu açıktan etkilenmiyor.
Pillow'un Yaygınlığı Riskin Boyutunu Büyütüyor
Pillow, Python ile görüntü işleme yapılan neredeyse her ortamda karşımıza çıkıyor: Web yükleme formları, profil fotoğrafı ve küçük resim araçları, belge ve PDF işleme hatları ve makine öğrenimi projelerinin büyük çoğunluğu bu kütüphaneyi kullanıyor. Açıkları kamuoyunun gündemine taşıyan raporu hazırlayan OX Security şirketinin tahminlerine göre kütüphane ayda yaklaşık 436 milyon kez indiriliyor.Sürüm 13.0.0, düşükten kritike uzanan dört farklı önem düzeyinde düzeltme içeriyor. CISA'nın analistleri CVE kayıtlarında EPS açığı için bilinen bir istismar bulunmadığını, TIFF açığı için ise kamuya açık bir kavram kanıtı mevcut olduğunu belirtiyor. Geliştiriciler, şu ana kadar bu açıklardan herhangi birinin aktif saldırılarda kullanıldığına dair bir bilgiye sahip olmadıklarını açıkladı.
Güncelleme ve Geçici Önlemler
Tüm bu açıklar Pillow 13.0.0 sürümüne geçişle birlikte kapanıyor. Eski sürüm içeren konteyner, wheel veya temel imajların da yeniden derlenmesi gerekiyor. Pillow 13, Python 3.10 desteğini sonlandırdığından hâlâ 3.10 kullanan kurulumların Python 3.11 veya daha yenisine geçmesi şart.Güncelleme hemen mümkün değilse geliştiricilerin danışma belgeleri her açık için ayrı geçici adımlar öneriyor. EPS ve Ghostscript açığı için güvenilmeyen yüklemeleri işleyen sunucularda gs programının kaldırılması ve saldırgan kontrolündeki dosya adlarının Image.open()'a hiçbir zaman iletilmemesi tavsiye ediliyor. JPEG küçük resim açığı için güvenilmeyen dosyalar üzerinde draft() ve thumbnail() işlevlerinden kaçınılması ya da önce load() çağrısı yapılması ya da reducing_gap=None parametresinin kullanılması öneriliyor. TIFF açığı için ise kullanıcıdan gelen bir görüntüyü io.BytesIO gibi bellek içi bir tampona kaydetmenin hassas bir işlem olarak ele alınması gerekiyor.

Yazılım ve Uygulamalar
Yazılım ve Uygulamalar
Yazılım ve Uygulamalar
Yorumlar (0)
Yorum yapmak için giriş yapmalısınız.