ʻO ka vulnerability i loko o ka Linux kernel hiki ke hoʻoulu i kahi pōʻino ma o ka hoʻouna ʻana i kahi ʻeke UDP

Ma ka Linux kernel ʻike ʻia pilikia (CVE-2019-11683), hiki iā ʻoe ke hana i kahi hōʻole i ka lawelawe ma o ka hoʻouna ʻana i nā ʻeke UDP i hoʻolālā ʻia (packet-of-death). Loaʻa ka pilikia ma muli o kahi hewa i ka udp_gro_receive_segment handler (net/ipv4/udp_offload.c) me ka hoʻokō ʻana i ka ʻenehana GRO (Generic Receive Offload) a hiki ke alakaʻi i ka pōʻino i nā mea o nā wahi hoʻomanaʻo kernel i ka wā e hoʻoponopono ai i nā ʻeke UDP me ka padding zero. (kaumaha nele).

Pili wale ka pilikia i ka kernel 5.0ʻoiai ʻo ke kākoʻo GRO no nā kumu UDP hoʻokō ʻia i Nowemapa i ka makahiki i hala a ua hoʻokō wale ʻia i loko o ka hoʻokuʻu kernel paʻa hou loa. ʻO ka ʻenehana GRO hiki iā ʻoe ke wikiwiki i ka hana ʻana i kahi helu nui o nā ʻeke e hiki mai ana ma o ka hōʻuluʻulu ʻana i nā ʻeke he nui i loko o nā poloka nui ʻaʻole koi i ka hana kaʻawale o kēlā me kēia ʻeke.
No TCP, ʻaʻole hiki mai ka pilikia, no ka mea ʻaʻole kākoʻo kēia protocol i ka hōʻuluʻulu packet me ka uku ʻole.

Ua hoʻopaʻa ʻia ka vulnerability i kēia manawa ma ke ʻano kāʻei, ʻaʻole i paʻi ʻia ka hoʻoponopono hoʻoponopono (ʻo nehinei ka hoʻoponopono 5.0.11 fix ʻaʻole i hoʻokomo ʻia). Mai nā pahu hāʻawi, ua hoʻokomo ʻia ka kernel 5.0 i loko Fedora 30, Ubuntu 19.04, Kūnaewele Linux, Gentoo a me nā māhele ʻē aʻe e hoʻomau mau ʻia. Debian, ʻO Ubuntu 18.10 a ma mua, RHEL/CentOS и SUSE/openSUSE ʻaʻole pili ka pilikia.

Ua loaʻa ka pilikia ma muli o ka hopena использования Hana ʻia ka ʻōnaehana hoʻāʻo fuzzing e Google syzbot a me ka mea kālailai KASAN (KernelAddressSanitizer), i manaʻo e ʻike i nā hewa i ka wā e hana ai me ka hoʻomanaʻo a me nā ʻoiaʻiʻo o ke komo ʻana i ka hoʻomanaʻo hewa, e like me ke komo ʻana i nā wahi hoʻomanaʻo i hoʻokuʻu ʻia a kau i nā code i nā wahi hoʻomanaʻo ʻaʻole i manaʻo ʻia no ia mau manipulations.

Source: opennet.ru

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