Marimo Açık Kaynak Platformundaki Kritik Zafiyet
Marimo açık kaynaklı Python not defteri platformunda tespit edilen kritik bir zafiyet, kamuya duyurulduktan sadece 10 saat sonra kötü niyetli kişiler tarafından istismar edilmeye başlandı. Bu zafiyet, CVE-2026-39987 kodu ile izlenmekte olup, Marimo’nun 0.20.4 ve daha önceki sürümlerinde kimlik doğrulama gereksinimi olmadan uzaktan kod çalıştırma imkanı sunmaktadır.
Saldırı Nasıl Çalışıyor?
Zafiyet, WebSocket uç noktası olan /terminal/ws üzerinden kimlik doğrulama kontrolleri olmadan etkileşimli bir terminal sunarak, herhangi bir kimliği doğrulanmamış istemcinin bağlantı kurmasına olanak tanımaktadır. Bu, Marimo işlemi ile aynı ayrıcalıklara sahip tam etkileşimli bir kabuğa doğrudan erişim sağlar.
Etkilenen Sistemler
Marimo, veri bilimcileri, makine öğrenimi uygulayıcıları ve geliştiriciler tarafından yaygın olarak kullanılan bir Python not defteri ortamıdır. CVE-2026-39987, aşağıdaki sistemleri etkilemektedir:
- Marimo versiyonu 0.20.4 ve öncesi
- Marimo’yu düzenlenebilir not defteri olarak dağıtan kullanıcılar
- Marimo’yu –host 0.0.0.0 ile paylaşılan bir ağa açan kullanıcılar
Exploitation in the Wild
Zafiyetin detaylarının açıklanmasından itibaren ilk 12 saat içinde 125 IP adresinin keşif faaliyeti gerçekleştirdiği tespit edilmiştir. Sysdig araştırmacıları, zafiyetin ilk istismar denemesinin kimlik bilgisi çalma operasyonu sırasında gözlemlendiğini bildirmektedir.
Saldırgan, önce /terminal/ws uç noktasına bağlanarak zafiyeti doğrulamış ve ardından uzaktan komut çalıştırmayı onaylamak için kısa bir komut dizisi yürütmüştür. Saldırgan, zafiyetten sadece birkaç saniye içinde bağlantısını kesmiş, ancak kısa bir süre sonra yeniden bağlanarak ortamı anlamak için temel komutlar vermeye başlamıştır.
Çözüm ve Korunma
Marimo, bu zafiyeti gidermek için 8 Nisan tarihinde 0.23.0 sürümünü duyurmuş ve kullanıcılardan derhal bu sürüme yükseltmelerini önermiştir. Kullanıcıların aşağıdakileri yapması önerilmektedir:
- 0.23.0 sürümüne hemen yükseltme yapın.
- /terminal/ws uç noktasına WebSocket bağlantılarını izleyin.
- Dış erişimi kısıtlamak için bir güvenlik duvarı kullanın.
- Tüm ortaya çıkan gizli bilgileri değiştirin.
Eğer güncelleme mümkün değilse, en etkili önlem, /terminal/ws uç noktasına erişimi tamamen engellemektir.
Kullanıcıların bu zafiyetin olumsuz etkilerinden korunmak için bu önerilere dikkat etmeleri büyük önem taşımaktadır.


