Sårbarhed i referenceimplementationerne af AV1- og VP8/VP9-codecs

I den udviklede Open Media (AOMedia) bibliotek libaom, som leverer en referenceimplementering af video encoding formatet AV1, er en kritisk sårbarhed (CVE-2024-5171) blevet identificeret, hvilket fører til heltals overflow og skrivning uden for buffergrænserne ved behandling af for store værdier i visse parametre. En tilsvarende sårbarhed (CVE-2024-5197) er blevet fundet i biblioteket libvpx, der implementerer VP8 og VP9 codec. Problemerne er blevet løst i opdateringerne af libaom 3.9.0 og libvpx 1.14.1. I distributioner forbliver sårbarhederne dog uoprettede (Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD).

Sårbarhederne i libaom er blevet tildelt det maksimale fare niveau (10 ud af 10), hvilket indebærer muligheden for udnyttelse ved behandling i applikationer, der bruger dette bibliotek, med specielt designet indhold. I libvpx er fare niveauet sat til 5.9 ud af 10, hvilket svarer til begrænsede betingelser for udnyttelse. Den største fare ved sårbarhederne i libaom og libvpx skyldes, at disse biblioteker anvendes i web-browsere, medieafspillere og tjenester, der udfører videokodning.

Sårbarheden viser sig i libaom ved kald af funktionerne aom_img_alloc(), aom_img_wrap() eller aom_img_alloc_with_border() med store værdier i parametrene d_w, d_h og align, som fører til heltals overflow ved beregning af offsets og størrelser af buffere. Et lignende overflow opstår i funktionerne vpx_img_alloc() og vpx_img_wrap(). De nævnte funktioner anvendes ved videokodning.

Den største fare ved sårbarheden kommer fra den potentielle mulighed for angreb på browsere, hvor tidligere lignende sårbarheder kunne være blevet udnyttet ved at åbne specielt designede sider i browseren, der kalder JavaScript-funktioner for videokodning, eller gennem manipulationer med WebRTC. Ifølge repræsentanter fra Google berører sårbarheden ikke Chromium-motoren, da kun kontrollerede værdier for argumenterne d_w og d_h blev sendt til funktionerne aom_img_alloc(), aom_img_wrap(), vpx_img_alloc() og vpx_img_wrap(). I Firefox bruges biblioteket dav1d til dekodning af AV1, men libaom anvendes til kodning. Det er endnu uklart, om Firefox er udsat for problemet, da oplysninger om, hvordan sårbarheden påvirker specifikke produkter, endnu ikke er blevet offentliggjort.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster