ʻO ka vulnerability Linux kernel VFS e ʻae ana i ka piʻi ʻana o ka pono

Ua ʻike ʻia kahi vulnerability (CVE-2022-0185) ma ka Filesystem Context API i hāʻawi ʻia e ka Linux kernel e hiki ai i kahi mea hoʻohana kūloko ke loaʻa nā kuleana kumu ma ka ʻōnaehana. ʻO ka mea noiʻi nāna i ʻike i ka pilikia ua paʻi i kahi demo o kahi hoʻohana e hiki ai i ke code ke holo ma ke kumu ma Ubuntu 20.04 i ka hoʻonohonoho paʻamau. Hoʻolālā ʻia ka code exploit e paʻi ʻia ma GitHub i loko o hoʻokahi pule, ma hope o ka hoʻolaha ʻana i kahi mea hou e hoʻoponopono ai i ka nāwaliwali.

Aia ka vulnerability i loko o ka legacy_parse_param() hana ma VFS a no ka nele i ka hōʻoia kūpono o ka nui o nā ʻāpana i hāʻawi ʻia ma nā ʻōnaehana faila i kākoʻo ʻole i ka Filesystem Context API. Inā hele ʻoe i kahi ʻāpana nui loa, hiki iā ʻoe ke hoʻonui i ka helu helu helu i hoʻohana ʻia no ka helu ʻana i ka nui o ka ʻikepili i kākau ʻia - aia ka code i ka buffer overflow check "inā (len> PAGE_SIZE - 2 - nui)", ʻo ia hoʻi. ʻAʻole hana inā ʻoi aku ka nui o ka nui ma mua o 4094 ma muli o ka integer overflow ma ka palena haʻahaʻa (integer underflow, ke hoʻolei ʻoe i 4096 - 2 - 4095 i unsigned int, loaʻa iā ʻoe 2147483648).

ʻAe kēia hewa, i ka wā e komo ai i kahi kiʻi FS i hoʻolālā kūikawā ʻia, e hoʻoulu i ka buffer overflow a kākau i ka ʻikepili kernel ma hope o ka wahi hoʻomanaʻo i hoʻokaʻawale ʻia. No ka hoʻohana ʻana i ka nāwaliwali, pono nā kuleana CAP_SYS_ADMIN, ʻo ia hoʻi. mana hoʻoponopono. ʻO ka pilikia, hiki i kahi mea hoʻohana pono ʻole ke loaʻa nā ʻae i loko o kahi pahu kaʻawale inā hiki ke kākoʻo i nā inoa inoa mea hoʻohana i ka ʻōnaehana. No ka laʻana, hoʻohana ʻia nā inoa inoa mea hoʻohana ma ka paʻamau ma Ubuntu a me Fedora, akā ʻaʻole hiki iā Debian a me RHEL (koe ke hoʻohana ʻana i nā kahua hoʻokaʻawale pahu).

Ua ʻike ʻia ka pilikia mai ka Linux 5.1 kernel a ua hoʻopaʻa ʻia i nā mea hou i nehinei 5.16.2, 5.15.16, 5.10.93, 5.4.173. Ua hoʻokuʻu ʻia nā hōʻano hou o ka pōʻai no RHEL, Debian, Fedora, Ubuntu. ʻAʻole i loaʻa ka hoʻoponopono ma Arch Linux, Gentoo, SUSE a me openSUSE. Ma ke ʻano he hana palekana no nā ʻōnaehana ʻaʻole hoʻohana i ka hoʻokaʻawale pahu, hiki iā ʻoe ke hoʻonohonoho i ka waiwai o sysctl "user.max_user_namespaces" i 0: echo "user.max_user_namespaces=0" > /etc/sysctl.d/userns.conf # sysctl -p / etc/ sysctl.d/userns.conf

Source: opennet.ru

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