CVE-2024-43806

Orta

Təsvir

Rustix, POSIX bənzəri API-lər üçün təhlükəsiz Rust binding-ləri toplusudur. `linux_raw` backend-indən istifadə edərək `rustix::fs::Dir` tətbiq edilərkən, IO xətası baş verdikdə iteratorun "ilişib qalması" mümkündür. Bu vəziyyət `rustix::fs::Dir::read_more` funksiyasındakı yaddaşın həddindən artıq ayrılması problemi ilə birləşdikdə, sürətli və məhdudiyyətsiz yaddaş partlayışına (aktiv yolunda istifadə edildikdə bir neçə saniyə ərzində gigabaytlara) səbəb ola bilər və nəticədə tətbiqin OOM çökməsinə gətirib çıxarır. Simptomlar ilk dəfə https://github.com/imsnif/bandwhich/issues/284 ünvanında aşkar edilmişdir. Həmin paylaşımda araşdırmamızla bağlı çoxlu detallar var. Tam təfərrüatlar GHSA-c827-hfw6-qwvm repo məsləhətində oxuna bilər. Əgər proqram fayl unlink edildikdən sonra (və ya `Dir` iteratorunu ilişmiş vəziyyətdə saxlayan hər hansı digər hərəkətdən sonra) onun fayl deskriptoru vasitəsilə kataloga daxil olmağa çalışarsa və implementasiya xətanı gördükdən sonra dayanmazsa, bu, yaddaş partlayışına səbəb ola bilər. Nümunə olaraq, Linux-un müxtəlif virtual fayl sistemləri (məsələn, `/proc`, `/sys`) qəfil yaranan və yox olan kataloglar ehtiva edə bilər. Onları birbaşa və ya dolayısı ilə (məsələn, `procfs` crate-i ilə) `rustix::fs::Dir` vasitəsilə iterasiya etməyə cəhd etmək, əgər implementasiya xətalar zamanı davam etməyə qərar verərsə, bu xəta şəraitini tetikləyə bilər. Buna görə də, zəifliyi olan hədəfin implementasiya detalları haqqında məlumatı olan hücumçu, mövcud API-lərin hər hansı birindən və ya bir neçəsinin kombinasiyasından istifadə edərək bu xəta şəraitini tetikləməyə çalışa bilər. Uğurlu olduğu təqdirdə, tətbiq hostunun yaddaşı sürətlə tükənəcək və bundan sonra tətbiq böyük ehtimalla OOM killer tərəfindən dayandırılacaq ki, bu da xidmətdən imtinaya (DoS) səbəb olacaq. Bu problem 0.35.15, 0.36.16, 0.37.25 və 0.38.19 versiyalarında aradan qaldırılmışdır. İstifadəçilərə yeniləmə etmək tövsiyə olunur. Bu problem üçün məlum alternativ həll yolu yoxdur.

CiddilikOrta
CVSS6.5
İstismar ehtimalı—
MəhsulBytecodealliance Rustix
Dərc26 avq 2024
İlk görülmə26 avq 2024

Necə düzəltmək olar

Mənbələrdə bu zəiflik üçün düzəldilmiş versiya və ya yamaq keçidi yoxdur.

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
bytecodealliance rustix>= 0.35.11, < 0.35.15, >= 0.36.0, < 0.36.16, >= 0.37.0, < 0.37.25, >= 0.38.0, < 0.38.19—

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.

Intelligence 360 paketində

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.

CVE-2024-43806 · Bytecodealliance Rustix · Dark Radar