Mgbochi - mwakpo nrụrụ aka nke ebe nchekwa iji gafere sudo na nyocha OpenSSH

Ndị na-eme nchọpụta sitere na Worcester Polytechnic Institute (USA) ewebatala ụdị ọgụ ọhụrụ nke Mayhem nke na-eji Rowhammer dynamic random access memory bit distortion technique iji gbanwee ụkpụrụ nke mgbanwe nchịkọta ejiri dị ka ọkọlọtọ na mmemme iji kpebie ma nyocha na nyocha nchekwa nwere. gafere. A na-egosipụta ihe atụ bara uru nke mwakpo ahụ iji gafere nyocha na SUDO, OpenSSH na MySQL, yana ịgbanwe nsonaazụ nlele metụtara nchekwa na ọbaakwụkwọ OpenSSL.

Enwere ike itinye mwakpo ahụ na ngwa ndị na-eji nyocha atụnyere ụkpụrụ dị iche na efu. Ọmụmaatụ nke koodu adịghị ike: int auth = 0; ... // koodu nkwenye nke na-agbanwe uru nyocha ma ọ bụrụ na ọ ga-eme nke ọma ma ọ bụrụ na (auth != 0) laghachi AUTH_SUCCESS; ọzọ weghachi AUTH_FAILURE;

N'ihe gbasara ihe atụ a, maka ọgụ na-aga nke ọma, ọ ga-ezuru imebi ihe ọ bụla na ebe nchekwa jikọtara ya na 32-bit auth variable na nchịkọta. Ọ bụrụ na ihe ọ bụla n'ime mgbanwe ahụ mebiri emebi, uru ya agaghị abụ efu na onye na-ahụ maka ọnọdụ ga-ekpebi mmecha nyocha nke ọma. Ụdị nkwado dị otú ahụ bụ ihe a na-ahụkarị na ngwa ma hụ ya, dịka ọmụmaatụ, na SUDO, OpenSSH, MySQL na OpenSSL.

Mgbochi - mwakpo nrụrụ aka nke ebe nchekwa iji gafere sudo na nyocha OpenSSH

A pụkwara itinye mwakpo ahụ na ntụnyere nke ụdị "ọ bụrụ (auth == 1)", ma na nke a, mmejuputa ya na-aghọwanye mgbagwoju anya, ebe ọ bụ na ọ dị mkpa ịgbagọ ọ bụghị ihe ọ bụla nke 32, ma nke ikpeazụ. A pụkwara iji usoro ahụ mee ka ụkpụrụ nke mgbanwe dị iche iche na ndekọ nhazi, ebe ọ bụ na ọdịnaya nke ndekọ ahụ nwere ike ịbanye na nchịkọta ahụ nwa oge mgbe mgbanwe gburugburu, oku ọrụ, ma ọ bụ onye na-ahụ maka mgbaàmà na-agba ọkụ. N'ime oge mgbe ụkpụrụ ndekọ aha dị na ebe nchekwa, enwere ike ịme mgbanwe n'ime ebe nchekwa a ma gbanwee uru a ga-eweghachi na ndekọ.

Mgbochi - mwakpo nrụrụ aka nke ebe nchekwa iji gafere sudo na nyocha OpenSSH

Iji gbagọọ ibe n'ibe, a na-eji otu n'ime mgbanwe nke ọgụ klas RowHammer. Ebe nchekwa DRAM bụ mkpụrụ ndụ nwere akụkụ abụọ nwere akụkụ abụọ, nke ọ bụla nwere capacitor na transistor, na-agụ akwụkwọ na-aga n'ihu nke otu mpaghara ebe nchekwa na-ebute mgbanwe voltaji na anomalies nke na-akpata obere mfu ụgwọ na sel ndị agbata obi. Ọ bụrụ na ọgụgụ ọgụgụ dị elu dị elu, mgbe ahụ, cell agbata obi nwere ike ịlafu nnukwu ego zuru oke na usoro nrụgharị ọzọ agaghị enwe oge iji weghachi ọnọdụ mbụ ya, nke ga-eduga n'ịgbanwe uru nke data echekwara na cell. . Iji chebe megide RowHammer, ndị na-emepụta mgbawa agbakwunyela usoro TRR (Target Row Refresh), nke na-egbochi nrụrụ cell n'ọnọdụ pụrụ iche, mana anaghị echebe megide ụdị ọgụ niile nwere ike ime.

Iji chebe megide mwakpo Mayhem, a na-atụ aro ka iji ntụnyere ọ bụghị iji nyochaa ọdịiche sitere na efu ma ọ bụ ndaba na nke otu, kama iji lelee matches na iji uru mkpụrụ na-enweghị ihe ọ bụla nwere octets na-abụghị efu. N'okwu a, iji setịpụ uru achọrọ nke mgbanwe ahụ, ọ dị mkpa iji mebie ọnụ ọgụgụ dị ịrịba ama nke ibe n'ụzọ ziri ezi, nke na-abụghị eziokwu, n'ụzọ dị iche na mgbagwoju anya nke otu bit. Ọmụmaatụ nke koodu enweghị ike ịwakpo: int auth = 0xbe406d1a; ... // koodu nkwenye nke na-edobe uru auth ka ọ bụrụ 0x23ab8701 ma ọ bụrụ na ọ ga-aga nke ọma ma ọ bụrụ na (auth == 0x23ab8701) laghachi AUTH_SUCCESS; ọzọ weghachi AUTH_FAILURE;

Ndị mmepe sudo ejirila usoro nchebe akọwapụtara nke ọma wee tinye ya na ntọhapụ 1.9.15 ka ndozi maka adịghị ike CVE-2023-42465. Ha na-eme atụmatụ ibipụta prototype nke koodu maka ime mwakpo ahụ mgbe emechara ndozi na ọrụ ndị isi adịghị ike.

isi: opennet.ru

Tinye a comment