ʻO ka vulnerability i ka subsystem eBPF e hiki ai ke hoʻokō i nā code ma ka pae kernel Linux

Ua ʻike ʻia kahi vulnerability (CVE-2021-4204) i loko o ka subsystem eBPF, kahi e hiki ai iā ʻoe ke holo i nā mea lawelawe i loko o ka Linux kernel i kahi mīkini virtual kūikawā me JIT, e ʻae ana i kahi mea hoʻohana pono ʻole e hoʻokō i ka piʻi ʻana o ka pono a hoʻokō i kā lākou code ma ka Linux kernel pae. Ua ʻike ʻia ka pilikia mai ka Linux kernel 5.8 a noho mau ʻole (me ka hoʻokuʻu ʻana 5.16). Hiki ke ʻike ʻia ke kūlana o nā mea hou e hoʻoponopono ai i ka pilikia i ka hāʻawi ʻana ma kēia mau ʻaoʻao: Debian, RHEL, SUSE, Fedora, Ubuntu, Arch. Ua hoʻolaha ʻia ua hana ʻia kahi hana hana, i hoʻolālā ʻia e paʻi ʻia ma Ianuali 18 (ua hāʻawi ʻia nā mea hoʻohana a me nā mea hoʻomohala i hoʻokahi pule e hoʻoponopono ai i ka nāwaliwali).

Ma muli o ka hōʻoia hewa ʻole o nā polokalamu eBPF i hoʻouna ʻia no ka hoʻokō. Hāʻawi ka subsystem eBPF i nā hana kōkua, ʻo ka hoʻohana pololei ʻana i hōʻoia ʻia e kahi mea hōʻoia kūikawā. Pono kekahi mau hana e hāʻawi i kahi waiwai PTR_TO_MEM ma ke ʻano he hoʻopaʻapaʻa, a no ka pale ʻana i ka nui o ka buffer, pono e ʻike ka mea hōʻoia i ka nui o ka hoʻomanaʻo e pili ana i ka hoʻopaʻapaʻa. No nā hana bpf_ringbuf_submit a me bpf_ringbuf_discard, ʻaʻole i hōʻike ʻia ka ʻikepili i ka nui o ka hoʻomanaʻo i hoʻololi ʻia i ka mea hōʻoia, hiki ke hoʻohana ʻia no ke kākau ʻana i nā wahi hoʻomanaʻo ma waho o ka palena hoʻopaʻa i ka wā e hoʻokō ai i ka code eBPF i hoʻolālā ʻia.

No ka hoʻokō ʻana i kahi hoʻouka ʻana, pono e hiki i ka mea hoʻohana ke hoʻouka i kāna polokalamu BPF ponoʻī, a he nui nā hoʻolaha Linux hou e kāpae nei i kēia hiki ma ke ʻano maʻamau (me ka ʻae ʻole ʻana i ke komo ʻana i ka eBPF i kēia manawa ua pāpā ʻia e ka paʻamau i ka kernel ponoʻī, e hoʻomaka me ka hoʻokuʻu ʻana 5.16). No ka laʻana, hiki ke hoʻohana ʻia ka nāwaliwali i ka hoʻonohonoho paʻamau ma Ubuntu 20.04 LTS, akā i nā kaiapuni ʻo Ubuntu 22.04-dev, Debian 11, openSUSE 15.3, RHEL 8.5, SUSE 15-SP4 a me Fedora 33 e ʻike wale ʻia inā ua hoʻonohonoho ka luna. ka kernel.unprivileged_bpf_disabled parameter i 0. Ma keʻano he hana no ka paleʻana i ka nāwaliwali, hiki iāʻoe ke pale i ka hoʻokōʻana i nā polokalamu BPF e nā mea hoʻohana ponoʻole me ke kauoha "sysctl -w kernel.unprivileged_bpf_disabled=1".

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka