CVE-2026-81728
Təsvir
Dolibarr 24.0.0 versiyasından əvvəlki versiyalarda CSV və XLSX idxal sehrbazında SQL inyeksiyası mövcuddur. Sehrbaz yeniləmə açarlarını htdocs/imports/import.php faylında GETPOST('updatekeys', 'array') vasitəsilə oxuyur və burada yalnız ümumi alphanohtml filtri tətbiq edilir: bu filtr HTML elementlərini silir, lakin SQL açar sözlərini, şərh markerlərini, mötərizələri, boşluqları və dırnaq işarələrini olduğu kimi saxlayır. Daha sonra htdocs/core/modules/import/import_csv.modules.php faylındakı import_insert() funksiyası təqdim edilmiş dəyərləri dövr edir və əvvəlcə nöqtə ehtiva etməyən dəyərlərə təsir etməyən preg_replace('/^.*\./i', '', $key) alias silmə əməliyyatını tətbiq etdikdən sonra $where[] = $key.' = '.$data[$key] ilə filtr qurur. Yığılan sətir $this->db->query() vasitəsilə icra edilir. İnyeksiya edilmiş SELECT sorğusu, idxal zamanı $lastinsertid dəyişəninə mənimsədilən sətir ID-sini müəyyən edir və bu, sonrakı UPDATE sorğusunun WHERE hədəfinə çevrilir. Beləliklə, hücumçunun seçdiyi tam ədədi qaytaran UNION SELECT həm istənilən cədvəl məzmununu sızdırır, həm də idxalın hansı sətri overwrite edəcəyini yönləndirir; kateqoriya bağlantı cədvəlləri üçün isə xam filtr massivi birbaşa həmin UPDATE sorğusuna daxil edilir. İnterfeys legitim sütun kodlarının sabit siyahısını təklif etsə də, server təqdim edilmiş dəyərləri heç vaxt bu siyahı ilə yoxlamır. İdxal icazəsi olan istifadəçi bundan istifadə edə bilər. 23.0.4 buraxılışına düzəliş daxil edilməmişdir; ağ siyahı (allow-list) testi 24.0.0 versiyasında əlavə edilmişdir.
Necə düzəltmək olar
- dolibarr dolibarr_erp\/crm24.0.0 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| dolibarr dolibarr_erp\/crm | v < 24.0.0 | 24.0.0 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.