Python’un yaygın görüntü işleme kütüphanesi Pillow, EPS dosyalarını işlerken ortaya çıkan bir argüman enjeksiyonu açığı için düzeltme yayımladı. CVE-2026-112900 numaralı açık, Pillow’un kendi güvenlik duyurusunda orta (Moderate) önemde sınıflandırıldı ve 13.0.0 sürümüyle kapatıldı.
Ne oldu
Pillow, EPS (Encapsulated PostScript) biçimindeki görüntüleri açmak için sistemde kurulu Ghostscript programını çağırır. Kütüphanenin EpsImagePlugin bileşeni, Ghostscript komut satırını kurarken dosya yolunu (fp.name) temizlemeden geçiriyor. Tire (“-”) ile başlayan bir dosya adı, Ghostscript tarafından dosya değil komut satırı seçeneği olarak okunuyor; bu, CWE-88 sınıfında bir argüman enjeksiyonu. Ayrıca “@” ile başlayan bir ad, Ghostscript’e ek argümanları bir dosyadan okutuyor. Saldırgan o dosyanın içeriğini de kontrol edebiliyorsa, zincir komut çalıştırmaya kadar uzayabiliyor.
Önemli ayrıntı: bu doğrudan bir uzaktan kod çalıştırma (RCE) açığı değil. İki ön koşul birlikte gerekiyor: saldırganın Image.open() çağrısına giden dosya adını etkileyebilmesi ve sistemde Ghostscript’in kurulu olması. Üretici duyurusunda önem derecesi “Moderate” (orta), 13.0.0 sürüm notunda “Medium”. NVD kaydı ve CVSS puanı bu haberin doğrulandığı saatte henüz görülmedi.
Açığı KAIST CysecLab’dan Chanu Kang bildirdi; düzeltmeyi Pillow geliştiricisi radarhere hazırladı. Düzeltme sürümü 16 Ekim 2026’da çıktı, güvenlik duyurusu bir gün sonra, 17 Ekim’de yayımlandı.
Kimleri etkiler
Etkilenen aralık Pillow 2.6.0’dan 12.3.0’a kadar tüm sürümler. Pillow, Python’da görüntü işleme için en yaygın kütüphane; web uygulamalarında yüklenen görselleri küçültme, biçim dönüştürme ve önizleme üretme gibi işlerde arka planda sık kullanılır. Bu yüzden sürüm aralığı geniş, ama fiilen etkilenmek için iki koşul birlikte gerekli: sunucuda Ghostscript kurulu olmalı ve uygulama, kullanıcıdan gelen dosya adını olduğu gibi Image.open() çağrısına vermeli. Yüklenen dosyayı kendi ürettiği rastgele bir adla kaydeden uygulamalarda dosya adı üzerinden bu enjeksiyon yolu kapanır. Ghostscript olmayan sistemlerde EPS zaten açılamaz, dolayısıyla açık tetiklenemez.
Kontrol edilmesi gereken yerler: kurum içinde geliştirilen Python uygulamaları, belge ve görsel işleme hatları ve Pillow’u bağımlılık olarak çeken üçüncü taraf paketler. Pillow çoğu zaman doğrudan değil, başka bir paketin bağımlılığı olarak sisteme girer; bu yüzden yalnız doğrudan kurulan paketlere bakmak yeterli olmayabilir.
Üretici ne öneriyor
Pillow’un önerisi tek ve net: 13.0.0 ya da üstüne yükseltmek. Ek olarak, kullanıcıdan gelen girdinin dosya adı olarak doğrudan Image.open() çağrısına verilmemesi öneriliyor; dosya adının uygulama tarafından belirlenmesi, açığın ön koşulunu ortadan kaldırıyor.
Yükseltme hemen yapılamıyorsa bilinmesi gereken: Ghostscript kurulu olmayan ortamlarda açık tetiklenmez, ancak bu bir düzeltme değil, yalnız etki alanını daraltan bir durum. Duyurunun tamamı ve teknik ayrıntılar Pillow’un GitHub güvenlik duyurusunda; bağlantı yan sütunda.

