İçeriğe geç

Türkçe siber güvenlik haberleri, zafiyet takibi, rehberler ve vaka dosyaları.

Ruby on Rails'te ImageMagick kullanan uygulamalarda giriş yapmadan dosya yazılabiliyor

Rails projesi, dosya yüklemelerini yöneten Active Storage bileşenindeki 9.8 puanlı bir açığı 8.1.4.1 ve 8.0.5.2 sürümleriyle kapattı. Açık, görüntüleri ImageMagick ile işleyen uygulamalarda giriş yapmamış bir saldırganın özel hazırlanmış bir dosya yükleyerek sunucuya dosya yazmasına izin veriyor. Dosyaları Disk servisiyle saklayan uygulamalarda sunucudaki dosyalar okunabiliyor da.

Kırmızı Ekip
  • Güncellendi:
  • 3 dk okuma
  • 3 kaynak

Kısaca

  • Açık GHSA-f3w6-w445-fwh9 ve CVE-2026-122006 numaralarıyla izleniyor. CVE kaydındaki CVSS 3.1 puanı ve Rails'in verdiği CVSS 3.0 puanı 9.8.
  • Açıktan etkilenmek için uygulamanın ImageMagick kullanması, ImageMagick'in güvenlik politikasının ilgili biçimleri engellememesi ve güvenilmeyen kullanıcılardan dosya kabul etmesi gerekiyor. Rails'e göre Debian ve Ubuntu'nun ImageMagick politikaları bu biçimleri engellemiyor.
  • Rails'e göre okunabilen dosyalar arasında uygulamanın secret_key_base değeri ve diğer sistemlerin kimlik bilgileri olabiliyor. Bu da uzaktan kod çalıştırmaya ya da başka sistemlere geçişe yol açabiliyor.

Ruby on Rails projesi, 4 Kasım’da yayımladığı GHSA-f3w6-w445-fwh9 numaralı danışma notunda, dosya yüklemelerini yöneten Active Storage bileşenindeki kritik bir açığı duyurdu. Rails’e göre açık, yüklenen dosyaları ImageMagick ile işleyen bir uygulamada giriş yapmamış bir saldırganın sunucuya istediği dosyayı yazmasına izin verebiliyor. Dosyaları sunucunun diskinde saklayan Disk servisini kullanan uygulamalarda saldırgan, uygulamanın okuyabildiği dosyaları da okuyabiliyor. Açık CVE-2026-122006 numarasıyla da izleniyor. CVE kaydındaki CVSS 3.1 puanı ve Rails’in verdiği CVSS 3.0 puanı 9.8.

Açığın nedeni

Rails’e göre ImageMagick, kendisine verilen dosyayı işlemek için kullanacağı biçim işleyicisini (coder) dosyanın içeriğine bakarak seçiyor. Bu işleyicilerin bazıları, görüntünün kendisi yerine görüntünün içinde adı geçen başka dosyalar üzerinde işlem yapıyor. Active Storage hangi işleyicilerin kullanılabileceğini sınırlamıyordu ve ImageMagick çözümleyicisi bir dosya eklendiği anda çalışıyordu. Bu yüzden özel hazırlanmış bir dosyayı yükleyebilen bir saldırgan bu işleyicilerden birini çalıştırabiliyor. Rails’e göre dosyanın eklenmesi yeterli, uygulamanın görüntünün başka bir sürümünü (variant) ya da önizlemesini oluşturması gerekmiyor.

The Hacker News’e göre açığı kapatan kod değişikliğinde, yüklenen bir SVG dosyasının çözümleyici üzerinden ImageMagick’in MSL işleyicisine ulaşabildiği belirtiliyor. MSL, betiğinde adı geçen dosyaları okuyup yazabilen bir betik işleyicisi. Rails kendisine tek bir saldırı zinciri bildirildiğini, ancak bunun tek yol olduğunu varsaymadığını belirtiyor.

Rails’e göre okunabilen dosyalar genellikle uygulamanın secret_key_base değerini ve dış sistemlere ait kimlik bilgilerini içeriyor. Bu da uzaktan kod çalıştırmaya ya da bu sistemlere geçişe yol açabiliyor. Açığı HackerOne üzerinden RyotaK bildirdi. Danışma notunda açığın saldırılarda kullanıldığına dair bir bilgi yok.

Etkilenen uygulamalar

Rails’e göre bir uygulamanın etkilenmesi için üç koşulun hepsinin sağlanması gerekiyor:

  • Uygulama, Active Storage görüntü işlemede ImageMagick kullanıyor. Bu, config.active_storage.variant_processor = :mini_magick ayarı. The Hacker News’e göre ayar yapılmamışsa varsayılan değer load_defaults sürümüne bağlı ve 7.0 öncesinde :mini_magick. Rails’e göre bu, load_defaults 6.1 ya da öncesini kullanan uygulamalarda varsayılan ayar.
  • ImageMagick’in güvenlik politikası ilgili işleyicileri engellemiyor. Rails’e göre Debian ve Ubuntu’nun paketlediği politikalar bunları engellemiyor.
  • Uygulama, güvenilmeyen kullanıcılardan dosya yüklenmesine izin veriyor.

Etkilenen sürümler activestorage paketinin 8.0.5.2 öncesi sürümleri ile 8.1 ile 8.1.4.1 arasındaki sürümleri.

Önerilen önlemler

Rails’e göre:

  • activestorage paketi 8.1.4.1 ya da 8.0.5.2 sürümüne güncellenmeli. Düzeltilmiş sürümler, MSL betik işleyicisini, başka dosyaları okuyan ya da silen işleyicileri ve Ghostscript kullanan bütün işleyicileri engelleyen bir ImageMagick güvenlik politikasıyla geliyor.
  • ImageMagick kullanan uygulamalarda mini_magick paketinin 5.1 ya da sonraki bir sürümü gerekiyor. Daha eski bir sürümle uygulama açılışta hata veriyor.
  • PostScript ya da PDF dosyalarını ImageMagick ile işleyen uygulamaların, kullandıkları işleyicilere sunucunun kendi politika dosyasında yeniden izin vermesi gerekiyor.
  • Dosyaları Disk servisiyle saklayan uygulamalarda secret_key_base değeri ve uygulamanın okuyabildiği bütün gizli bilgiler değiştirilmeli. Buna ana anahtar (master key), config/credentials.yml.enc içindeki her şey, depolama ve veritabanı kimlik bilgileri ve üçüncü taraf anahtarlar dahil.
  • Hemen güncelleyemeyenler, düzeltilmiş sürümlerle gelen politika kurallarını ImageMagick’in sistem politikasına (örneğin /etc/ImageMagick-7/policy.xml) kopyalayabilir. Rails’e göre en azından MSL işleyicisi, Ghostscript işleyicileri ve gs yardımcısı engellenmeli.

Rails, hemen yükseltme yapamayanlar için 8.1 ve 8.0 serilerine uygulanabilecek yamaları da yayımladı.

Kaynaklar

  1. Rails, GHSA-f3w6-w445-fwh9, "Possible arbitrary file write and read in Active Storage image analysis" (4 Kasım 2026)github.com (başka siteye gider)
  2. The Hacker News, "Critical Rails Flaw Lets Attackers Write Server Files via Crafted ImageMagick Uploads" (4 Kasım 2026)thehackernews.com (başka siteye gider)
  3. CVE kaydı, CVE-2026-122006cve.org (başka siteye gider)

Bu konuda