Fa'aletonu ile faletusi masani a Rust

O se fa'aletonu (CVE-2022-21658) ua fa'ailoaina i totonu o le faletusi fa'ata'ita'i Rust ona o se tu'uga i le std ::fs ::remove_dir_all() galuega. Afai e faʻaaogaina lenei galuega e tape ai faila le tumau i se talosaga faʻapitoa, e mafai e le tagata osofaʻi ona ausia le tapeina o faila faila ma faʻatonuga e le masani ona maua e le tagata osofaʻi le avanoa e tape ai.

O le fa'aletonu e mafua ona o le le sa'o o le fa'atinoina o le siakiina o feso'ota'iga fa'atusa a'o le'i toe tapeina fa'atonuga. Nai lo le taofia o symlinks mai le mulimulitaia, remove_dir_all() siaki muamua pe o le faila o se symlink. Afai e faʻamatalaina se fesoʻotaʻiga, ona tapeina lea o se faila, ma afai o se faʻatonuga, ona taʻua lea o le faʻaaogaina o mea e toe faʻaaogaina. O le faʻafitauli o loʻo i ai sina tuai i le va o le siaki ma le amataga o le tapeina.

I le taimi ua maeʻa ona faia le siaki, ae leʻi amataina le faʻaogaina o faʻamaumauga mo le tapeina, e mafai e le tagata osofaʻi ona sui le lisi i faila le tumau ma se fesoʻotaʻiga faʻatusa. Afai e oso i le taimi saʻo, o le remove_dir_all() galuega o le a faʻaogaina le fesoʻotaʻiga faʻatusa e pei o se lisi ma amata ona aveese mea o loʻo faasino i ai le sootaga. E ui lava i le mea moni o le manuia o le osofaʻiga e faʻalagolago i le saʻo o le taimi filifilia e sui ai le lisi ma taia le taimi saʻo i le taimi muamua e le mafai, i le taimi o faʻataʻitaʻiga na mafai ai e le au suʻesuʻe ona ausia se osofaʻiga manuia faifaipea pe a uma ona faia le faʻaogaina i totonu. ni nai sekone.

O lomiga uma o Rust mai le 1.0.0 i le 1.58.0 e aofia ai e a'afia. O le mataupu ua uma ona foia i le patch form mo le taimi nei (o le faʻaleleia o le a aofia i le 1.58.1 faʻamalolo, lea e faʻamoemoeina i totonu o ni nai itula). E mafai ona e mataʻituina le faʻaumatiaina o le faʻafitauli i tufatufaga i luga o itulau nei: Debian, RHEL, SUSE, Fedora, Ubuntu, Arch, FreeBSD. O tagata uma o lo'o fa'aogaina polokalame Rust o lo'o fa'agaoioia ma fa'ae'eina fa'atasi ma le fa'aogaina o le galuega remove_dir_all ua fautuaina ina ia fa'anatinati fa'afouina Rust i le version 1.58.1. O se mea manaia e le mafai e le patch faʻamalolo ona foia le faʻafitauli i luga o faiga uma; mo se faʻataʻitaʻiga, i le REDOX OS ma faʻasologa o macOS i luma o le 10.10 (Yosemite), e le o poloka le faʻafitauli ona o le leai o se fuʻa O_NOFOLLOW, lea e faʻagata ai le faʻataʻitaʻiga. sooga.

puna: opennet.ru

Faaopoopo i ai se faamatalaga