„Linux“ branduolio pažeidžiamumas, galintis sukelti gedimą siunčiant UDP paketą

„Linux“ branduolyje nustatyta pažeidžiamumas (CVE-2019-11683), kuri leidžia nuotoliniu būdu sukelti atsisakymą teikti paslaugą siunčiant specialiai sukurtus UDP paketus (packet-of-death). Problemą sukelia klaida udp_gro_receive_segment tvarkyklėje (net/ipv4/udp_offload.c) įdiegus GRO (Generic Receive Offload) technologiją ir gali sugadinti branduolio atminties sričių turinį, kai apdorojami UDP paketai su nuliniu užpildymu. (tuščias krovinys).

Problema liečia tik branduolį 5.0nes GRO palaikymas UDP lizdams buvo įgyvendinta praėjusių metų lapkritį ir pavyko patekti tik į naujausią stabilų branduolio leidimą. GRO technologija leidžia pagreitinti didelio skaičiaus įeinančių paketų apdorojimą, sujungiant kelis paketus į didesnius blokus, kuriems nereikia atskirai apdoroti kiekvieno paketo.
TCP atveju problema nekyla, nes šis protokolas nepalaiko paketų agregavimo be naudingos apkrovos.

Pažeidžiamumas iki šiol buvo ištaisytas tik forma pleistras, taisomasis naujinimas dar nepaskelbtas (vakarykštės naujinimo 5.0.11 pataisymas neįtrauktos). Iš platinimo rinkinių pavyko įtraukti branduolį 5.0 "Fedora 30", Ubuntu 19.04, Arch Linux, "Gentoo" ir kiti nuolat atnaujinami platinimai. debian, Ubuntu 18.10 ir senesnės versijos, RHEL / CentOS и SUSE / openSUSE problema neturi įtakos.

Dėl to problema buvo rasta naudoti „Google“ sukurta automatinė „fuzzing“ testavimo sistema syzbot ir analizatorius KASAN (KernelAddressSanitizer), skirtas nustatyti klaidas dirbant su atmintimi ir neteisingos prieigos faktus, pvz., prieigą prie atlaisvintų atminties sričių ir kodo įdėjimą į atminties sritis, kurios nėra skirtos tokioms manipuliacijoms.

Šaltinis: opennet.ru

Добавить комментарий