Ihe ọghọm dị na VFS nke Linux kernel na-enye gị ohere ịbawanye ohere gị.

Achọpụtala adịghị ike (CVE-2022-0185) na Filesystem Context API nke Linux kernel nyere, nke na-enye onye ọrụ mpaghara ohere ịnweta mgbọrọgwụ mgbọrọgwụ na sistemụ. Onye nyocha nke chọpụtara nsogbu ahụ bipụtara ngosipụta nke nrigbu nke na-enye gị ohere ịme koodu dị ka mgbọrọgwụ na Ubuntu 20.04 na nhazi ndabara. A na-eme atụmatụ ka ebisa koodu nrigbu na GitHub n'ime otu izu ka nkesa wepụtachara mmelite nke na-edozi adịghị ike ahụ.

Ọdịmma dị na ọrụ legacy_parse_param() dị na VFS ma kpatara ọdịda a na-enyocha nke ọma oke nke parampat enyere na sistemụ faịlụ anaghị akwado API Context Filesystem. Ịgafe oke nke buru oke ibu nwere ike ime ka njupụta nke ọnụọgụ ọnụọgụgụ ejiri iji gbakọọ nha data a ga-ede - koodu ahụ nwere ihe nrịba ụba nke nchekwa "ma ọ bụrụ (len> PAGE_SIZE - 2 - size)", nke na-adịghị. na-arụ ọrụ ma ọ bụrụ na nha uru karịrị 4094. n'ihi na integer tofee site na ala bound (integer underflow, mgbe nkedo 4096 - 2 - 4095 na unsigned int, pụta bụ 2147483648).

Njehie a na-enye ohere, mgbe ị na-enweta onyonyo sistemu faịlụ ahaziri ahazi, ime ka ihe nkpuchi na-ejupụta wee degharịa data kernel na-eso mpaghara ebe nchekwa ekenyere. Iji jiri adịghị ike ahụ eme ihe, ị ga-enwerịrị ikike CAP_SYS_ADMIN, ya bụ. ikike nchịkwa. Nsogbu a bụ na onye ọrụ na-enweghị ohere nwere ike nweta ikike dị otú ahụ n'ime akpa dịpụrụ adịpụ ma ọ bụrụ na agbanyere sistemu nkwado maka oghere aha njirimara. Dịka ọmụmaatụ, a na-akwado oghere aha njirimara site na ndabara na Ubuntu na Fedora, mana enweghị ike na Debian na RHEL (ọ gwụla ma ejiri nyiwe iche akpa).

Nsogbu a na-apụta kemgbe Linux kernel 5.1 ma dozie ya na mmelite ụnyaahụ 5.16.2, 5.15.16, 5.10.93, 5.4.173. Ewepụtalarị mmelite ngwugwu nke na-edozi adịghị ike maka RHEL, Debian, Fedora, na Ubuntu. Ndozi ahụ adịbeghị na Arch Linux, Gentoo, SUSE na openSUSE. Dịka nchekwa nchekwa maka sistemu ndị na-anaghị eji akpa akpa, ị nwere ike ịtọ uru sysctl "user.max_user_namespaces" ka ọ bụrụ 0: echo "user.max_user_namespaces=0" > /etc/sysctl.d/userns.conf # sysctl -p /etc/sysctl.d/users.conf

isi: opennet.ru

Tinye a comment