Giriş
Node.js ekosistemində geniş yayılmış, model-view-controller (MVC) strukturlu bir çərçivə olan AdonisJS istifadəçiləri üçün tənqidi bir təhlükəsizlik xəbərdarlığı yayımlanıb. Bu xəbərdarlıq, AdonisJS-in əsas hissəsi olan “@adonisjs/bodyparser” NPM paketində aşkarlanan və CVSS (Common Vulnerability Scoring System) üzrə 9.2 kimi yüksək balla qiymətləndirilən kritik zəifliklə əlaqədardır.
CVE-2026-21440 identifikatoru ilə izlənilən bu boşluq, uzaqdan hücum edən şəxslərə server fayl sistemində ixtiyari fayllar (Arbitrary Files) yaratmağa və ya mövcud faylların üzərinə yazmağa imkan verə bilər. Bu isə, öz növbəsində, serverin tam kompromitasiyasına və potensial olaraq Arbitrar Kodun İcrasına (RCE) gətirib çıxara biləcək çox ciddi bir təhdiddir. Təhlükəsizlik mütəxəssisləri, bu paketi istifadə edən bütün təşkilatlara və şəxslərə təcili yenilənmə tövsiyə edirlər.
Texniki Detallar
Aşkarlanan bu boşluq mahiyyətcə Yol Keçidi (Path Traversal) zəifliyidir. Zəiflik “@adonisjs/bodyparser” paketinin faylların serverə yüklənməsi və emalı üçün cavabdeh olan multipart sorğularla işləmə mexanizmində mövcuddur.
Yol keçidi zəiflikləri adətən proqram təminatının istifadəçi tərəfindən daxil edilən fayl adlarını və ya yolları adekvat şəkildə yoxlamaması nəticəsində yaranır. Bu halda, hücumçu xüsusi olaraq hazırlanmış fayl adı (məsələn, `../../../etc/passwd` və ya `../uploads/shell.php`) vasitəsilə hədəf serverin fayl sistemində istədiyi qovluğa keçə bilər.
**CVE-2026-21440-in Əsas Mexanizmi:**
Bodyparser paketi fayl yükləmə prosesində gələn fayl adını təmizləmə (sanitization) prosesini düzgün yerinə yetirmir. Bu boşluqdan istifadə edərək, hücumçu `multipart/form-data` sorğusu daxilindəki fayl adını manipulyasiya edərək, yüklənən faylın serverdə saxlanacağı yeri (default yükləmə qovluğundan kənara) yönləndirir. Əgər bu yüklənən fayl icra edilə bilən kod (məsələn, `webshell`) ehtiva edirsə, hücumçu server üzərində nəzarəti ələ keçirə bilər.
Təhlükənin Miqyası
CVSS v3.1 qiymətləndirməsinə görə 9.2 balla (Kritik) qiymətləndirilən bu zəifliyin təsiri olduqca dağıdıcıdır. Bu, sadə bir məlumat sızması deyil, serverin bütövlüyünü tamamilə pozmağa imkan verən bir boşluqdur. Təhlükənin miqyasını aşağıdakı aspektlərdən görmək olar:
- **Gizliliyin İhlalı (Confidentiality Impact):** Hücumçu serverdəki hər hansı bir faylı (məsələn, konfiqurasiya faylları, şifrələr bazası və s.) əldə etmək üçün path traversal metodu ilə onu özünün idarə etdiyi yerdən əlçatan edə bilər.
- **Bütövlüyün Pozulması (Integrity Impact):** Serverdə ixtiyari fayl yaratmaq imkanı, mövcud sistem fayllarını dəyişdirmək və ya zərərli skriptlər yerləşdirmək deməkdir.
- **Mövcudluğun Pozulması (Availability Impact):** Zərərli fayllar serverin işini dayandırmağa və ya xidmətdən imtina (DoS) vəziyyətinə gətirib çıxara bilər.
- **Hücum Vektoru (Attack Vector):** Hücum uzaqdan (Remote) və aşağı mürəkkəbliklə icra oluna bilər. İstifadəçi autentifikasiyasına ehtiyac yoxdur.
Bu zəiflik, xüsusilə fayl yükləmə funksiyasını istifadə edən və “@adonisjs/bodyparser” paketindən asılı olan bütün AdonisJS layihələrini birbaşa hədəf alır.
Tövsiyələr və Həll Yolları
AdonisJS ekosisteminin idarəçiləri tərəfindən zəifliyi aradan qaldıran yenilənmiş versiyalar artıq istifadəyə verilib. Kibertəhlükəsizlik prinsiplərinə uyğun olaraq, hər hansı bir kompromitasiya riskini minimuma endirmək üçün təcili tədbirlər görülməlidir.
**Təcili Addımlar:**
- **Paketi Yeniləyin:** “@adonisjs/bodyparser” paketini dərhal son stabil versiyasına yeniləyin. Yenilənmiş versiyalarda yol keçidi zəifliyini aradan qaldıran zəruri yoxlamalar və təmizləmə mexanizmləri tətbiq olunub.
- **Asılılıq Auditini Aparın:** Layihələrinizdə bu paketdən asılı olan digər modulları müəyyənləşdirin və onların da uyğunluğunu yoxlayın.
- **İcazələri Məhdudlaşdırın:** Veb serverin istifadə etdiyi sistem istifadəçisinin (məsələn, `www-data`) kritik sistem qovluqlarına (məsələn, `/etc`, `/root`) yazma icazələrini minimuma endirin. Bu, hücumun təsir dairəsini məhdudlaşdıra bilər.
- **Girişlərin Monitorinqi:** Serverdə qeyri-adi fayl yaratma cəhdlərini və ya naməlum IP ünvanlarından gələn `multipart/form-data` sorğularının sayını izləmək üçün giriş jurnallarını (logs) aktiv şəkildə monitorinq edin.
Nəticə
CVE-2026-21440, açıq mənbəli (open-source) ekosistemlərdə paket asılılıqlarının nə qədər həssas ola biləcəyinin növbəti xatırlatmasıdır. “@adonisjs/bodyparser” kimi əsas komponentlərdəki tənqidi boşluqlar hədəf sistemlər üçün sürətli və dağıdıcı nəticələr verə bilər. Xaker.az olaraq, bütün Node.js/AdonisJS istifadəçilərinə proaktiv yanaşmanı qorumağı və yeniləmələri gecikdirmədən tətbiq etməyi tövsiyə edirik.