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.
- 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_magickayarı. The Hacker News’e göre ayar yapılmamışsa varsayılan değerload_defaultssürümüne bağlı ve 7.0 öncesinde:mini_magick. Rails’e göre bu,load_defaults6.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:
activestoragepaketi 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_magickpaketinin 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_basedeğeri ve uygulamanın okuyabildiği bütün gizli bilgiler değiştirilmeli. Buna ana anahtar (master key),config/credentials.yml.enciç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
- 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)
- 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)
- CVE kaydı, CVE-2026-122006cve.org (başka siteye gider)
Bu konuda
- KritikYeni
Zafiyet · 4 dk
Citrix NetScaler'da 28 açık kapatıldı, biri varsayılan kurulumları da etkiliyor
- YüksekYeni
Zafiyet · 3 dk
PostgreSQL'de 52 açık kapatıldı, PostgreSQL 14'ün desteği sona erdi
- KritikYeni
Zafiyet · 2 dk
Chrome 157 güncellemesi beşi kritik 83 güvenlik açığını kapattı