Ipo-ije ninu ikojọpọ idọti ekuro Linux ti o le ja si igbega anfani

Jann Horn lati ọdọ Ẹgbẹ Zero Project Google, ẹniti o ṣe idanimọ ni kete ti Specter ati awọn ailagbara Meltdown, ṣe atẹjade ilana kan fun ilokulo ailagbara kan (CVE-2021-4083) ninu ikojọpọ idọti kernel Linux. Ailagbara naa jẹ nitori ipo ere-ije kan nigbati o sọ di mimọ awọn apejuwe faili lori awọn sockets unix ati pe o le gba olumulo ailagbara agbegbe laaye lati ṣiṣẹ koodu wọn ni ipele ekuro.

Iṣoro naa jẹ iyanilenu nitori pe akoko window lakoko eyiti ipo ere-ije waye ni ifoju pe o kere ju lati ṣẹda awọn iṣamulo gidi, ṣugbọn onkọwe iwadi naa fihan pe paapaa iru awọn ailagbara ṣiyemeji ni ibẹrẹ le di orisun ti awọn ikọlu gidi ti o ba jẹ pe olupilẹṣẹ nilokulo ti ni. awọn pataki ogbon ati akoko. Yann Horn ṣe afihan bii, pẹlu iranlọwọ ti awọn ifọwọyi filigree, o le dinku ipo ere-ije ti o waye nigbati o pe awọn iṣẹ isunmọ () ati fget () nigbakanna sinu ailagbara lilo ni kikun lẹhin-ọfẹ ati ṣaṣeyọri iraye si data ti o ti ni ominira tẹlẹ. be inu awọn ekuro.

Ipo ere-ije kan waye lakoko ilana ti paade oluṣapejuwe faili lakoko pipe () ati fget () ni akoko kanna. Ipe lati tii () le waye ṣaaju ṣiṣe fget () eyiti yoo daru agbo-idọti nitori pe, ni ibamu si atunyẹwo, eto faili kii yoo ni awọn itọkasi ita, ṣugbọn yoo wa ni asopọ si oluṣapejuwe faili, ie. Olugba idoti yoo ro pe o ni iwọle iyasoto si eto naa, ṣugbọn ni otitọ, fun igba diẹ, titẹsi ti o ku ninu tabili oluṣapejuwe faili yoo tun tọka si eto ti o ni ominira.

Lati mu o ṣeeṣe lati wọle si ipo ere-ije, ọpọlọpọ awọn ẹtan ni a lo, eyiti o jẹ ki o ṣee ṣe lati mu iṣeeṣe ti aṣeyọri ilokulo pọ si 30% nigbati o ṣafihan awọn iṣapeye-pato eto. Fun apẹẹrẹ, lati mu akoko ti iraye si eto kan pẹlu awọn apejuwe faili nipasẹ awọn ọgọọgọrun nanoseconds, a ti yọ data kuro lati kaṣe ero isise nipasẹ idalẹnu kaṣe pẹlu iṣẹ ṣiṣe lori ipilẹ Sipiyu miiran, eyiti o jẹ ki o ṣee ṣe lati gba eto naa pada lati iranti ju lati awọn sare Sipiyu kaṣe.

Ẹya pataki keji ni lilo awọn idalọwọduro ti ipilẹṣẹ nipasẹ aago ohun elo lati mu akoko ipo ere-ije pọ si. Awọn akoko ti a ti yan ki awọn da gbigbi imudani yoo sana nigbati a ije majemu waye ki o si da gbigbi awọn ipaniyan ti awọn koodu fun awọn akoko. Lati siwaju idaduro ipadabọ ti iṣakoso, nipa awọn titẹ sii 50 ẹgbẹrun ni ibi iduro ni a ṣe ipilẹṣẹ nipa lilo epoll, eyiti o nilo wiwa nipasẹ olutọju idalọwọduro.

Ilana fun ilokulo ailagbara ni a ti ṣafihan lẹhin akoko 90-ọjọ ti kii ṣe ifihan. Iṣoro naa han lati kernel 2.6.32 ati pe o wa titi ni ibẹrẹ Oṣu kejila. Atunṣe naa wa ninu ekuro 5.16 ati pe o tun gbe lọ si awọn ẹka LTS ti ekuro ati awọn idii ekuro ti a pese ni awọn pinpin. O jẹ akiyesi pe a ṣe idanimọ ailagbara naa lakoko itupalẹ iru iṣoro kan CVE-2021-0920, eyiti o ṣafihan ararẹ ni agbo-idọti nigba ṣiṣe asia MSG_PEEK.

orisun: opennet.ru

Fi ọrọìwòye kun