Në bibliotekën libaom, e zhvilluar nga aleanca Open Media (AOMedia), e cila ofron një implementim referencë të formatit të kodimit të videove AV1, është zbuluar një vulnerabilitet kritik (CVE-2024-5171), që çon në mbipërmbushje të numrave të plotë dhe shkrim jashtë kufijve të memories gjatë përpunimit të vlerave shumë të mëdha në disa parametra. Një vulnerabilitet i ngjashëm (CVE-2024-5197) është zbuluar në bibliotekën libvpx me implementimet e kodeve VP8 dhe VP9. Problemet janë zgjidhur në përditësimet libaom 3.9.0 dhe libvpx 1.14.1. Në distribucionet, vulnerabilitetet ende mbeten të papërmirësuara (Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD).
Vulnerabilitetet në libaom i janë caktuar nivel maksimal rrezikshmërie (10 nga 10), që nënkupton mundësinë e shfrytëzimit gjatë përpunimit në aplikacione që përdorin këtë bibliotekë, me përmbajtje të veçanta të dizajnuara. Në libvpx niveli i rrezikshmërisë është caktuar në 5.9 nga 10, që përputhet me kushte të kufizuara shfrytëzimi. Rreziku kryesor nga vulnerabilitetet në libaom dhe libvpx është për shkak se këto biblioteka përdoren në shfletuesit e internetit, lojtarët e mediave dhe shërbimet që kryejnë rikodimin e videove.
Vulnerabiliteti shfaqet në libaom gjatë thirrjes së funksioneve aom_img_alloc(), aom_img_wrap() ose om_img_alloc_with_border() me vlera të mëdha në parametrat d_w, d_h dhe align, që çojnë në mbipërmbushje të numrave të plotë gjatë llogaritjes së zhvendosjeve dhe madhësive të memories. Një mbipërmbushje e ngjashme ndodh në funksionet vpx_img_alloc() dhe vpx_img_wrap(). Këto funksione përdoren gjatë kodimit të videove.
Vulnerabiliteti paraqet rrezik më të madh për shkak të mundësisë së një sulmi ndaj shfletuesve, në të cilët vulnerabilitete të ngjashme të kaluara mund të kenë qenë shfrytëzuar përmes hapjes në shfletues një faqeje të dizajnuar që thërret funksionet JavaScript për kodimin e videove, ose përmes manipulimeve me WebRTC. Sipas përfaqësuesve të Google, vulnerabiliteti nuk ndikon në motorin Chromium, pasi në funksionet aom_img_alloc(), aom_img_wrap(), vpx_img_alloc() dhe vpx_img_wrap() janë kaluar vetëm vlera të verifikuara të argumenteve d_w dhe d_h. Në Firefox për dekodimin e AV1 përdoret biblioteka dav1d, por për kodimin përdoret libaom. Nëse Firefox është i ekspozuar ndaj problemit ende nuk është e qartë, pasi informacioni se si vulnerabiliteti ndikon në produkte të veçanta ende nuk është publikur.
Burimi: opennet.ru
