CVE-2026-82732
Təsvir
ash-project ash_typescript daxilindəki yanlış giriş validasiyası zəifliyi uzaqdakı hücumçuya tipləndirilmiş kontroller marşrutlarında elan edilmiş icazə siyahısından və ya məhdudiyyətlərdən kənar arqument dəyərləri göndərməyə imkan verir. lib/ash_typescript/typed_controller/request_handler.ex faylındakı AshTypescript.TypedController.RequestHandler funksiyası Ash.Type.cast_input/3 funksiyasını çağırır və {:ok, cast} nəticəsini tam şəkildə validasiya olunmuş kimi qəbul edir. Ash-də bunlar ayrı addımlardır: cast_input/3 yalnız termini çevirir, arqument üzərində elan edilmiş hər bir məhdudiyyət isə bu yolda heç vaxt çağırılmayan Ash.Type.apply_constraints/3 tərəfindən tətbiq edilir. Buna görə də one_of, max_length, min və max, həmçinin match kimi məhdudiyyətlər fəaliyyətsiz qalır, beləliklə, elan edilmiş icazə siyahısından kənar dəyər qəbul edilir və marşrut idarəedicisinə ötürülür. Kod generatoru eyni məhdudiyyətləri generatsiya edilmiş TypeScript tiplərinə əks etdirir, buna görə də icazə siyahısı TypeScript çağıranı üçün tətbiq olunmuş kimi görünür, lakin digər istənilən HTTP kliyenti bunu görməzdən gəlir. Boş sətirin nil-ə normallaşdırılması da apply_constraints daxilində yerləşdiyi üçün allow_nil?: false yoxlaması tələb olunan arqument üçün "" dəyərini qəbul edir. Məhdudiyyətin rol, status və ya sıralama istiqamətini tənzimlədiyi hallarda, bu, imtiyazların yüksəldilməsi və ya vəziyyət maşınının (state-machine) yan keçilməsinə səbəb olur. Bu problem ash_typescript versiya 0.15.0-dan 0.18.0-a qədər olan versiyalara təsir edir.
Necə düzəltmək olar
- ash-project ash_typescript0.18.0, 21ab6f1229a4dccdb56bc37ed437d9672a0c4a4e və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| ash-project ash_typescript | 0.15.0 ≤ v < 0.18.0, 546a15e1a2d7dbf1df2d5a6ee4404bc3da87852e ≤ v < 21ab6f1229a4dccdb56bc37ed437d9672a0c4a4e | 0.18.0, 21ab6f1229a4dccdb56bc37ed437d9672a0c4a4e |
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.