Konuyu Okuyanlar:

Pillow CVE-2026-112900: EPS Dosyası ve Ghostscript Üzerinden Komut Çalıştırma Riski

Pillow CVE-2026-112900: EPS Dosyası ve Ghostscript Üzerinden Komut Çalıştırma Riski
[Resim: attachment.php?aid=392]

Selamlar,

Python dünyasının en yaygın görsel işleme kütüphanesi Pillow için önemli bir güvenlik güncellemesi var. The Hacker News'in 23 Ekim 2026 tarihli haberine göre CVE-2026-112900, EPS dosyalarının Ghostscript'e aktarılması sırasında dosya adının kontrolsüz iletilmesinden kaynaklanıyor. Kullanıcıdan görsel alan bir web uygulaması yazıyorsanız okumanızı öneririm.

Konuda anlatılacaklar
  1. Açığın özeti
  2. Kimler risk altında?
  3. Aynı sürümde kapanan diğer açıklar
  4. Güncelleme ve Python 3.10 notu
  5. Güvenli görsel işleme için kod önerileri

1. Açığın özeti
Kod:
CVE : CVE-2026-112900 Etkilenen : Pillow 2.6.0 - 12.3.0 Duzeltme : Pillow 13.0.0 (16 Ekim 2026) Kosul : Sistemde Ghostscript (gs) kurulu olmasi Puan : GitHub CNA 9.2; bakimcilar "orta" olarak degerlendiriyor
Pillow, EPS formatını kendi başına işleyemez; bu iş için sistemdeki Ghostscript'i çağırır. Sorun, bu çağrı sırasında dosya adının yeterince denetlenmemesi. Ghostscript kurulu değilse risk büyük ölçüde ortadan kalkıyor.

2. Kimler risk altında?
  • Kullanıcı yüklemelerini Image.open() ile açan ve sunucusunda gs kurulu olan uygulamalar.
  • ImageMagick veya PDF araçları nedeniyle Ghostscript'in zaten yüklü olduğu konteyner imajları.
  • Dosya uzantısına güvenen, içeriği doğrulamayan yükleme formları.
Kod:
which gs && gs --version python3 -c "import PIL; print(PIL.__version__)"

3. Aynı sürümde kapanan diğer açıklar
Pillow 13.0.0 iki açığı daha kapatıyor: JPEG küçük resim işlemesinde bir taşma olan CVE-2026-112403 (Anthropic'in Claude modeliyle bulunup Ada Logics tarafından doğrulandı) ve 2013'ten beri kodda olan, TIFF'in belleğe yazılmasıyla ilgili CVE-2026-112393.

4. Güncelleme
Kod:
pip install -U "Pillow>=13.0.0" pip-audit
Dikkat: Pillow 13, Python 3.10 desteğini bıraktı. Hâlâ 3.10 kullanan projelerde önce Python sürümünü yükseltmeniz gerekecek.

5. Güvenli görsel işleme önerileri
Kod:
from PIL import Image IZINLI = ["JPEG", "PNG", "WEBP"] def guvenli_ac(yol): im = Image.open(yol, formats=IZINLI) im.verify() im = Image.open(yol, formats=IZINLI) return im
  • formats parametresiyle kabul ettiğiniz formatları sınırlayın.
  • Ghostscript'e ihtiyacınız yoksa görsel işleyen sunucudan kaldırın.
  • Görsel işlemeyi yetkisi düşük bir işçi süreçte veya konteynerde yapın.

Projelerinizde kullanıcı yüklemelerini nasıl işliyorsunuz? Format kısıtlaması kullanan var mı?

Yasal uyarı
Bu yazı bilgilendirme ve savunma amaçlıdır. Anlatılan kontrolleri yalnızca kendi sistemlerinizde veya yazılı izinle yapın. İzinsiz erişim, tarama ve sömürü girişimleri TCK 243-245 kapsamında suçtur. TurkTeam white-hat bir topluluktur; çalıntı veri, hesap, combo/log paylaşımı ve hack hizmeti talepleri forum kurallarına aykırıdır.

Kaynaklar


Ek DosyalarEkran Görüntüleri
   
Cevapla



Hızlı Menü: