ʻO ka nāwaliwali koʻikoʻi i ka hoʻokō ʻana i ka hana memcpy no ARMv7 mai Glibc

Nā mea noiʻi palekana Cisco wehe ʻia nā kikoʻī nawaliwali (CVE-2020-6096) i ka hoʻokō ʻana i ka hana memcpy () i hāʻawi ʻia e Glibc no ka 32-bit ARMv7 platform. Hoʻokumu ʻia ka pilikia ma ka lawelawe hewa ʻana i nā waiwai maikaʻi ʻole o ka ʻāpana e hoʻoholo ai i ka nui o ka wahi i kope ʻia, ma muli o ka hoʻohana ʻana i nā optimizations hui e hoʻopunipuni i nā integer 32-bit i kau inoa ʻia. Ke kāhea ʻana i ka memcpy () ma nā ʻōnaehana ARMv7 me ka nui maikaʻi ʻole i ka hoʻohālikelike hewa ʻana o nā waiwai a kākau i kahi wahi ma waho o nā palena o ka buffer i kuhikuhi ʻia.

Hiki ke hoʻohana ʻia ka vulnerability e hoʻokō i ke code i kahi kūlana kahi e hiki ai i ka mea hoʻouka ke hoʻonohonoho i ka hoʻokumu ʻana i kahi waiwai maikaʻi ʻole o ka mea hoʻololi e hoʻouna ʻia ai ka nui o ka ʻikepili i kope ʻia (no ka laʻana, e hele maikaʻi ʻole ke hoʻololi ʻana ma mua o 2 GB o ʻikepili, akā i ka wā o ka hoʻouka ʻana, e hele ma mua o nā palena buffer, pono ʻoe e hoʻololi i ka liʻiliʻi o 4GB). Hoʻohana nui ʻia ka hana memcpy () i nā noi, a ʻo nā mea hana ARMv7 ka mea maʻamau i nā ʻōnaehana kaʻa, kelepona, ʻoihana, mea kūʻai aku, kamaʻilio a me nā mea i hoʻopili ʻia, i hiki ke hoʻouka ʻia me ka hoʻohana ʻana i ka Bluetooth, HD Radio / DAB, USB, CAN bus, ʻO Wi-Fi Fi a me nā kumu ʻikepili waho ʻē aʻe (no ka laʻana, hiki ke hoʻouka ʻia nā lawelawe a me nā noi ma o ka pūnaewele e ʻae i ka ʻikepili hoʻokomo me ka ʻole o ka palena nui).

ʻO kahi laʻana, ʻo ka hana ʻana i kahi hana hana e hoʻouka i kahi kikowaena HTTP i kūkulu ʻia i loko o nā ʻōnaehana ʻike kaʻa, hiki ke loaʻa ma o ka pūnaewele Wi-Fi kaʻa. Hiki i ka mea hoʻouka kaua waho ke hoʻohana i kahi haʻahaʻa memcpy ma kēia kikowaena ma o ka hoʻouna ʻana i kahi noi GET nui loa a loaʻa ke aʻa i ka ʻōnaehana.

ʻO ka nāwaliwali koʻikoʻi i ka hoʻokō ʻana i ka hana memcpy no ARMv7 mai Glibc

Ma nā ʻōnaehana 32-bit x86, ʻaʻole ʻike ʻia ka pilikia, no ka mea, ʻo ka hoʻokō ʻana i ka memcpy no kēia hoʻolālā e wehewehe pololei i ka nui o ka nui ma ke ʻano he helu helu helu ʻole o ke ʻano size_t (ma ka ʻōlelo hui. hoʻokō no ka ARMv7 ua mālama ʻia ʻo ia e like me ka helu helu ma kahi o size_t). Loaʻa ka hoʻoponopono i kēia manawa e like me kāʻei, e hoʻokomo ʻia i ka hōʻano hou ʻo Glibc 2.32.
Hoʻopau ka hoʻoponopono i ka hoʻohana ʻana i nā ʻōlelo aʻoaʻo e hana ana ma nā operand i kau inoa ʻia (bge a me blt) me nā mea i kau inoa ʻole ʻia (blo a me bhs).

ʻAʻole i hoʻoholo ʻia ka pilikia ʻO Debian 9 a me 10 (ʻaʻole ʻike ʻia ma Debian 8), ʻO Fedora, Ubuntu, OpenEmbedded, Tizen (hoʻohana ʻia e glibc). RHEL и SUSA ʻAʻole pili ka pilikia no ka mea ʻaʻole lākou i kākoʻo i nā ʻōnaehana 32-bit ARMv7. ʻAʻole pili ʻia ka Android e ka nāwaliwali no ka mea hoʻohana ʻo ia i kāna hoʻokō libc (Bionic). IN WeheWRT Ma ka maʻamau, hoʻohana ka hapa nui o nā hale iā Musl, akā loaʻa pū ka glibc i ka waihona.

Source: opennet.ru

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