Palara ninu awọn ipata boṣewa ìkàwé

Ailagbara kan (CVE-2022-21658) ti ṣe idanimọ ni ile-ikawe boṣewa Rust nitori ipo ije kan ni iṣẹ std :: fs :: remove_dir_all () iṣẹ. Ti a ba lo iṣẹ yii lati paarẹ awọn faili igba diẹ ninu ohun elo ti o ni anfani, ikọlu le ṣaṣeyọri piparẹ awọn faili eto lainidii ati awọn ilana ti ikọlu ko ni ni aye deede lati paarẹ.

Ailagbara naa jẹ idi nipasẹ imuse ti ko tọ ti ṣiṣe ayẹwo awọn ọna asopọ aami ṣaaju piparẹ awọn ilana loorekoore. Dipo idilọwọ awọn ami-ami lati tẹle, yọ_dir_all() ṣayẹwo akọkọ boya faili naa jẹ ọna asopọ kan. Ti o ba ti ni asọye ọna asopọ kan, lẹhinna o paarẹ bi faili kan, ati pe ti o ba jẹ itọsọna, lẹhinna iṣẹ yiyọ akoonu loorekoore ni a pe. Iṣoro naa ni pe idaduro diẹ wa laarin ayẹwo ati ibẹrẹ iṣẹ piparẹ.

Ni akoko kan nigbati a ti ṣe ayẹwo tẹlẹ, ṣugbọn iṣẹ ṣiṣe ti awọn ilana kika fun piparẹ ko ti bẹrẹ, ikọlu le rọpo itọsọna naa pẹlu awọn faili igba diẹ pẹlu ọna asopọ aami kan. Ti o ba lu ni akoko ti o tọ, iṣẹ yiyọ_dir_all () yoo tọju ọna asopọ aami bi itọsọna kan ati bẹrẹ yiyọ akoonu si eyiti ọna asopọ tọka si. Bíótilẹ o daju wipe awọn aseyori ti awọn kolu da lori awọn išedede ti awọn ti o yan akoko ti rirọpo awọn liana ati lilu awọn akoko ọtun ni igba akọkọ jẹ išẹlẹ ti, nigba awọn adanwo awọn oluwadi ni anfani lati se aseyori kan tun aseyori kolu lẹhin ti o ti lo nilokulo laarin. iṣẹju diẹ.

Gbogbo awọn ẹya ti ipata lati 1.0.0 si 1.58.0 ni o ni ipa. Ọrọ naa ti ni ipinnu ni fọọmu patch fun bayi (atunṣe yoo wa ninu itusilẹ 1.58.1, eyiti o nireti laarin awọn wakati diẹ). O le ṣe atẹle imukuro ailagbara ni awọn pinpin lori awọn oju-iwe wọnyi: Debian, RHEL, SUSE, Fedora, Ubuntu, Arch, FreeBSD. Gbogbo awọn olumulo ti awọn eto Rust nṣiṣẹ pẹlu awọn anfani ti o ga ati lilo iṣẹ yiyọ_dir_all ni imọran lati ṣe imudojuiwọn Rust ni kiakia si ẹya 1.58.1. O jẹ iyanilenu pe alemo ti a tu silẹ ko yanju iṣoro naa lori gbogbo awọn eto; fun apẹẹrẹ, ni REDOX OS ati awọn ẹya ti macOS ṣaaju 10.10 (Yosemite), ailagbara naa ko ni idinamọ nitori isansa ti asia O_NOFOLLOW, eyiti o ṣe idiwọ atẹle aami awọn ọna asopọ.

orisun: opennet.ru

Fi ọrọìwòye kun