Nakakita sila ng dalawang kahinaan sa Linux Kernel

10

Ilang araw na ang nakalilipas ang balita ay pinakawalan na Dalawang kahinaan ang natukoy sa Linux Kernel ang una sa kanila ay naka-catalog na bilang CVE-2022-0435 at natagpuan sa Linux kernel module na nagbibigay ng operasyon ng TIPC (Transparent Inter-Process Communication) network protocol.

Ang kahinaan na ito maaaring payagan ang code na tumakbo sa antas ng kernel sa pamamagitan ng pagpapadala ng packet sa isang espesyal na idinisenyong network.

Ang problema nakakaapekto lamang sa mga system kung saan na-load ang tipc.ko kernel module at na-configure gamit ang TIPC stack, na karaniwang ginagamit sa mga cluster at hindi pinapagana bilang default sa mga hindi espesyal na pamamahagi ng Linux.

Kakayahang mangyari ito ay sanhi ng isang stack overflow na nangyayari kapag nagpoproseso ng mga packet, ang halaga ng field na may bilang ng mga node ng miyembro ng domain kung saan ito ay lumampas sa 64.

Upang iimbak ang mga parameter ng mga node sa tipc.ko module, ang isang array ay nagtatakda ng "u32 members[64]", ngunit sa proseso ng pagproseso kung ano ang tinukoy sa package. Hindi sinusuri ng numero ng node ang halaga ng "member_cnt", na nagpapahintulot sa mga halagang higit sa 64 na magamit para sa kinokontrol na pag-overwrit ng data sa lugar ng memorya sa ibaba. ang stack pagkatapos ng "dom_bef" na istraktura.

Ang protocol ng TIPC ay orihinal na binuo ni Ericsson, ito ay idinisenyo upang ayusin ang komunikasyon sa pagitan ng mga proseso sa isang kumpol at pangunahing aktibo sa mga node ng cluster. Maaaring gumana ang TIPC sa parehong Ethernet at UDP (network port 6118).

Kapag nagtatrabaho sa Ethernet, ang isang pag-atake ay maaaring gawin mula sa lokal na network, at kapag gumagamit ng UDP, mula sa pandaigdigang network, kung ang port ay hindi sakop ng isang firewall. Ang pag-atake ay maaari ding isagawa ng isang lokal na user na walang mga pribilehiyo sa host. Upang paganahin ang TIPC, dapat mong i-load ang tipc.ko kernel module at i-configure ang pag-binding sa isang interface ng network gamit ang netlink o ang tipc utility.

Nabanggit na kapag binubuo ang kernel sa "CONFIG_FORTIFY_SRC=y" mode (ginamit sa RHEL), na nagdaragdag ng mga karagdagang pagsusuri sa hangganan sa memcpy() function, ang operasyon ay limitado sa isang emergency stop (napupunta ang kernel sa "Kernel Panic" na estado).

Kung ito ay tatakbo nang walang karagdagang pagsusuri at impormasyon tungkol sa mga canary flag na ginamit upang protektahan ang stack ay na-leak, ang isyu ay maaaring gamitin upang malayuang magsagawa ng code na may mga karapatan sa kernel. Sinasabi ng mga mananaliksik na tumukoy sa isyu na ang diskarte sa pagsasamantala ay walang halaga at ihahayag pagkatapos ng malawakang pag-alis ng kahinaan sa mga pamamahagi.

Ang bug na nagdulot ng kahinaan ay ipinakilala noong Hunyo 15, 2016 at naging bahagi ng Linux 4.8 kernel. kahinaan naayos sa mga bersyon ng kernel Linux 5.16.9, 5.15.23, 5.10.100, 5.4.179, 4.19.229, 4.14.266 at 4.9.301.

Isa pang kahinaan na natagpuan sa kernel ng Linux ay CVE-2022-24122 sa code upang mahawakan ang mga hadlang sa rlimit sa iba't ibang mga namespace ng user.

Ipinakilala ang bug sa isang pagbabagong idinagdag noong Tag-init 2021, inililipat ang pagpapatupad ng ilang RLIMIT counter para gamitin ang istrukturang "ucounts". Ang "ucounts" na mga bagay na nilikha para sa RLIMIT ay patuloy na ginamit pagkatapos na palayain ang memorya na inilaan para sa kanila (use-after-free) sa pamamagitan ng pag-alis ng namespace na nauugnay sa kanila, na naging posible upang makamit ang kernel-level na pagpapatupad ng kanilang code.

Ang pagsasamantala sa kahinaan ng isang walang pribilehiyong user ay posible lamang kung ang system ay may unprivileged access sa user identifier namespace (unprivileged user namespace), na naka-enable bilang default sa Ubuntu at Fedora. , ngunit hindi naka-enable sa Debian at RHEL.

Bilang isang solusyon upang harangan ang kahinaan, maaari mong i-disable ang walang pribilehiyong pag-access sa namespace ng user:

sysctl -w kernel.unprivileged_userns_clone=0

Ang problema ay umiral mula noong Linux kernel 5.14 at aayusin sa 5.16.5 at 5.15.19 na mga update. Ang mga matatag na sangay ng Debian, Ubuntu, SUSE/openSUSE at RHEL ay hindi apektado ng isyu, ngunit lumilitaw sa mga bagong Fedora at Arch Linux kernels.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: AB Internet Networks 2008 SL
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.