DDR4 հիշողության չիպերը մնում են խոցելի RowHammer-ի հարձակումների նկատմամբ՝ չնայած հավելյալ պաշտպանությանը

Ամստերդամի Vrije Universiteit, ETH Ցյուրիխի և Qualcomm-ի հետազոտողների թիմը ծախսել ժամանակակից DDR4 հիշողության չիպերում օգտագործվող դասի հարձակումներից պաշտպանության արդյունավետության ուսումնասիրություն RowHammer, որը թույլ է տալիս փոխել դինամիկ պատահական մուտքի հիշողության (DRAM) առանձին բիթերի պարունակությունը: Արդյունքները հիասթափեցնող էին, և խոշոր արտադրողների DDR4 չիպերը դեռևս կան մնալ խոցելի (CVE-2020-10255- ը).

RowHammer-ի խոցելիությունը թույլ է տալիս հիշողության առանձին բիթերի բովանդակությունը փչացնել հարակից հիշողության բջիջներից տվյալների ցիկլային ընթերցմամբ: Քանի որ DRAM հիշողությունը բջիջների երկչափ զանգված է, որոնցից յուրաքանչյուրը բաղկացած է կոնդենսատորից և տրանզիստորից, նույն հիշողության շրջանի շարունակական ընթերցումները հանգեցնում են լարման տատանումների և անոմալիաների, որոնք առաջացնում են լիցքի փոքր կորուստ հարևան բջիջներում: Եթե ​​ընթերցման ինտենսիվությունը բավականաչափ բարձր է, ապա բջիջը կարող է կորցնել բավականաչափ մեծ քանակությամբ լիցք, և հաջորդ վերականգնման ցիկլը ժամանակ չի ունենա վերականգնելու իր սկզբնական վիճակը, ինչը կհանգեցնի բջիջում պահվող տվյալների արժեքի փոփոխությանը: .

Այս էֆեկտը արգելափակելու համար ժամանակակից DDR4 չիպերն օգտագործում են TRR (Target Row Refresh) տեխնոլոգիան, որը նախատեսված է կանխելու RowHammer հարձակման ժամանակ բջիջների վնասումը: Խնդիրն այն է, որ TRR-ի ներդրման միասնական մոտեցում չկա, և յուրաքանչյուր պրոցեսոր և հիշողություն արտադրող TRR-ն յուրովի է մեկնաբանում, կիրառում է իր պաշտպանության տարբերակները և չի բացահայտում իրականացման մանրամասները:
Արտադրողների կողմից օգտագործվող RowHammer արգելափակման մեթոդների ուսումնասիրությունը հեշտացրել է պաշտպանությունը շրջանցելու ուղիներ գտնելը: Ստուգման արդյունքում պարզվել է, որ արտադրողների կողմից կիրառվող սկզբունքը «անվտանգությունը երկիմաստության միջոցով (անվտանգությունը անհայտության միջոցով) TRR-ի ներդրման ժամանակ օգնում է միայն հատուկ դեպքերում պաշտպանվելու համար՝ ծածկելով բնորոշ հարձակումները՝ շահարկելով մեկ կամ երկու հարակից տողերի բջիջների լիցքավորման փոփոխությունները:

Հետազոտողների կողմից մշակված օգտակարությունը թույլ է տալիս ստուգել չիպերի զգայունությունը RowHammer հարձակման բազմակողմ տարբերակների նկատմամբ, որոնցում լիցքի վրա ազդելու փորձ է արվում միանգամից մի քանի շարքերի հիշողության բջիջների համար: Նման հարձակումները կարող են շրջանցել որոշ արտադրողների կողմից իրականացվող TRR պաշտպանությունը և հանգեցնել հիշողության բիթերի կոռուպցիայի, նույնիսկ DDR4 հիշողությամբ նոր սարքավորումների վրա:
Ուսումնասիրված 42 DIMM-ից 13 մոդուլը խոցելի է դարձել RowHammer հարձակման ոչ ստանդարտ տարբերակների նկատմամբ՝ չնայած հայտարարված պաշտպանությանը: Խնդրահարույց մոդուլները արտադրվել են SK Hynix-ի, Micron-ի և Samsung-ի կողմից, որոնց արտադրանքը ծածկոցներ DRAM շուկայի 95%-ը.

Բացի DDR4-ից, ուսումնասիրվել են նաև շարժական սարքերում օգտագործվող LPDDR4 չիպերը, որոնք նույնպես զգայուն են RowHammer հարձակման առաջադեմ տարբերակների նկատմամբ։ Մասնավորապես, խնդիրն ազդել է Google Pixel, Google Pixel 3, LG G7, OnePlus 7 և Samsung Galaxy S10 սմարթֆոններում օգտագործվող հիշողությունը։

Հետազոտողները կարողացել են վերարտադրել մի քանի շահագործման տեխնիկա խնդրահարույց DDR4 չիպերի վրա: Օրինակ, օգտագործելով RowHammer-շահագործել PTE-ի համար (Page Table Entries) միջուկի արտոնություն ստանալու համար պահանջվեց 2.3 վայրկյանից մինչև երեք ժամ և տասնհինգ վայրկյան՝ կախված փորձարկված չիպերից: Հարձակում Հիշողության մեջ պահվող հանրային բանալին վնասելու համար RSA-2048-ը տևեց 74.6 վայրկյանից մինչև 39 րոպե 28 վայրկյան: Հարձակում Սուդո գործընթացի հիշողության փոփոխման միջոցով հավատարմագրերի ստուգումը շրջանցելու համար պահանջվեց 54 րոպե 16 վայրկյան:

Հրապարակվել է օգտակար ծրագիր՝ օգտատերերի կողմից օգտագործվող DDR4 հիշողության չիպերը ստուգելու համար TRR անցում. Հարձակումը հաջողությամբ իրականացնելու համար անհրաժեշտ է տեղեկատվություն հիշողության կարգավորիչում օգտագործվող ֆիզիկական հասցեների դասավորության մասին՝ կապված բանկերի և հիշողության բջիջների շարքերի հետ: Հավելվածը որոշելու համար լրացուցիչ մշակվել է կոմունալ ծրագիր դրամա, որը պահանջում է գործարկել որպես root: Առաջիկայում նույնպես պլանավորված հրապարակել սմարթֆոնի հիշողության փորձարկման հավելված:

Ընկերություններ Intel и ՀՀ դրամ Պաշտպանության համար նրանք խորհուրդ են տվել օգտագործել սխալները շտկող հիշողություն (ECC), հիշողության կարգավորիչներ՝ Maximum Activate Count (MAC) աջակցությամբ և օգտագործել թարմացման բարձրացված արագություն: Հետազոտողները կարծում են, որ արդեն թողարկված չիպերի համար Rowhammer-ից երաշխավորված պաշտպանության լուծում չկա, և ECC-ի օգտագործումը և հիշողության վերականգնման հաճախականության ավելացումը անարդյունավետ են եղել։ Օրինակ՝ նախկինում առաջարկվել էր ճանապարհին հարձակումներ DRAM հիշողության վրա՝ շրջանցելով ECC պաշտպանությունը, ինչպես նաև ցույց է տալիս DRAM-ի միջոցով հարձակվելու հնարավորությունը տեղական ցանց, սկսած հյուրերի համակարգ и միջոցով զննարկիչում աշխատում է JavaScript-ը:

Source: opennet.ru

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