Zraniteľnosť v jadre Linuxu, ktorá môže spôsobiť zlyhanie odoslaním paketu UDP

V jadre Linuxu identifikované zraniteľnosť (CVE-2019 11683,), ktorý vám umožňuje na diaľku spôsobiť odmietnutie služby odoslaním špeciálne navrhnutých paketov UDP (packet-of-death). Problém je spôsobený chybou v obslužnom programe udp_gro_receive_segment (net/ipv4/udp_offload.c) s implementáciou technológie GRO (Generic Receive Offload) a môže viesť k poškodeniu obsahu pamäťových oblastí jadra pri spracovávaní UDP paketov s nulovou výplňou. (prázdne užitočné zaťaženie).

Problém sa týka iba jadra 5.0pretože podpora GRO pre zásuvky UDP bola implementovaná v novembri minulého roka a podarilo sa mu dostať len do najnovšieho stabilného vydania jadra. Technológia GRO umožňuje zrýchliť spracovanie veľkého počtu prichádzajúcich paketov agregovaním viacerých paketov do väčších blokov, ktoré nevyžadujú samostatné spracovanie každého paketu.
V prípade TCP sa problém nevyskytuje, pretože tento protokol nepodporuje agregáciu paketov bez užitočného zaťaženia.

Zraniteľnosť bola zatiaľ opravená len vo forme náplasť, opravná aktualizácia ešte nebola zverejnená (oprava včerajšej aktualizácie 5.0.11 nezahŕňa). Z distribučných súprav sa podarilo zaradiť jadro 5.0 Fedora 30, Ubuntu 19.04, Arch Linux, gentoo a ďalšie priebežne aktualizované distribúcie. debian, Ubuntu 18.10 a starší, RHEL/CentOS и SUSE/openSUSE problém neovplyvňuje.

V dôsledku toho sa zistil problém použitie Automatizovaný systém testovania fuzzing vytvorený spoločnosťou Google syzbot a analyzátor KASAN (KernelAddressSanitizer), zameraný na identifikáciu chýb pri práci s pamäťou a faktov o nesprávnom prístupe k pamäti, ako je prístup k uvoľneným pamäťovým oblastiam a umiestnenie kódu do pamäťových oblastí, ktoré nie sú určené na takéto manipulácie.

Zdroj: opennet.ru

Pridať komentár