Te Whakaraeraetanga Root i roto i te Ketita Whakahaere Moeke Snap

Kua tautuhia e Qualys te toru o nga whakaraeraetanga kino i tenei tau (CVE-2022-3328) i roto i te taputapu mapi-puni, ka tae mai me te haki pakiaka SUID ka karangahia e te tukanga snapd ki te hanga i tetahi taiao ka taea te whakahaere mo nga tono kua tohatohahia ki roto i nga kete-whaiaro. i roto i te whakatakotoranga putunga. Ko te whakaraeraetanga ka taea e tetahi kaiwhakamahi kore whai mana ki te whakatutuki i te mahi waehere hei pakiaka i roto i te whirihoranga Ubuntu taunoa. Kua whakatikahia te take i te tukunga o snapd 2.57.6. Kua tukuna nga whakahoutanga kete mo nga peka tautoko katoa o Ubuntu.

Ko te mea whakamiharo, ko te whakaraeraetanga e paataihia ana i whakauruhia i roto i te whakatikatika i tetahi whakaraeraetanga o Hui-tanguru i roto i te putunga-piri. I taea e nga kairangahau te whakarite i tetahi mahi mahi e whakarato ana i te uru pakiaka ki te Ubuntu Server 22.04, i tua atu i te whakaraeraetanga o te mahanga, e rua nga whakaraeraetanga i roto i te tukanga multipathd (CVE-2022-41974, CVE-2022-41973) e pa ana ki te karo i te tirotiro whakaaetanga ina tukuna nga whakahau whaimana me te whakahaere kino o nga hononga tohu.

Ko te whakaraeraetanga i roto i te snap-confine i puta mai i te ahuatanga reihi i roto i te mahi must_mkdir_and_open_with_perms(), ka taapirihia hei whakamarumaru i te whakakapinga o te whaiaronga /tmp/snap.$SNAP_NAME me te hono tohu i muri i te tirotiro a te rangatira, engari i mua i te waea o te punaha maunga. ka karangahia ki te herea-maunga whaiaronga ki roto mo tetahi kete i roto i te whakatakotoranga putunga. Ko te haumarutanga i taapirihia ko te whakaingoa ano i te whaiaronga /tmp/snap.$SNAP_NAME ki tetahi atu raarangi i roto i /tmp me te ingoa matapōkere mena kei te noho, a, ehara na te kaiwhakamahi pakiaka.

I te whakamahi i te mahi whakaingoa hou o te whaiaronga /tmp/snap.$SNAP_NAME, i whai hua nga kairangahau na te snap-confine i hanga he raarangi /tmp/snap.rootfs_XXXXXX mo te putake o nga ihirangi o te kete putunga. Ko te waahanga "XXXXXX" o te ingoa ka tohua matapōkeretia e mkdtemp(), engari ka taea e te kete ko "rootfs_XXXXXX" te tuku sc_instance_name_validate (arā, ko te whakaaro ko $SNAP_NAME ki te "rootfs_XXXXXX" katahi ka puta te mahi whakaingoa ki te tuhirua. te whaiaronga /tmp/snap.rootfs_XXXXXX me te pakiaka putunga).

Kia taea ai te whakamahi i te wa kotahi mo te /tmp/snap.rootfs_XXXXXX me te whakaingoa ano i te /tmp/snap.$SNAP_NAME, e rua nga wa i timatahia ai te hopu-puni. I te wa i hanga ai te tauira tuatahi /tmp/snap.rootfs_XXXXXX, ka aukati te tukanga, ka timata te tauira tuarua me te ingoa mokihi rootfs_XXXXXX, ka puta te whaiaronga rangitahi o te tauira tuarua /tmp/snap.$SNAP_NAME hei /tmp/snap .rootfs_XXXXXX whaiaronga pakiaka o te tauira tuatahi. I muri tonu mai i te whakaingoatanga o te ingoa, ka tuki te tauira tuarua, ka whakakapia te /tmp/snap.rootfs_XXXXXX ki te raweke i nga ahuatanga iwi, penei i te whakaraeraetanga o Pepuere. Whai muri i te huringa, ka tangohia te raka mahi mai i te waa tuatahi ka riro i te hunga whakaeke te mana katoa ki runga i te whaiaronga o te mapi.

Ko te mahi whakamutunga ko te hanga i tetahi symlink /tmp/snap.rootfs_XXXXXX/tmp i whakamahia e te mahi sc_bootstrap_mount_namespace() ki te here-whakapuru i te whaiaronga tuturu /tmp ka taea te tuhi ki tetahi whaiaronga i roto i te punaha konae, na te mea ka whai ake te karanga mount() symlinks i mua i te whakapuru. Ko taua whakapuru ka aukatihia e nga here a AppArmor, engari ki te karo i tenei aukati, ka whakamahia e te whakaraeraetanga e rua nga whakaraeraetanga i roto i te multipathd.

Source: opennet.ru

Tāpiri i te kōrero