Vatsvagiri kubva kuBitdefender
Kusagadzikana ndekweSpecter v1 kirasi uye yakavakirwa papfungwa yekudzoreredza data kubva kune processor cache yasara mushure mekufungidzira kwekuita kwemirairo. Kuti uvandudze mashandiro, zvikamu zvekufanotaura kwebazi zvemazuva ano maCPU anoshandisa preemptive execution yemamwe mirairo angango itwa, asi pasina kumirira kuverengwa kwezvinhu zvese zvinotaridza kuurayiwa kwavo (semuenzaniso, kana mamiriro ebazi kana maparamita ekuwana asina. zvakaverengerwa). Kana kufanotaura kusina kusimbiswa, processor inorasa mhedzisiro yekufungidzira kuurayiwa, asi iyo data yakagadziriswa mukati mayo inoramba iri mu processor cache uye inogona kudzoreredzwa uchishandisa nzira dzekuona zviri mukati mecache kuburikidza nematanho emativi, kuongorora shanduko yekuwana. nguva yekuchengeta uye isina kuvharwa data.
Iyo yakasarudzika yekurwiswa kutsva iko kushandiswa kwekudonha kunoitika panguva yekufungidzira kuurayiwa kweiyo SWAPGS rairo, iyo inoshandiswa mumashandisirwo masisitimu kutsiva kukosha kweiyo GS regisheni kana kutonga kunopfuura kubva munzvimbo yemushandisi kuenda kuOS kernel (iyo GS). kukosha kunoshandiswa munzvimbo yevashandisi kunotsiviwa nehuwandu hunoshandiswa panguva yekushanda mu kernel ). MuLinux kernel, GS inochengetedza per_cpu pointer inoshandiswa kuwana kernel data, uye mushandisi nzvimbo inochengeterwa mapoikira kuTLS (Thread Local Storage).
Kuti udzivise kufonera iyo SWAPGS rairo kaviri paunenge uchiwana kernel zvakare kubva ku kernel space kana pakuita kodeti isingade shanduko yerejista yeGS, cheki uye bazi rine mamiriro anoitwa pamberi pekuraira. Injini yekufungidzira yekuuraya inoenderera mberi nekuita kodhi neiyo SWAPGS rairo isina kumirira mhedzisiro yecheki, uye kana bazi rakasarudzwa rikasasimbiswa, rinorasa mhedzisiro. Nekudaro, mamiriro ezvinhu anogona kuitika kana bazi risingasanganisire SWAPGS kuuraya rakasarudzwa zvekufungidzira, asi panguva yekufungidzira kukosha kweiyo GS regisheni ichashandurwa neiyo SWAPGS rairo uye inoshandiswa mukutsamira ndangariro mashandiro ayo anoguma muCPU cache.
Vatsvagiri vakurudzira mamiriro maviri ekurwiswa ayo anoshandisa prototypes akagadzirirwa. Mamiriro ekutanga anoenderana nemamiriro ezvinhu apo iyo SWAPGS rairo haina kuitwa zvekufungidzira, kunyangwe ichinyatso shandiswa mukuurayiwa, uye yechipiri ndiyo yakapesana, kana iyo SWAPGS rairo richiitwa zvekufungidzira, kunyangwe isingafanirwe kuurayiwa. Pachiitiko chega chega, pane zvingasarudzwa zviviri zvekushandisa: uyo anorwisa anogona kuona kukosha pane imwe kero munzvimbo yekernel, uye anorwisa anogona kutsvaga kukosha kwakakosha pamakero asina kurongeka mukernel. Kuita kurwisa kunotora nguva yakareba uye kubata kungada maawa akati wandei kuti kupedze kuvuza.
Pane dambudziko muLinux kernel
Iyo gadziriso inoda kuisa kernel yekuvandudza pane ese ari maviri system yevaenzi uye nharaunda dzevaenzi, inoteverwa nehurongwa reboot. Kudzima dziviriro paLinux, iyo "nospectre_v1" sarudzo inogona kushandiswa, iyo zvakare inodzima matanho ekuvharidzira kusazvibata kweSWAPGS. Iyo yekugadzirisa inowanikwa se
Sekureva kwevanoongorora kubva kuBitdefender, Intel yakaudzwa nezvedambudziko muna Nyamavhuvhu gore rapfuura. Zvakasarudzwa kuti zvigadzirise dambudziko racho, iro vagadziri kubva kuMicrosoft, Google uye Linux kernel vakabatanidzwa mukugadzirisa kwakarongeka kwekugadzirisa. Vakuru Intel processors, pre-Ivy Bridge, yakanyanya kuoma kurwisa nekuda kwekushomeka kwerutsigiro rweiyo WRGSBASE rairo rinoshandiswa mukubiridzira. ARM, POWER, SPARC, MIPS, uye RISC-V masisitimu haana kukanganiswa nedambudziko nekuti haatsigire iyo SWAPGS rairo.
Dambudziko rinonyanya kubata varidzi veIntel processors -
Pamasisitimu e AMD, chiitiko chechipiri chekurwisa chete chakakwanisa kudhindwa, icho chinongogumira pakufungidzira kugadziridzwa kweiyo base kukosha kweiyo GS rejista, iyo inogona kushandiswa kutsvaga chaiyo hunhu munzvimbo dzendangariro. Kuvharisa sarudzo iyi yekurwisa
Source: opennet.ru