
Imperva, hazırlanmış Brotli məlumatları vasitəsilə Node.js-də Node2Shell RCE-ni nümayiş etdirir
Imperva tədqiqatçıları xüsusi hazırlanmış Brotli məlumatlarından istifadə edərək rəsmi Node.js 24.22.0 Linux arm64 buraxılışında uzaqdan kod icrasını nümayiş etdirib və CVE-2026-111497 zəifliyini işə salıb. Node.js 21 oktyabrda düzəlişi dərc edib.
İstismar Nümayiş Edildi
Imperva tədqiqatçıları Node2Shell adlı konsept sübutunu təqdim edib. Bu sübut rəsmi Node.js 24.22.0 Linux arm64 obrazında uzaqdan kod icrasını təmin edir. Hücum xüsusi hazırlanmış Brotli sıxılmış məlumatları Node.js ilə birlikdə gələn Brotli dekoderinə ötürür və CVE-2026-111497 zəifliyini işə salır. İstismar test mühitində bir neçə cəhd tələb edib və yalnız həmin konkret buraxılışda uğurlu olub. Düzəldilmiş 24.22.1 buraxılışı zərərli məlumatları rədd edir və kod icrasının qarşısını alır.
Təsirlənən Tətbiqlər
Zəiflik Node.js-in daxil etdiyi Brotli dekoderində yerləşir, buna görə 22.x, 24.x və 26.x buraxılış xətlərində işləyən bütün tətbiqlər potensial olaraq risk altındadır. Xidmət dekoderə ya daxili fetch funksiyası vasitəsilə Brotli ilə sıxılmış cavabı oxuyanda, ya da middleware Brotli ilə sıxılmış sorğu gövdəsini dekodlaşdıranda çata bilər. Express 5-in gövdə parserləri, o cümlədən express.json, express.urlencoded, express.text və express.raw, artıq Brotli sorğu gövdələrini dekodlaşdırır. body-parser-in 2.0.0-dan 2.3.0-a qədər versiyaları da bunu edir. Adi Node.js HTTP serveri Brotli sorğu gövdələrini avtomatik dekodlaşdırmır.
Texniki Təfərrüatlar
Imperva qüsurun səbəbini Brotli axınında mümkünsüz blok keçidinin dekoder tərəfindən işlənməsində tapıb. Zərərli axın struktur qaydalarının istisna etdiyi blok növlərini elan edir, nəticədə dekoder daha çox giriş tələb edir və etibarsız vəziyyətdə davam edir. Yaddaş sanitizeri ilə aparılan test bu vəziyyətdən davam etmənin nəzərdə tutulmuş buferdən kənara yazdığını və zəifliyin əsasını təşkil edən hüduddan kənar yazmanı yaratdığını göstərib. Node.js problemi yuxarı axından gələn Brotli yamasını import etməklə həll edib və bu yama dekoderin problemli nöqtədə format xətası ilə dayanmasını təmin edir.
Riskin Azaldılması
Yeganə etibarlı həll yamalanmış Node.js buraxılışına yeniləmədir. 20.x kimi dəstək müddəti bitmiş xətlər düzəlişi almır və dəstəklənən xəttə köçürülməlidir. Duyuru icra mühiti üçün heç bir müvəqqəti həll göstərmir, buna görə dərhal yeniləyə bilməyən tətbiqlərin Node.js-in özündə ehtiyat variantı yoxdur. Imperva mümkün olduqda təsirlənən yollarda etibarsız Brotli trafikinin məhdudlaşdırılmasını tövsiyə edir. Vercel 21 oktyabrda daxil olan sorğularda hücumu bloklayan qaydalar əlavə edib, lakin bu qaydalar xarici serverlərdən alınan Brotli cavablarını əhatə etmir və yeniləməni əvəz etmir.
Mənbələr: The Hacker News
SiTech — AI ilə gücləndirilmiş veb hazırlanması
Sürətli və müasir saytlar qurur, AI-ı real biznes proseslərinə gətiririk. Layihəniz və ya sualınız var? Kömək etməyə hazırıq.