Mayhem - ionnsaigh coirbeachd bit cuimhne gus faighinn seachad air sudo agus dearbhadh OpenSSH

Tha luchd-rannsachaidh bho Institiud Polytechnic Worcester (USA) air seòrsa ùr de ionnsaigh Mayhem a thoirt a-steach a bhios a’ cleachdadh dòigh saobhadh bit RAM fiùghantach Rowhammer gus luachan caochladairean stac a thathas a’ cleachdadh mar bhrataichean sa phrògram atharrachadh gus co-dhùnadh a bheil dearbhadh agus sgrùdaidhean tèarainteachd air a dhol seachad. Thathas a’ sealltainn gu bheil eisimpleirean practaigeach den ionnsaigh a’ dol seachad air dearbhadh ann an SUDO, OpenSSH agus MySQL, a bharrachd air a bhith ag atharrachadh toradh sgrùdaidhean co-cheangailte ri tèarainteachd ann an leabharlann OpenSSL.

Faodar an ionnsaigh a chuir an sàs ann an tagraidhean a chleachdas sgrùdaidhean gus coimeas a dhèanamh eadar luachan a tha eadar-dhealaichte bho neoni. Eisimpleir de chòd so-leònte: int auth = 0; ... // còd dearbhaidh a dh'atharraicheas luach an ùghdarrais gun fhios nach bi dearbhadh soirbheachail ann ma thilleas(auth!= 0) AUTH_SUCCESS; eile tilleadh AUTH_FAILURE;

Ann an co-theacsa na h-eisimpleir seo, airson ionnsaigh shoirbheachail tha e gu leòr airson pìos sam bith sa chuimhne a tha co-cheangailte ris a’ chaochladair ùghdarrais 32-bit air a’ chruach a thruailleadh. Ma tha pìos sam bith den chaochladair truaillidh, cha bhi an luach tuilleadh neoni agus co-dhùinidh an gnìomhaiche cumhach crìoch soirbheachail an dearbhaidh. Tha pàtrain dearbhaidh mar seo gu math cumanta ann an tagraidhean agus lorgar iad, mar eisimpleir, ann an SUDO, OpenSSH, MySQL agus OpenSSL.

Mayhem - ionnsaigh mangling bit cuimhne gus faighinn seachad air sudo agus dearbhadh OpenSSH

Faodar an ionnsaigh a chuir an sàs cuideachd airson coimeas a dhèanamh den fhoirm “if (auth == 1)”, ach anns a’ chùis seo bidh a bhuileachadh a ’fàs nas iom-fhillte, leis gu feumar beagan a thionndadh de 32, ach am pìos mu dheireadh. Faodar an dòigh a chleachdadh cuideachd gus buaidh a thoirt air luachan caochladairean ann an clàran pròiseasar, oir faodar susbaint nan clàran a chuir a-steach airson ùine ghoirid air a’ chruach nuair a loisgeas tionndadh co-theacsa, gairm gnìomh, no inneal-làimhseachaidh chomharran. Rè na h-ùine fhad ‘s a tha luachan clàr mar chuimhneachan, faodar saobhadh a thoirt a-steach don chuimhne seo agus thèid an luach atharraichte a thoirt air ais don chlàr.

Mayhem - ionnsaigh mangling bit cuimhne gus faighinn seachad air sudo agus dearbhadh OpenSSH

Gus na pìosan a thionndadh, thathas a’ cleachdadh aon de na h-atharrachaidhean air ionnsaigh clas RowHammer. Leis gur e sreath dà-thaobhach de cheallan a th’ ann an cuimhne DRAM, gach fear air a dhèanamh suas de capacitor agus transistor, bidh coileanadh leughaidhean leantainneach den aon roinn cuimhne a’ leantainn gu caochlaidhean bholtachd agus neo-riaghailteachdan a dh’ adhbhraicheas call beag cosgais ann an ceallan faisg air làimh. Ma tha an dian leughaidh àrd, faodaidh an cealla faisg air làimh cosgais gu leòr a chall agus cha bhi ùine aig an ath chearcall ath-nuadhachaidh a staid tùsail a thoirt air ais, a bheir atharrachadh air luach an dàta a tha air a stòradh sa chill. . Gus dìon an aghaidh RowHammer, tha luchd-saothrachaidh chip air inneal TRR (Target Row Refresh) a chuir ris, a bhios a’ bacadh coirbeachd cealla ann an cùisean sònraichte, ach nach eil a ’dìon an aghaidh gach atharrachadh ionnsaigh a dh’ fhaodadh a bhith ann.

Gus dìon an aghaidh ionnsaigh Mayhem, thathar a 'moladh coimeas a chleachdadh gun a bhith a' measadh eadar-dhealachaidhean bho neoni no co-thuiteamas gu aon, ach gus sùil a thoirt air maidsean a 'cleachdadh luach sìol air thuaiream le octets neo-neoni. Anns a 'chùis seo, gus an luach a tha a dhìth air a' chaochladair a shuidheachadh, feumar àireamh mhòr de phìosan a thionndadh gu ceart, a tha neo-phractaigeach, an taca ri saobhadh aon phìos. Eisimpleir de chòd neo-ionnsaigheil: int auth = 0xbe406d1a; ... // còd dearbhaidh a shuidhicheas luach an ùghdar gu 0x23ab8701 gun fhios nach bi dearbhadh soirbheachail ann ma thilleas (auth == 0x23ab8701) AUTH_SUCCESS; eile tilleadh AUTH_FAILURE;

Chaidh an dòigh dìon ainmichte a chleachdadh mar-thà leis an luchd-leasachaidh sudo agus chaidh a ghabhail a-steach ann an sgaoileadh 1.9.15 mar fhuasgladh airson so-leòntachd CVE-2023-42465. Tha iad an dùil prototype den chòd fhoillseachadh airson an ionnsaigh a dhèanamh às deidh fuasgladh a dhèanamh air na prìomh phròiseactan so-leònte.

Source: fosgailtenet.ru

Cuir beachd ann