R programlama dilinde, özel hazırlanmış RDS ve RDX dosyalarının seri durumdan çıkarılması üzerine rastgele kod yürütülmesine izin veren yeni bir güvenlik açığı keşfedildi.
R, özel veri analizi modelleri geliştiren ve kullanan istatistikçiler ve veri madencileri arasında özellikle popüler olan açık kaynaklı bir programlama dilidir ve aynı zamanda yeni ortaya çıkan AI/ML alanı tarafından giderek daha fazla benimsenmektedir.
HiddenLayer’daki araştırmacılar yakın zamanda R’de, kurban R Veri Serileştirme (RDS) veya R paket dosyalarını (RDX) açtığında saldırganların hedef makinelerde rastgele kod çalıştırmasına olanak tanıyan, CVE-2024-27322 (CVSS v3: 8.8) olarak takip edilen bir güvenlik açığı keşfetti. ).
Güvenlik açığı, R’nin serileştirme (‘saveRDS’) ve seri durumdan çıkarma (‘readRDS’) işlemlerini, özellikle söz verilen nesneler ve “tembel değerlendirme” aracılığıyla kullanma şeklinden yararlanıyor.
Saldırganlar, RDS dosyasının meta verilerine, seri durumdan çıkarma sırasında değerlendirilen ve kodun yürütülmesiyle sonuçlanan ifadeler biçiminde isteğe bağlı kod içeren söz nesneleri gömebilir.
Saldırının bir sosyal mühendislik bileşeni içermesi için kurbanın bu dosyaları çalıştırmaya ikna edilmesi veya kandırılması gerekir.
Ancak saldırganlar, paketleri yaygın olarak kullanılan depolara dağıtarak ve kurbanların bunları indirmesini bekleyerek daha pasif bir yaklaşımı tercih edebilir.
Etki ve hafifletme
HiddenLayer, CVE-2024-27322’nin kritik sektörlerdeki yaygın kullanımı ve yeterli kontroller olmadan veri analizi ortamlarında dağıtılan çok sayıda paket nedeniyle geniş kapsamlı çıkarımlara sahip olduğunu açıklıyor.
“GitHub’da arama yaptıktan sonra ekibimiz, bu güvenlik açığından yararlanmanın birçok yolundan biri olan readRDS’ye 135.000’den fazla R kaynak dosyasında başvurulduğunu keşfetti. Depoları inceleyerek kullanımın büyük bir kısmının güvenilmeyen, kullanıcı tarafından yapıldığını gördük. R Studio, Facebook, Google, Microsoft, AWS ve diğer büyük yazılım satıcılarının projelerini içeren potansiyel olarak savunmasız kod içeren bazı kaynak dosyalar, programı çalıştıran sistemin tamamen tehlikeye atılmasına yol açabilecek veriler sağladı.” – Gizli Katman
CERT/CC, doğrulanmamış paketlerde R ve readRDS işlevini kullanan projeleri ve kuruluşları, CVE-2024-27322’yi ele alan R Core sürüm 4.4.0’a güncelleme ihtiyacı konusunda uyarmak için bir uyarı yayınladı.
24 Nisan 2024’te yayımlanan R Core v4.4.0, serileştirme akışında vaatlerin kullanılmasına kısıtlamalar getirerek rastgele kod yürütülmesini engeller.
Hemen yükseltme yapamayan veya ek güvenlik katmanları uygulamak isteyen kuruluşlar, temel sistemde kod yürütülmesini önlemek için RDS/RDX dosyalarını sanal alanlar ve kapsayıcılar gibi yalıtılmış ortamlarda çalıştırmalıdır.