Siber Güvenlik

Ruby, GitLab'da dört kritik RCE açığına yol açan üç regex motoru hatasını düzeltti

Ruby, GitLab'da dört kritik RCE açığına yol açan üç regex motoru hatasını düzeltti

Ruby, dilin içinde yer alan düzenli ifade motoru Onigmo'daki üç hatayı düzeltmek için Ruby 4.0.9, 3.4.12 ve 3.3.13 sürümlerini yayınladı. Bu hatalar, GitLab'ın son bir ayda yamaladığı dört kritik RCE açığının altında yatıyor.

GitLab, özel olarak hazırlanmış bir desenin Ruby derlerken belleği bozabileceğini ve bu durumun kendi sunucularında kod çalıştırılmasına yol açabileceğini tespit etti.

Ruby, saldırganın kontrol ettiği metinden düzenli ifade oluşturan her uygulamanın etkilendiğini, sadece GitLab'ın değil, belirtti.

Hangi Uygulamalar Etkileniyor

Duyurusunda Ruby, bir uygulamanın yalnızca saldırganın kontrol ettiği bir dizgeden düzenli ifade derlediğinde etkilendiğini söyledi. Bu durum, bir program söz konusu dizgeyi Regexp.new, Regexp.union ya da Regexp.compile'a aktardığında ya da /#{input}/ biçiminde enterpolasyon yoluyla desene yerleştirdiğinde oluşur.

Yalnızca kendi geliştiricilerinin yazdığı düzenli ifadeleri kullanan uygulamalar etkilenmiyor.

Ruby hataları 4.0.9, 3.4.12 ve 3.3.13 sürümlerinde düzeltti. 3.4.12 ve 3.3.13 sürümleri, serilerinde üç düzeltmeden herhangi birini taşıyan ilk sürümler oldu.

Ruby 4.0: 4.0.9'a yükseltin

Ruby 3.4: 3.4.12'ye yükseltin

Ruby 3.3: 3.3.13'e yükseltin

Aynı haftadan 4.0.8 sürümü, CVE-2026-110264 açığı için düzeltmeyi içermiyor, bu nedenle 4.0 kullanıcılarının 4.0.9'u kurması gerekiyor.

Ruby 3.2 ve daha eski sürümler düzeltme almayacak. Ruby 3.2, 1 Nisan 2026'da yaşam döngüsünü tamamladı ve 3.2.11 son sürümü oldu. Ruby, 3.4 veya 4.0'a geçilmesini öneriyor.

Henüz yükseltme yapılamıyorsa, duyuru güvensiz girdilerden düzenli ifade derlemeyi durdurmayı öneriyor.

Yardımcı olacağı görünen iki savunma da işe yaramıyor. Regexp.timeout ayarı bu hataları durdurmuyor. Desenin uzunluğunu sınırlamak da güvenilir değil, çünkü kısa desenler de hatayı tetikleyebiliyor.

Hatalar GitLab'a Nasıl Ulaştı

GitLab, kullanıcılarının sağladığı düzenli ifadeleri derliyor; örneğin CI/CD yapılandırmasındaki desenler. Hazırlanmış desenlerin Ruby derlerken belleği bozabileceğini tespit etti ve 23 Eylül ile 21 Ekim arasında dört CVE yayınlayarak her birini yamalı bir Ruby sürümüyle giderdi.

23 Eylül'de açıklanan ilk iki açık için oturum açmış hesap gerekiyor ve her biri 10 üzerinden 9,9 puan aldı. Ekim ayındaki ikisi, 12'sinde CVE-2026-97229 ve 21'inde CVE-2026-110264, hesap gerektirmiyor ve 10,0 puanla en yüksek seviyede değerlendirildi. CVE-2026-110264, 7.0 sürümünden itibaren her GitLab sürümüne ulaşıyor.

joaxcar takma adını kullanan bir araştırmacı, dördünü de GitLab'ın hata ödül programı üzerinden bildirdi. 23 Ekim itibarıyla dördü de CISA'nın Bilinen Sömürülen Açıklar kataloğunda listelenmedi.

Şimdilik Ruby CVE'si Yok

Ruby, bu düzeltmeler için kendi CVE tanımlayıcılarını talep etmedi, "en azından şimdilik" dedi ve kullanıcılara sorunları GitLab'ın dört CVE numarasıyla takip etmelerini söyledi.

Bu durum, CVE'ye göre tarama yapanlar için bir boşluk bırakıyor. GitLab'ın CVE kayıtları etkilenen ürün olarak yalnızca GitLab'ı gösteriyor, bu yüzden kayıtları kurulu Ruby sürümleriyle karşılaştıran bir tarayıcının eşleştirecek bir şeyi kalmıyor.

Ruby daha önce bu tür hataları bir güvenlik açığı olarak ele aldı ve 2022 ile 2024'te düzeltmelere CVE numarası verdi; güvensiz girdiden düzenli ifade oluşturmanın uzun süredir güvenli olmadığı halde.

Dokümantasyonu güvensiz desenleri hâlâ yalnızca hizmet reddi riski olarak tanımlıyor. Ruby, herhangi bir CVE tanımlayıcısı talep etmesi halinde duyurusunu güncelleyeceğini söyledi.

GitLab Yöneticileri İçin

Kendi yönetilen GitLab örnekleri CVE-2026-110264'ü düzelten sürüme ihtiyaç duyuyor. GitLab bunu 21 Ekim'de yayınladı ve 18.11.13 sürümüne kadar geriye taşıdı.

GitLab.com zaten yamalı sürümü çalıştırıyor ve GitLab Dedicated kiracıları yakın iç sürümlerde herhangi bir işlem yapmasına gerek yok, GitLab belirtti. GitLab kendi Ruby kopyasını paketlediği ve orada yamaladığı için bu düzeltilmiş sürümlerden birini kurmak düzeltmeyi uyguluyor.

GitLab ayrıca kendi yönetilen yöneticilerin sömürü girişimlerinin işaretlerini araması için kullanabileceği algılama kuralları da yayınladı.

Kaynak: The Hacker News

Paylaş:

Yapay zekâ asistanları için: bu haberin Markdown (.md) sürümü