CVE-2026-77454
Təsvir
ash-project ash_sql komponentindəki yanlış avtorizasiya zəifliyi, həm limit (və ya from_many?), həm də parent(...)-ə istinad edən filtr və ya sıralama təyin edilmiş əlaqə üzərindən exists/2 kimi ifadə olunan scoping və ya avtorizasiya filtrinin çağırıcı tərəfindən yan keçilməsinə şərait yaradır. AshSql.Join.related_query/3 belə əlaqələr üçün çağırıcı tərəfindən təmin edilən exists predikatını ötürür və onu limit_from_many/5 funksiyasına həvalə edir. Əlaqənin öz filtri və ya sıralaması parent(...)-ə istinad etdikdə, limit_from_many/5 həm limiti, həm də predikatı silən budaqa ilə işləyir və heç bir predikatı olmayan sadə korrelyasiyalı EXISTS qaytarır. Nəticədə yoxlama, hər hansı əlaqəli sətiri olan bütün qeydləri uyğun hesab edir. Ən kritik halda, ifadə bir siyasətin əsasını təşkil etdikdə (məsələn, authorize_if expr(exists(memberships, user_id == ^actor(:id)))), aktor-scoping şərti yox olur və hər hansı əlaqəli sətiri olan istənilən aktor üçün siyasət təsdiqlənir. Bu problem ash_sql versiya 0.4.1-dən 0.7.1-ə qədər olan versiyalara təsir edir.
Necə düzəltmək olar
- ash-project ash_sql0.7.1, 865fdd4e5e70724a23b19c048e6768c31d2209ab 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_sql | 0.4.1 ≤ v < 0.7.1, e26a63b29bd7501505fafd726f14262cdc3b6629 ≤ v < 865fdd4e5e70724a23b19c048e6768c31d2209ab | 0.7.1, 865fdd4e5e70724a23b19c048e6768c31d2209ab |
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.