SQUIP - հարձակում AMD պրոցեսորների վրա, որը հանգեցնում է տվյալների արտահոսքի երրորդ կողմի ալիքներով

Գրացի տեխնոլոգիական համալսարանի (Ավստրիա) մի խումբ հետազոտողներ, որոնք նախկինում հայտնի էին MDS, NetSpectre, Throwhammer և ZombieLoad հարձակումների մշակմամբ, բացահայտեցին նոր կողային ալիքի հարձակման մանրամասները (CVE-2021-46778) AMD պրոցեսորի ժամանակացույցի հերթում: , օգտագործվում է պրոցեսորի տարբեր կատարողական ստորաբաժանումներում հրահանգների կատարումը պլանավորելու համար։ Հարձակումը, որը կոչվում է SQUIP, թույլ է տալիս որոշել այլ գործընթացի կամ վիրտուալ մեքենայի հաշվարկներում օգտագործվող տվյալները կամ կազմակերպել թաքնված կապի ալիք պրոցեսների կամ վիրտուալ մեքենաների միջև, որը թույլ է տալիս փոխանակել տվյալներ՝ շրջանցելով համակարգի մուտքի վերահսկման մեխանիզմները:

2000-ին, 5000-րդ և 3000-րդ սերնդի Zen միկրոճարտարապետությունների վրա հիմնված AMD պրոցեսորները (AMD Ryzen XNUMX-XNUMX, AMD Ryzen Threadripper, AMD Athlon XNUMX, AMD EPYC) ազդում են միաժամանակյա բազմաշերտ տեխնոլոգիայի (SMT) օգտագործման ժամանակ: Intel պրոցեսորները ենթակա չեն հարձակման, քանի որ նրանք օգտագործում են մեկ ժամանակացույցի հերթ, մինչդեռ խոցելի AMD պրոցեսորներն օգտագործում են առանձին հերթեր յուրաքանչյուր կատարողական միավորի համար: Որպես տեղեկատվության արտահոսքի արգելափակման միջոց՝ AMD-ն խորհուրդ է տվել ծրագրավորողներին օգտագործել ալգորիթմներ, որոնք միշտ մաթեմատիկական հաշվարկներ են կատարում մշտական ​​ժամանակում՝ անկախ մշակվող տվյալների բնույթից, ինչպես նաև խուսափել գաղտնի տվյալների վրա հիմնված ճյուղավորումներից:

Հարձակումը հիմնված է տարբեր ժամանակացույցի հերթերում վեճի առաջացման մակարդակի (վիճաբանության մակարդակի) գնահատման վրա և իրականացվում է նույն ֆիզիկական պրոցեսորի վրա մեկ այլ SMT շղթայում կատարվող ստուգման գործողություններ սկսելիս հետաձգումների չափման միջոցով: Բովանդակությունը վերլուծելու համար օգտագործվել է Prime + Probe մեթոդը, որը ենթադրում է հերթը լրացնել արժեքների տեղեկատու հավաքածուով և որոշել փոփոխությունները՝ չափելով դրանց մուտքի ժամանակը վերալիցքավորման ժամանակ:

Փորձի ընթացքում հետազոտողները կարողացան ամբողջությամբ վերստեղծել մասնավոր 4096-բիթանոց RSA բանալին, որն օգտագործվում էր թվային ստորագրություններ ստեղծելու համար՝ օգտագործելով mbedTLS 3.0 կրիպտոգրաֆիկ գրադարանը, որն օգտագործում է Մոնթգոմերիի ալգորիթմը՝ թիվը բարձրացնելու մոդուլին: Բանալին որոշելու համար պահանջվել է 50500 հետք: Ընդհանուր հարձակման ժամանակը տևեց 38 րոպե: Ցուցադրված են հարձակման տարբերակներ, որոնք ապահովում են արտահոսք տարբեր գործընթացների և KVM հիպերվիզորի կողմից վերահսկվող վիրտուալ մեքենաների միջև: Ցույց է տրվում նաև, որ մեթոդը կարող է օգտագործվել վիրտուալ մեքենաների միջև գաղտնի տվյալների փոխանցումը կազմակերպելու համար 0.89 Մբիթ/վրկ արագությամբ և գործընթացների միջև՝ 2.70 Մբիթ/վրկ արագությամբ՝ 0.8%-ից ցածր սխալի գործակիցով:

Source: opennet.ru

Добавить комментарий