Araştırmacılar, Juniper Networks’ün SRX güvenlik duvarlarını ve uzaktan kod yürütmeye (RCE) izin verebilecek EX anahtarlarını etkileyen yakın zamanda yamalı dört güvenlik açığının yanı sıra kavram kanıtını (PoC) istismar etme hakkında ek ayrıntılar yayınladı.
Junos OS güvenlik açıkları ve düzeltmeleri
Bu ayın başlarında Juniper Networks, SRX güvenlik duvarlarını ve EX anahtarlarını kullanan müşterilere, birbirine zincirlenmiş olarak saldırganların savunmasız cihazlarda uzaktan kod yürütmesine olanak tanıyan güvenlik açıklarını bildiren, döngü dışı bir güvenlik bülteni yayınladı.
Dört güvenlik açığı iki kategoriye ayrılabilir:
- CVE-2023-36846 ve CVE-2023-36847, kritik bir işlevin (cihaz yapılandırması için kullanılan J-Web kullanıcı arayüzü aracılığıyla dosya yükleme) önceden kimlik doğrulaması yapılmadan kullanılmasına izin verebilir
- CVE-2023-36844 ve CVE-2023-36845, saldırganların yüklenen bir dosyanın adını belirterek belirli PHP ortam değişkenlerini değiştirmesine izin verebilir
Juniper, müşterilerini ya cihazlarını bu kusurlar için yamalar içeren bir Junos OS sürümüne güncellemeye ya da J-Web kullanıcı arayüzüne erişimi devre dışı bırakmaya ya da sınırlamaya çağırdı.
Ayrıca güvenlik açıklarının güvenlik araştırmacıları tarafından kendilerine bildirildiğini de belirttiler; güvenlik açıklarının aktif olarak istismar edildiğinden bahsedilmedi.
Durum yakında değişebilir
WatchTowr Labs araştırmacıları Aliz Hammond ve Sonny, Junos işletim sistemi kod tabanına yaptıkları derinlemesine inceleme ve bu güvenlik açıklarını başarılı bir şekilde tespit edip kullanmaları hakkında bir gönderi yayınladılar.
Rastgele bir PHP dosyası yüklemek için CVE-2023-36846’yı kullanmak nispeten kolaydı ancak çalıştırmak daha zordu. “Junos işletim sistemini (OS), yetkisiz yazılımlara ve cihazınızın bütünlüğünü tehlikeye atabilecek faaliyetlere karşı koruyan bir dosya imzalama ve doğrulama şeması olan Verified Exec (diğer adıyla veriexec) tarafından geçici olarak engellendiler, ancak bu sorunu aşmayı başardılar” Sistemde zaten bulunan ikili dosyaları kullanarak.
“Kısa sürede kullanabileceğimizi fark ettik. PHPRC PHP’ye yapılandırma dosyasının nerede bulunacağını bildiren ortam değişkeni, genellikle denir php.inidiye açıkladılar.
“İlk hatamızı kendi yapılandırma dosyamızı yüklemek için kullanabiliriz ve PHPRC PHP’yi ona yönlendirmek için. PHP çalışma zamanı daha sonra dosyamızı gerektiği gibi yükleyecektir; bu dosya daha sonra bir auto_prepend_file İkinci bir dosyayı belirten giriş de ilk hatamızı kullanarak yüklendi. Bu ikinci dosya normal PHP kodunu içerir ve bu kod daha sonra diğer kodlardan önce PHP çalışma zamanı tarafından yürütülür.
Son olarak, tüm süreci bir PoC istismarıyla otomatikleştirdiler.
“Kullanımın basitliği ve JunOS cihazlarının bir ağda sahip olduğu ayrıcalıklı konum göz önüne alındığında, büyük ölçekli sömürüyü görmek bizi şaşırtmaz” dediler.
Juniper’in istismar riskinin yamalanması/azaltılması konusundaki tavsiyesini yinelediler, ancak aynı zamanda saldırı girişimlerine ilişkin olası göstergeleri de sağladılar. Cihazdaki PHP günlük dosyalarındaki belirli hata mesajlarının, geçerli bir oturum olmadan anonim erişime veya kimlik doğrulama bilgisi sağlanmadan bir API uç noktası aracılığıyla işlem yapılmaya çalışıldığına işaret edebileceğini belirttiler.