
React va Next.js serverlariga bitta POST so‘rovi orqali xizmat ko‘rsatishni izdan chiqarish imkonini beruvchi zaiflik aniqlandi!
React Server Components (RSC) texnologiyasida yuqori darajali xavfsizlik zaifligi aniqlandi. CVE-2026-23870 raqami bilan ro‘yxatga olingan ushbu zaiflik orqali tajovuzkor maxsus tayyorlangan bitta HTTP POST so‘rovini yuborish orqali serverga ortiqcha yuklama tushirishi mumkin. Natijada server sekinlashishi yoki vaqtincha ishlamay qolishi, foydalanuvchilar esa veb-sayt va xizmatlardan foydalana olmasligi mumkin.
Zaiflikning xavflilik darajasi CVSS 3.1 baholash tizimi bo‘yicha 10 balldan 7,5 ballni tashkil etadi va yuqori darajali deb baholangan. Ushbu muammo React Server Components texnologiyasidan foydalanadigan, jumladan, Next.js platformasida yaratilgan ayrim veb-ilovalarga ta’sir qilishi mumkin. Zaiflikni bartaraf etish uchun React ishlab chiquvchilari tomonidan tegishli xavfsizlik yangilanishlari taqdim etilgan.
Zaiflikning kelib chiqish sababi nimada?
React — foydalanuvchi interfeyslarini yaratishda qo‘llaniladigan JavaScript kutubxonasi. Uning React Server Components texnologiyasi ayrim komponentlarni server tomonida bajarish va ular bilan bog‘liq ma’lumotlarni mijoz qurilmasiga uzatish imkonini beradi. Next.js kabi platformalarda ushbu texnologiya ilovalarning ishlashini tashkil etish, server bilan o‘zaro aloqani amalga oshirish va ma’lumotlarni qayta ishlashda muhim o‘rin tutadi.
Server Actions mexanizmi esa veb-sahifadagi shakllar yoki boshqa interfeys elementlari orqali serverdagi funksiyalarni chaqirish imkonini beradi. Bunda foydalanuvchidan kelgan HTTP so‘rovi server tomonidan tahlil qilinadi, yuborilgan ma’lumotlar qayta tiklanadi va tegishli funksiya bajarilishiga tayyorlanadi.
CVE-2026-23870 zaifligi aynan shu jarayondagi ma’lumotlarni qayta ishlash mexanizmi bilan bog‘liq. Muayyan turdagi ichki havolalar va shakl maydonlari mavjud bo‘lgan so‘rovni tahlil qilishda React ma’lumotlar ro‘yxatini qayta-qayta ko‘zdan kechirishi mumkin. Natijada, so‘rov tarkibidagi elementlar soni ortgani sari bajarilishi lozim bo‘lgan amallar miqdori keskin ko‘payadi.
Oddiy sharoitda server kelib tushgan so‘rovni tegishli tartibda qayta ishlab, javob qaytaradi. Biroq mazkur zaiflikdan foydalanilganda, serverning o‘zi so‘rovni tahlil qilish uchun nomutanosib darajada ko‘p hisoblash resurslarini sarflashi mumkin. Shu sababli muammoning asosiy sababi so‘rovning hajmidagina emas, balki uning ichki tuzilmasini qayta ishlashdagi samarasiz algoritmik yondashuvda namoyon bo‘ladi.
Bitta so‘rov qanday qilib server faoliyatini izdan chiqarishi mumkin?
Zaiflikning xavfliligi shundaki, tajovuzkor serverga juda katta hajmdagi ma’lumotlarni yubormasdan ham sezilarli hisoblash yuklamasini yuzaga keltirishi mumkin.
Tadqiqotchi Simon Koeck tomonidan e’lon qilingan amaliy namoyishda hajmi taxminan 900 KB bo‘lgan maxsus shakllantirilgan so‘rov serverda katta hajmdagi takroriy hisoblash amallarini bajarishga sabab bo‘lishi mumkinligi ko‘rsatilgan. Namoyishda 10 000 ta maxsus havola va 10 000 ta oddiy shakl maydoni mavjud bo‘lgan holatda, ayrim amallar soni taxminan 100 millionta satr taqqoslashigacha yetishi mumkinligi tushuntirilgan. [3]
Bu ko‘rsatkich muayyan ma’lumotlar tuzilmasi va qayta ishlash yo‘li uchun keltirilgan misol bo‘lib, barcha serverlarda aynan shunday natija kuzatilishini anglatmaydi.
Muammo, ayniqsa, Node.js muhitida ishlaydigan serverlar uchun jiddiy ahamiyatga ega. Chunki JavaScript bajarilishining asosiy oqimida uzoq davom etadigan sinxron hisoblashlar boshqa so‘rovlarning o‘z vaqtida qayta ishlanishiga xalaqit berishi mumkin.
Natijada:
- protsessorning yuklanish darajasi keskin ortishi;
- serverning boshqa foydalanuvchi so‘rovlariga javob berishi sekinlashishi;
- so‘rovlarning belgilangan vaqt ichida bajarilmasligi va vaqt tugashi bilan yakunlanishi;
- HTTP 503 kabi xizmat vaqtincha mavjud emasligini bildiruvchi xatolar yuzaga kelishi;
- ayrim holatlarda xotira resurslarining tugashi yoki server jarayonining ishdan chiqishi mumkin.
Agar bunday so‘rovlar takroran yuborilsa, veb-ilovaning muayyan nusxasi uzoq vaqt davomida xizmat ko‘rsata olmay qolishi ehtimoli ortadi. Yuklamani taqsimlovchi tizimlar yoki holatni tekshiruvchi mexanizmlar esa javob bermayotgan serverni nosog‘lom deb baholab, uni xizmat ko‘rsatish jarayonidan vaqtincha chiqarishi mumkin.
Shu tariqa, dastlab bitta serverga qaratilgan so‘rov butun veb-ilovaning ishlash barqarorligiga salbiy ta’sir ko‘rsatishi mumkin.
Qaysi tizimlar va dasturiy paketlar xavf ostida?
Zaiflik React Server Components bilan bog‘liq quyidagi dasturiy paketlarga taalluqlidir:
react-server-dom-webpack;react-server-dom-turbopack;react-server-dom-parcel.
Mazkur paketlarning quyidagi versiyalari zaif deb ko‘rsatilgan:
| React versiyasi | Zaif versiyalar | Tuzatilgan versiya |
|---|---|---|
| 19.0.x | 19.0.0–19.0.5 | 19.0.6 |
| 19.1.x | 19.1.0–19.1.6 | 19.1.7 |
| 19.2.x | 19.2.0–19.2.5 | 19.2.6 |
Ushbu zaiflikdan foydalanish imkoniyati Next.js platformasining ayrim versiyalari va konfiguratsiyalarida ham mavjud. Xususan, rasmiy tavsiyaga ko‘ra, Next.js 13.x, 14.x, 15.x va 16.x tarmoqlarining App Router imkoniyatidan foydalanadigan tegishli zaif versiyalari ta’sir doirasiga kiradi. Next.js uchun tuzatilgan versiyalar sifatida 15.5.16 va 16.2.5 ko‘rsatilgan. Boshqa versiya tarmoqlarida esa tegishli tarmoq uchun chiqarilgan xavfsizlik yangilanishini o‘rnatish zarur. [2]
Bunda faqat loyihaning asosiy react yoki next versiyasini tekshirish bilan cheklanib qolmaslik lozim. Zaif paketlar boshqa kutubxonalar yoki freymvorklar tarkibida bilvosita bog‘liqlik sifatida o‘rnatilgan bo‘lishi mumkin. Shu sababli dasturiy ta’minotning amalda ishlatilayotgan bog‘liqliklar daraxtini ham tekshirish muhim hisoblanadi.
Shuni ham ta’kidlash kerakki, React’dan foydalanadigan barcha veb-saytlar avtomatik ravishda ushbu zaiflik ta’siriga tushmaydi. Server komponentlari va Server Functions imkoniyatlaridan foydalanmaydigan, faqat mijoz tomonida ishlaydigan ilovalar mazkur zaiflikning bevosita ta’sir doirasiga kirmaydi.
Zaiflikdan foydalanish uchun tizimga kirish talab etiladimi?
Zaiflikning xavfini oshiruvchi jihatlardan biri — ayrim holatlarda tajovuzkordan tizimga oldindan kirish huquqi yoki foydalanuvchining qo‘shimcha harakati talab etilmasligidir.
Agar serverda zaif komponent ishlatilayotgan bo‘lsa va tegishli Server Function manzili tarmoq orqali ochiq bo‘lsa, tajovuzkor maxsus shakllantirilgan HTTP so‘rovini yuborish orqali server resurslariga ortiqcha yuklama tushirishga urinishi mumkin.
Bu jarayonda himoyalangan ma’lumotlarni qo‘lga kiritish yoki tizimga noqonuniy kirish shart bo‘lmasligi mumkin. Asosiy maqsad serverning hisoblash imkoniyatlarini band qilish va qonuniy foydalanuvchilarga xizmat ko‘rsatishini qiyinlashtirishdan iborat.
Shuningdek, muammo Server Action funksiyasining o‘zida emas, balki funksiya ishga tushishidan oldin bajariladigan so‘rovni tahlil qilish bosqichida yuzaga keladi. Shu bois, faqat Server Action ichida amalga oshirilgan autentifikatsiya, avtorizatsiya yoki kiruvchi ma’lumotlarni tekshirish choralariga tayanish yetarli bo‘lmasligi mumkin.
Biroq zaiflikdan amalda foydalanish imkoniyati ilovaning konfiguratsiyasi, tegishli endpointning ochiqligi, ishlatilayotgan paketlar versiyasi va qo‘shimcha himoya mexanizmlariga bog‘liq.
Zaiflik qanday bartaraf etildi?
React ishlab chiquvchilari muammoni bartaraf etish uchun shakl ma’lumotlarini qayta ishlash mexanizmini o‘zgartirdi. Yangilangan yondashuvda ma’lumotlar ro‘yxatini har bir maxsus havola uchun boshidan oxirigacha qayta ko‘zdan kechirish o‘rniga, maydonlarni samaraliroq tartibda ko‘rib chiqish va qayta ishlash imkoniyati joriy etilgan.
Bu o‘zgarish takroriy hisoblashlar miqdorini kamaytirib, maxsus shakllantirilgan so‘rovlar orqali protsessor resurslarini haddan tashqari band qilishga olib keladigan sharoitni bartaraf etishga qaratilgan.
Tizim administratorlari va dasturchilar uchun eng muhim chora — zaif komponentlarni tegishli tuzatilgan versiyalarga yangilashdir. Yangilanishdan so‘ng ilova qayta yig‘ilishi, zarur bo‘lsa, konteyner obrazlari yangilanishi va o‘zgartirilgan versiyalar barcha tegishli muhitlarda, jumladan, sinov hamda ishlab chiqarish serverlarida ishga tushirilishi lozim.
Tashkilotlar qanday choralar ko‘rishi kerak?
Mazkur zaiflikdan kelib chiqadigan xavflarni kamaytirish uchun quyidagi amaliy choralarni ko‘rish tavsiya etiladi.
1. Dasturiy bog‘liqliklarni inventarizatsiya qilish. Tashkilot balansidagi veb-ilovalar, ochiq internet resurslari va ichki xizmatlarda React Server Components hamda Next.js texnologiyalaridan foydalanilayotganini aniqlash zarur. Paketlarning amaldagi versiyalari va bilvosita bog‘liqliklari tekshirilishi kerak.
2. Xavfsizlik yangilanishlarini o‘rnatish. Zaif versiyalardan foydalanayotgan tizimlarda React Server Components paketlari va tegishli Next.js versiyasi ishlab chiquvchining rasmiy tavsiyasiga muvofiq yangilanishi lozim. Yangilanishni faqat ishlab chiqish muhitida amalga oshirish yetarli emas — o‘zgarishlar amaldagi serverlarga ham tatbiq etilishi zarur.
3. HTTP so‘rovlarini filtrlash va cheklash. Veb-ilovalar oldida joylashgan WAF, teskari proksi va boshqa tarmoq himoyasi vositalarida POST so‘rovlari hajmini cheklash, so‘rovlar chastotasini nazorat qilish hamda vaqt chegaralarini belgilash maqsadga muvofiq. Bunday choralar xavfni kamaytirishi mumkin, biroq zaif komponentni yangilash o‘rnini bosa olmaydi.
4. Server resurslarini kuzatib borish. Protsessor yuklamasining keskin ortishi, xotira sarfining ko‘payishi, so‘rovlar navbatining uzayishi, HTTP 503 xatolarining ko‘payishi va serverning holatni tekshirish so‘rovlariga javob bermay qolishi kabi belgilar monitoring qilinishi kerak.
5. Shubhali faollikni tahlil qilish. Server Actions yoki Server Functions bilan bog‘liq endpointlarga yuborilayotgan noodatiy POST so‘rovlari, qisqa vaqt ichidagi ko‘p sonli so‘rovlar va ilovaning odatiy ish yuklamasiga mos kelmaydigan yuqori protsessor sarfi alohida tekshirilishi lozim. Aniqlangan hodisalar bo‘yicha jurnallar saqlanishi va zarur hollarda hodisaga javob berish tartibi ishga tushirilishi kerak.
6. Himoya choralarini kompleks tashkil etish. Autentifikatsiya va avtorizatsiyani to‘g‘ri sozlash, tarmoq darajasida cheklovlar joriy etish, server resurslarini kuzatish, zaxira imkoniyatlarini rejalashtirish va dasturiy ta’minotni muntazam yangilash birgalikda amalga oshirilishi zarur.
CVE-2026-23870 zaifligi veb-ilovalar xavfsizligida nafaqat noqonuniy kirish yoki ma’lumotlarni o‘g‘irlash, balki server resurslaridan samarasiz foydalanish oqibatida xizmatlarning ishlashdan to‘xtab qolishi ham jiddiy tahdid ekanini ko‘rsatadi.
Ayniqsa, internet orqali ochiq bo‘lgan va React Server Components yoki Next.js Server Actions imkoniyatlaridan foydalanadigan tizimlarda mazkur zaiflikni e’tiborsiz qoldirish xizmatlar uzluksizligiga salbiy ta’sir ko‘rsatishi mumkin.
Shu sababli tashkilotlar o‘z axborot tizimlarida foydalanilayotgan dasturiy komponentlarni tekshirishi, zaif versiyalarni bartaraf etishi, xavfsizlik yangilanishlarini o‘z vaqtida o‘rnatishi va server faoliyatini doimiy monitoring qilib borishi lozim.
Asosiy tavsiya: zaiflikni bartaraf etishning ustuvor chorasi — React Server Components va tegishli Next.js komponentlarini ishlab chiquvchi tomonidan tavsiya etilgan xavfsiz versiyalarga yangilashdir. Tarmoq filtrlari va so‘rovlar chastotasini cheklash esa qo‘shimcha himoya qatlami sifatida qo‘llanilishi kerak.



