Grist-Core’da Kritik RCE Açığı: Elektronik Tablo Formülleri Üzerinden Sistem Komutları Çalıştırılabilir

Anasayfa » Grist-Core’da Kritik RCE Açığı: Elektronik Tablo Formülleri Üzerinden Sistem Komutları Çalıştırılabilir
Grist-Core’da Kritik RCE Açığı: Elektronik Tablo Formülleri Üzerinden Sistem Komutları Çalıştırılabilir

Saldırının Genel Çerçevesi

Grist-Core, ilişkisel elektronik tablo ve veritabanı işlevselliğini bir arada sunan açık kaynaklı bir platformdur. Ancak yapılan analizlerde, platformun Python formül yürütme mekanizmasında Pyodide sandbox’ını aşmaya olanak veren kritik bir güvenlik açığı (CVE-2026-24002) ortaya çıktı. Bu zafiyet, kötü niyetli formüllerle elektronik tablolarda uzak kod çalıştırılmasına (RCE) imkan tanıyor. Saldırı, özellikle Pyodide sandbox’ı kullanan sistemleri hedef alıyor ve 9 Ocak 2026’da yayınlanan 1.7.9 sürümüyle giderildi.

Saldırı Zinciri ve Teknik Detaylar

Güvenlik araştırmacısı Vladimir Tokarev tarafından keşfedilen bu açık, Pyodide sandbox’ındaki tasarım eksikliklerinden kaynaklanıyor. Pyodide, Python kodlarını WebAssembly (WASM) tabanlı izole bir ortamda çalıştırmak için kullanılıyor. Ancak Grist’in bloklist yaklaşımı, sandbox sınırlarını aşmaya izin veriyor. Özellikle Python’un sınıf hiyerarşisi üzerinden geçiş ve ctypes modülünün erişilebilir olması, Emscripten çalışma zamanı fonksiyonlarına ulaşımı mümkün kılıyor. Bu sayede saldırganlar, host işletim sistemi komutları ve JavaScript kodlarını çalıştırabiliyor, dosya sistemi erişimi sağlayabiliyor ve hassas verileri ele geçirebiliyor.

Açığın teknik detayları şu şekilde özetlenebilir:

  • Kullanılan araçlar: Pyodide sandbox, Emscripten runtime
  • Hedef sistemler: Grist-Core 1.7.9 öncesi sürümler, Pyodide sandbox kullanan platformlar
  • CVE kodu: CVE-2026-24002
  • Saldırı adımları: Kötü niyetli formül oluşturma → Sandbox kaçışı → Host komut ve JavaScript yürütme → Veri sızıntısı ve yatay hareketlilik
  • Benzer zafiyet: n8n platformundaki CVE-2025-68668 (N8scape)

Hangi Sistemler Risk Altında?

Grist-Core kullanıcıları, özellikle GRIST_SANDBOX_FLAVOR ortam değişkeni Pyodide olarak ayarlanmışsa risk altındadır. Yönetici panelinde sandbox yöntemi olarak “pyodide” görünen sistemler etkilenir. “gvisor” sandbox yöntemi kullananlar ise bu açıdan korunmaktadır. Ayrıca, GRIST_PYODIDE_SKIP_DENO değerini “1” olarak ayarlayan operatörler, Pyodide formül yürütmesini Deno JavaScript çalışma zamanı altına almamış olacağından risk devam eder.

Siber Güvenlik Ekipleri İçin Öneriler

  • Grist-Core sistemlerini 1.7.9 veya üzeri sürümlere güncelleyin.
  • GRIST_SANDBOX_FLAVOR ortam değişkenini “gvisor” olarak ayarlayarak sandbox izolasyonunu güçlendirin.
  • GRIST_PYODIDE_SKIP_DENO ayarını varsayılan (“0”) bırakın; güvenilmeyen formüllerde Deno çalışma zamanı kullanın.
  • Elektronik tablo formüllerinin içeriklerini ve izinlerini sıkı şekilde denetleyin.
  • EDR ve SIEM sistemlerinde Pyodide ve Deno ile ilgili anormal komut yürütme ve dosya erişimlerini izleyin.
  • Olay müdahale planlarında sandbox kaçışlarına yönelik senaryolar oluşturun.
  • Ağ segmentasyonu ile kritik veritabanı sunucularının erişimini sınırlandırın.
  • IAM politikaları ile formül oluşturma ve düzenleme yetkilerini kısıtlayın.

Kurumsal Ortamlarda Olası Senaryolar

Örneğin bir SaaS sağlayıcısı, müşterilerine Grist-Core tabanlı elektronik tablo hizmeti sunarken, kötü niyetli bir kullanıcı tarafından oluşturulan zararlı formül, sunucu tarafında rastgele komutların çalıştırılmasına yol açabilir. Bu durum, veritabanı kimlik bilgileri ve API anahtarlarının ele geçirilmesine, hassas müşteri verilerinin açığa çıkmasına ve bulut altyapısında yatay hareketliliğe sebep olabilir. Böyle bir saldırı, fidye yazılımı gibi daha geniş çaplı tehditlerin tetikleyicisi haline gelebilir.

Bu nedenle, bulut güvenliği ve e-posta güvenliği gibi alanlarda entegre savunma mekanizmalarıyla desteklenen çok katmanlı güvenlik stratejileri önem kazanıyor.