Açık kaynaklı Traccar GPS izleme sisteminde, kimliği doğrulanmamış saldırganların belirli koşullar altında uzaktan kod yürütme amacıyla yararlanabileceği iki güvenlik açığı ortaya çıkarıldı.
Horizon3.ai araştırmacısı Naveen Sunkavally, her iki güvenlik açığının da yol geçiş kusurları olduğunu ve Traccar 5 için varsayılan yapılandırma olan misafir kaydı etkinleştirildiğinde silah olarak kullanılabileceğini söyledi.
Eksikliklerin kısa açıklaması şu şekildedir:
- CVE-2024-24809 (CVSS puanı: 8.5) – Yol Gezinme: ‘dir/../../filename’ ve tehlikeli türdeki dosyaların sınırsız yüklenmesi
- CVE-2024-31214 (CVSS puanı: 9.7) – Cihaz görüntüsü yüklemesindeki kısıtlanmamış dosya yükleme güvenlik açığı uzaktan kod yürütülmesine yol açabilir
Sunkavally, “CVE-2024-31214 ve CVE-2024-24809’un net sonucu, bir saldırganın dosya sisteminde herhangi bir yere keyfi içerikli dosyalar yerleştirebilmesidir,” dedi. “Ancak bir saldırganın dosya adı üzerinde yalnızca kısmi kontrolü vardır.”
Sorunlar, programın cihaz görüntü dosyası yüklemelerini nasıl ele aldığıyla ilgilidir ve bir saldırganın dosya sistemindeki belirli dosyaların üzerine yazmasına ve kod yürütmeyi tetiklemesine etkili bir şekilde izin verir. Buna aşağıdaki adlandırma biçimine uyan dosyalar dahildir –
- device.ext, saldırganın ext’i kontrol edebileceği ancak bir uzantı OLMALIDIR
- blah”, saldırganın blah’ı kontrol edebileceği ancak dosya adının çift tırnak işaretiyle bitmesi gerektiği yer
- blah1″;blah2=blah3, saldırganın blah1, blah2 ve blah3’ü kontrol edebileceği, ancak çift tırnak işareti noktalı virgül dizisinin ve eşittir simgesinin mevcut olması GEREKİR
Horizon3.ai tarafından tasarlanan varsayımsal bir kavram kanıtı (PoC) kapsamında, saldırgan İçerik Türü başlığındaki yol geçişini kullanarak bir crontab dosyası yükleyebilir ve saldırgan ana bilgisayarda ters kabuk elde edebilir.
Ancak bu saldırı yöntemi, crontab dosyalarında nokta veya çift tırnak işaretinin bulunmasını engelleyen dosya adlandırma kısıtlamaları nedeniyle Debian/Ubuntu tabanlı Linux sistemlerinde işe yaramıyor.
Alternatif bir mekanizma, Traccar’ın kök düzeyinde bir kullanıcı olarak kurulmasından yararlanarak bir çekirdek modülünü düşürmek veya bir donanım olayı her ortaya çıktığında keyfi bir komutu çalıştıracak şekilde bir udev kuralı yapılandırmak olabilir.
Duyarlı Windows örneklerinde, uzaktan kod yürütme, C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp klasörüne “device.lnk” adlı bir kısayol (LNK) dosyası yerleştirilerek de gerçekleştirilebilir; bu dosya daha sonra herhangi bir kurban kullanıcı Traccar ana bilgisayarına oturum açtığında yürütülür.
Traccar 5.1 ila 5.12 sürümleri CVE-2024-31214 ve CVE-2024-2809’a karşı savunmasızdır. Sorunlar, varsayılan olarak kendi kendini kaydetmeyi kapatan ve böylece saldırı yüzeyini azaltan Traccar 6’nın Nisan 2024’te yayınlanmasıyla giderildi.
“Kayıt ayarı doğruysa, readOnly yanlışsa ve deviceReadonly yanlışsa, kimliği doğrulanmamış bir saldırgan bu güvenlik açıklarından yararlanabilir,” dedi Sunkavally. “Bunlar Traccar 5 için varsayılan ayarlardır.”