NCC խմբի հետազոտողները
Հիշեցնենք, որ ARM TrustZone տեխնոլոգիան թույլ է տալիս ստեղծել ապարատային մեկուսացված պաշտպանված միջավայրեր, որոնք ամբողջությամբ առանձնացված են հիմնական համակարգից և աշխատում են առանձին վիրտուալ պրոցեսորի վրա՝ օգտագործելով առանձին մասնագիտացված օպերացիոն համակարգ: TrustZone-ի հիմնական նպատակն է ապահովել գաղտնագրման բանալիների, կենսաչափական նույնականացման, վճարային տվյալների և այլ գաղտնի տեղեկատվության համար պրոցեսորների մեկուսացված կատարում: Հիմնական ՕՀ-ի հետ փոխազդեցությունն իրականացվում է անուղղակիորեն՝ դիսպետչերական ինտերֆեյսի միջոցով: Անձնական գաղտնագրման բանալիները պահվում են ապարատային մեկուսացված բանալիների պահեստում, որը, եթե պատշաճ կերպով իրականացվի, կարող է կանխել դրանց արտահոսքը, եթե հիմքում ընկած համակարգը վտանգի ենթարկվի:
Խոցելիությունը պայմանավորված է էլիպսային կորի մշակման ալգորիթմի ներդրման թերությամբ, որը հանգեցրել է տվյալների մշակման առաջընթացի մասին տեղեկատվության արտահոսքի: Հետազոտողները մշակել են կողային ալիքի հարձակման տեխնիկա, որը թույլ է տալիս օգտագործել առկա անուղղակի արտահոսքերը՝ վերականգնելու անձնական բանալիների պարունակությունը, որոնք գտնվում են ապարատային մեկուսացված վիճակում:
Խնդիրի հիմնական պատճառը TrustZone-ում և հիմնական համակարգում հաշվարկների համար ընդհանուր ապարատային բաղադրիչների և քեշի համօգտագործումն է. մեկուսացումն իրականացվում է տրամաբանական տարանջատման մակարդակով, բայց օգտագործելով ընդհանուր հաշվարկային միավորներ և հաշվարկների և ճյուղի մասին տեղեկատվության հետքերով: հասցեները պահվում են ընդհանուր պրոցեսորի քեշում: Օգտագործելով Prime+Probe մեթոդը, որը հիմնված է քեշավորված տեղեկատվության մուտքի ժամանակի փոփոխության գնահատման վրա, հնարավոր է, ստուգելով որոշակի օրինաչափությունների առկայությունը քեշում, վերահսկել տվյալների հոսքերը և կոդի կատարման նշանները՝ կապված թվային ստորագրությունների հաշվարկների հետ: TrustZone-ը բավականին բարձր ճշգրտությամբ:
Qualcomm չիպերում ECDSA ստեղների միջոցով թվային ստորագրություն ստեղծելու համար ժամանակի մեծ մասը ծախսվում է ցիկլով բազմապատկման գործողություններ կատարելով՝ օգտագործելով սկզբնականացման վեկտորը, որն անփոփոխ է յուրաքանչյուր ստորագրության համար (
Qualcomm-ի դեպքում, բազմապատկման ալգորիթմում հայտնաբերվել են երկու տեղ, որտեղ նման տեղեկատվության արտահոսք է եղել՝ աղյուսակներում որոնողական գործողություններ կատարելիս և պայմանական տվյալների որոնման կոդում, որը հիմնված է «ոչ» վեկտորի վերջին բիտի արժեքի վրա: Չնայած այն հանգամանքին, որ Qualcomm կոդը պարունակում է միջոցներ երրորդ կողմի ալիքներով տեղեկատվության արտահոսքին հակազդելու համար, մշակված հարձակման մեթոդը թույլ է տալիս շրջանցել այդ միջոցները և որոշել «ոչ» արժեքի մի քանի բիթ, որոնք բավարար են 256-բիթանոց ECDSA ստեղները վերականգնելու համար:
Source: opennet.ru