Ionsaí ar Intel SGX chun sonraí íogaire a bhaint nó cód a rith in iamhchríoch

Tá modh nua forbartha ag taighdeoirí ó Ollscoil Eolaíochta agus Teicneolaíochta Cosanta Arm Fuascailte an Phobail, Ollscoil Shingeapór agus ETH Zurich chun iamhchríocha iargúlta Intel SGX (Software Guard eXtensions) a ionsaí. SmashEx a thugtar ar an ionsaí agus is cúis le fadhbanna le hathiontráil agus cásanna eisceachta á láimhseáil le linn oibriú comhpháirteanna am rite do Intel SGX. Leis an modh ionsaithe atá beartaithe, is féidir, má tá smacht agat ar an gcóras oibriúcháin, sonraí rúnda atá suite san iamhchríoch a chinneadh, nó cóipeáil do chóid a eagrú i gcuimhne an imleacáin agus a fhorghníomhú.

Tá fréamhshamhlacha leasaithe ullmhaithe d’iamhchríocha le ham rite bunaithe ar an Intel SGX SDK (CVE-2021-0186) agus Microsoft Open Enclave (CVE-2021-33767). Sa chéad chás, léiríodh an cumas eochair RSA a úsáidtear ar fhreastalaí gréasáin le haghaidh HTTPS a bhaint as, agus sa dara cás, bhíothas in ann an t-ábhar a fuair an fóntais cURL atá ag rith taobh istigh den enclave a chinneadh. Tugadh aghaidh ar an leochaileacht go cláir cheana féin i scaoileadh Intel SGX SDK 2.13 agus Open Enclave 0.17.1. Chomh maith leis an Intel SGX SDK agus Microsoft Open Enclave, tá an leochaileacht le feiceáil freisin i Google Asylo SDK, EdgelessRT, Apache Teaclave, Rust SGX SDK, SGX-LKL, CoSMIX agus Veracruz.

Meabhraímid go raibh teicneolaíocht SGX (Eisínteachtaí Garda Bogearraí) le feiceáil sa séú glúin de phróiseálaithe Intel Core (Skylake) agus cuireann sí sraith treoracha ar fáil a ligeann d’fheidhmchláir ar leibhéal an úsáideora limistéir chuimhne dúnta a leithdháileadh - iamhchríocha, nach féidir a bhfuil iontu a léamh agus modhnaithe fiú ag an eithne agus an cód a fhorghníomhú i ring0, SMM agus modhanna VMM. Tá sé dodhéanta rialú a aistriú chuig an gcód san iamhchríoch ag baint úsáide as feidhmeanna léim traidisiúnta agus ionramhálacha le cláir agus an chairn - úsáidtear treoracha nua a cruthaíodh go speisialta EENTER, EEXIT agus ERESUME chun rialú a aistriú chuig an enclave, a dhéanann seiceálacha údaráis. Sa chás seo, is féidir leis an gcód a chuirtear san enclave modhanna glaonna clasaiceacha a úsáid chun feidhmeanna laistigh den iamhchríoch a rochtain agus treoracha speisialta chun feidhmeanna seachtracha a ghlaoch. Úsáidtear criptiú cuimhne enclave chun cosaint a dhéanamh ar ionsaithe crua-earraí mar nascadh le modúl DRAM.

Ionsaí ar Intel SGX chun sonraí íogaire a bhaint nó cód a rith in iamhchríoch

Is í an fhadhb atá ann ná go gceadaíonn teicneolaíocht SGX don chóras oibriúcháin deireadh a chur le enclave trí eisceacht crua-earraí a chaitheamh, agus ní chuireann enclaves primitives i bhfeidhm i gceart chun eisceachtaí den sórt sin a láimhseáil go adamhach. Murab ionann agus eithne an chórais oibriúcháin agus feidhmchláir rialta, níl rochtain ag an gcód iamhchríocha ar phrimitives chun gníomhartha adamhacha a eagrú agus eisceachtaí a chaitear go neamhshioncronach á láimhseáil. Gan na primitives adamhach sonraithe, is féidir an t-iamhchríoch a bhriseadh am ar bith agus é a chur ar ais chun a fhorghníomhaithe, fiú ag amanna nuair a bhíonn rannóga ríthábhachtacha á bhfeidhmiú ag an iamhchríoch agus go bhfuil sé i staid neamhshábháilte (mar shampla, nuair nach ndéantar cláir LAP a shábháil/a athchóiriú).

Ionsaí ar Intel SGX chun sonraí íogaire a bhaint nó cód a rith in iamhchríoch

Le haghaidh gnáthoibríochta, ceadaíonn teicneolaíocht SGX cur isteach ar fhorghníomhú an enclave le heisceachtaí crua-earraí configurable. Ligeann an ghné seo do thimpeallachtaí ama rite iamháin láimhseáil eisceachta laistigh den imfhálú nó próiseáil comhartha a chur i bhfeidhm, ach féadann sé earráidí athiontrála a chruthú freisin. Tá an t-ionsaí SmashEx bunaithe ar shaothrú lochtanna sa SDK mar gheall ar nach ndéantar an cás maidir le hathghlaoch ar an láimhseálaí eisceachta a láimhseáil i gceart. Tá sé tábhachtach, chun an leochaileacht a shaothrú, go gcaithfidh an t-ionsaitheoir a bheith in ann cur isteach ar fhorghníomhú an enclave, i.e. ní mór oibriú timpeallacht an chórais a rialú.

Tar éis eisceacht a chaitheamh, faigheann an t-ionsaitheoir fuinneog bheag ama inar féidir an snáithe forghníomhaithe a idircheapadh trí na paraiméadair ionchuir a ionramháil. Go háirithe, má tá rochtain agat ar an gcóras (timpeallacht lasmuigh den enclave), is féidir leat eisceacht nua a chruthú díreach tar éis an teagasc iontrála enclave (EENTER) a fhorghníomhú, a chuirfidh rialú ar ais chuig an gcóras ag céim nuair a shocraítear an stack don nach bhfuil enclave críochnaithe fós, ina bhfuil an staid na gclár LAP a shábháil freisin.

Is féidir leis an gcóras rialú a thabhairt ar ais go dtí an t-iamhchríoch ansin, ach ós rud é nach raibh cruach an imfhálú cumraithe tráth an idirbhriste, rithfidh an t-iamhchríoch leis an gcruach a chónaíonn i gcuimhne an chórais, ar féidir é a úsáid chun ríomhchlárú atá dírithe ar fhilleadh (ROP) a úsáid. ) teicnící dúshaothraithe., Ríomhchlárú Dírithe). Agus an teicníc ROP á úsáid, ní dhéanann an t-ionsaitheoir iarracht a chód a chur i gcuimhne, ach oibríonn sé ar phíosaí treoracha meaisín atá ar fáil cheana féin i leabharlanna luchtaithe, ag críochnú le treoir um fhilleadh rialaithe (mar riail, is iad seo foircinn na bhfeidhmeanna leabharlainne) . Tagann obair an tsaothraithe síos ar shlabhra glaonna a thógáil chuig bloic dá samhail (“gaistí”) chun an fheidhmiúlacht atá ag teastáil a bhaint amach.

Ionsaí ar Intel SGX chun sonraí íogaire a bhaint nó cód a rith in iamhchríoch
Ionsaí ar Intel SGX chun sonraí íogaire a bhaint nó cód a rith in iamhchríoch


Foinse: oscailtenet.ru

Add a comment