Qhov tsis zoo hauv VFS ntawm Linux ntsiav uas tso cai rau koj nce koj cov cai

Qhov tsis zoo (CVE-2022-0185) tau raug txheeb xyuas nyob rau hauv Filesystem Context API muab los ntawm Linux ntsiav, uas tso cai rau cov neeg siv hauv zos kom tau txais cov cai hauv paus ntawm lub system. Tus kws tshawb fawb uas txheeb xyuas qhov teeb meem tau luam tawm ua qauv qhia txog kev siv dag zog uas tso cai rau koj los ua cov cai raws li hauv paus ntawm Ubuntu 20.04 hauv qhov kev teeb tsa ua ntej. Cov kev siv code yog npaj yuav muab tso rau hauv GitHub nyob rau hauv ib lub lim tiam tom qab kev faib tawm qhov hloov tshiab uas kho qhov tsis zoo.

Qhov tsis zoo muaj nyob rau hauv legacy_parse_param() ua haujlwm hauv VFS thiab yog tshwm sim los ntawm qhov tsis ua haujlwm los kuaj xyuas qhov loj tshaj plaws ntawm qhov tsis muaj nyob rau hauv cov ntaub ntawv systems uas tsis txhawb Filesystem Context API. Dhau qhov parameter uas loj dhau tuaj yeem ua rau muaj qhov sib txawv ntawm cov lej sib txawv uas siv los xam qhov loj ntawm cov ntaub ntawv yuav tsum tau sau - cov cai muaj qhov tsis txaus los xyuas "yog tias (len> PAGE_SIZE - 2 - loj)", uas tsis ua hauj lwm yog hais tias tus nqi loj dua 4094. rau integer overflow los ntawm qhov qis bound (integer underflow, thaum casting 4096 - 2 - 4095 rau unsigned int, qhov tshwm sim yog 2147483648).

Qhov kev ua yuam kev no tso cai rau, thaum nkag mus rau ib daim duab tshwj xeeb uas tsim los ntawm cov kab ke, ua rau muaj qhov tsis txaus thiab sau cov ntaub ntawv cov ntaub ntawv rov qab los ntawm thaj chaw nco. Txhawm rau siv qhov tsis zoo, koj yuav tsum muaj cai CAP_SYS_ADMIN, i.e. tswj hwj chim. Qhov teeb meem yog tias tus neeg siv tsis tau txais txiaj ntsig tuaj yeem tau txais kev tso cai zoo li no hauv lub thawv cais yog tias lub kaw lus muaj kev txhawb nqa rau cov neeg siv lub npe chaw qhib. Piv txwv li, usernamespaces tau qhib los ntawm lub neej ntawd ntawm Ubuntu thiab Fedora, tab sis tsis tau qhib rau ntawm Debian thiab RHEL (tshwj tsis yog siv cov thawv cais tawm).

Qhov teeb meem tau tshwm sim txij li Linux ntsiav 5.1 thiab tau kho nag hmo qhov hloov tshiab 5.16.2, 5.15.16, 5.10.93, 5.4.173. Pob ntawv hloov tshiab uas kho qhov tsis zoo twb tau tso tawm rau RHEL, Debian, Fedora, thiab Ubuntu. Qhov kev txhim kho tseem tsis tau muaj nyob rau ntawm Arch Linux, Gentoo, SUSE thiab openSUSE. Raws li kev ruaj ntseg workaround rau cov tshuab uas tsis siv lub thawv cais, koj tuaj yeem teeb tsa sysctl "user.max_user_namespaces" tus nqi rau 0: ncha "user.max_user_namespaces=0" > /etc/sysctl.d/userns.conf # sysctl -p /etc/ sysctl.d/userns.conf

Tau qhov twg los: opennet.ru

Ntxiv ib saib