Ranjivost u Linux kernelu koja može uzrokovati pad slanjem UDP paketa

U Linux kernelu identifikovan ranjivost (CVE-2019-11683), koji vam omogućava da daljinski izazovete uskraćivanje usluge slanjem posebno dizajniranih UDP paketa (packet-of-death). Problem je uzrokovan greškom u rukovaču udp_gro_receive_segment (net/ipv4/udp_offload.c) sa implementacijom GRO (Generic Receive Offload) tehnologije i može dovesti do oštećenja sadržaja memorijskih područja kernela prilikom obrade UDP paketa sa nultim paddingom (prazan teret).

Problem utiče samo na kernel 5.0pošto je GRO podrška za UDP sokete bila implementirano u novembru prošle godine i uspio je ući samo u najnovije stabilno izdanje kernela. GRO tehnologija vam omogućava da ubrzate obradu velikog broja dolaznih paketa agregiranjem više paketa u veće blokove koji ne zahtijevaju posebnu obradu svakog paketa.
Za TCP, problem se ne javlja, jer ovaj protokol ne podržava agregaciju paketa bez korisnog opterećenja.

Ranjivost je do sada ispravljena samo u formi patch, ispravna ispravka još nije objavljena (jučerašnja ispravka 5.0.11 ispravka nisu uključeni). Od distributivnih kompleta, kernel 5.0 je uspio da bude uključen Fedora 30, Ubuntu 19.04, Arch Linux, Gentoo i druge distribucije koje se stalno ažuriraju. Debian, Ubuntu 18.10 i ranije, RHEL/CentOS и SUSE/openSUSE problem ne utiče.

Problem je pronađen kao rezultat upotreba Automatski sistem fuzzing testiranja koji je kreirao Google syzbot i analizator KASAN (KernelAddressSanitizer), usmjeren na identifikaciju grešaka pri radu s memorijom i činjenica o pogrešnom pristupu memoriji, kao što je pristup oslobođenim memorijskim područjima i postavljanje koda u memorijska područja koja nisu namijenjena za takve manipulacije.

izvor: opennet.ru

Dodajte komentar