CVE-2026-52763
Təsvir
YesWiki PHP-də yazılmış wiki sistemidir. 4.6.6 versiyasından əvvəl recentchanges əməliyyatı (actions/recentchanges.php) iki ayrı parametr fəzasından period arqumentini qəbul edir. Ağ siyahı yalnız URL formasını ['day','week','month'] siyahısına uyğun yoxlayır. Əməliyyat-arqument forması heç bir yoxlama olmadan else budağını tutur və dəyər PageManager::getRecentlyChanged() funksiyasına ötürülür, burada isə heç bir escaping və ya parametrləşdirmə olmadan WHERE time >= '...' ORDER BY time DESC bəndinə interpolasiya edilir. UNION əsaslı inyeksiya uğur qazanır, sızan sətirlər cavab səhifəsində göstərilir, beləliklə trigger səhifəsinin istənilən ziyarətçisi ekfiltrasiya edilmiş məlumatları görür. Zəiflik trigger səhifəsini saxlaya bilən hər kəsə YesWiki verilənlər bazasından ixtiyari oxuma imkanı verir. Standart quraşdırmada (default_write_acl='*') bu, səhifə-redaktə formasındakı hashcash JS yoxlaması şərti ilə anonim istifadəçiləri də əhatə edir. Trigger səhifəsi saxlanıldıqdan sonra hər sonrakı baxış inyeksiyanı işə salır, çünki SQLi saxlanılmış formadadır. Saxlanılmış SQL inyeksiyası səhifə-redaktə axını vasitəsilə əlçatandır və ixtiyari verilənlər bazası oxumasına imkan verir. Bu problem 4.6.6 versiyasında düzəldilmişdir.
Necə düzəltmək olar
- yeswiki/yeswiki4.6.6 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| yeswiki/yeswikiPackagist | v < 4.6.6 | 4.6.6 |
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.