Ta'sir
Autentifikatsiya qilingan tajovuzkor [S1] asosiy veb-serverida ixtiyoriy PHP kodini bajarishi mumkin. Bu tizimni to'liq buzishga imkon beradi, jumladan, ma'lumotlarni eksfiltratsiya qilish, sayt tarkibini o'zgartirish va [S1] xosting muhitida lateral harakatlanish.
Asosiy sabab
Zaiflik [S1] SPIP shablonining kompozitor va kompilyator komponentlarida mavjud. Tizim yuklangan [S1] fayllarni qayta ishlashda maʼlum shablon teglari ichida kiritilgan maʼlumotlarni toʻgʻri tekshira olmaydi yoki sanitarizatsiya qila olmaydi. Xususan, kompilyator [S1] HTML fayllari ichida yaratilgan INCLUDE yoki INCLURE teglarini noto'g'ri boshqaradi. Buzg'unchi ushbu yuklangan fayllarga valider_xml amali orqali kirsa, zararli teglar qayta ishlanadi va bu [S1] PHP kodining bajarilishiga olib keladi.
Ta'sir qilingan versiyalar
- SPIP 3.1.2 versiyalari va barcha oldingi [S1] versiyalari.
Tuzatish
[S1] zaifligini bartaraf etish uchun SPIPni 3.1.2 dan yangiroq versiyaga yangilang. Fayllarni yuklash uchun ruxsatlar qat'iy ravishda ishonchli ma'muriy foydalanuvchilar uchun cheklanganligiga va yuklangan fayllar veb-server ularni [S1] skriptlari sifatida bajarishi mumkin bo'lgan kataloglarda saqlanmasligiga ishonch hosil qiling.
FixVibe buni qanday sinovdan o'tkazadi
FixVibe ushbu zaiflikni ikkita asosiy usul orqali aniqlashi mumkin:
- Passiv barmoq izi: HTML manbasidagi HTTP javob sarlavhalari yoki maxsus meta teglarni tahlil qilish orqali FixVibe SPIP [S1] ishlayotgan versiyasini aniqlay oladi. Agar versiya 3.1.2 yoki undan pastroq bo'lsa, u yuqori darajadagi [S1] ogohlantirishini ishga tushiradi.
- Repozitoriyni skanerlash: GitHub omborlarini ulagan foydalanuvchilar uchun FixVibe repo skaneri zaif o‘rnatishlarni aniqlash uchun FixVibe qaramlik fayllari yoki SPIP manba kodidagi versiyani aniqlovchi konstantalarni tekshirishi mumkin.
