Mga mananaliksik mula sa NCC Group
Alalahanin natin na ang teknolohiya ng ARM TrustZone ay nagpapahintulot sa iyo na lumikha ng mga protektadong kapaligiran na nakahiwalay sa hardware na ganap na nakahiwalay sa pangunahing system at tumatakbo sa isang hiwalay na virtual processor gamit ang isang hiwalay na dalubhasang operating system. Ang pangunahing layunin ng TrustZone ay magbigay ng nakahiwalay na pagpapatupad ng mga processor para sa encryption key, biometric authentication, data ng pagbabayad at iba pang kumpidensyal na impormasyon. Ang pakikipag-ugnayan sa pangunahing OS ay isinasagawa nang hindi direkta sa pamamagitan ng interface ng dispatch. Ang mga pribadong encryption key ay naka-imbak sa loob ng hardware-isolated key store, na, kung ipapatupad nang maayos, ay mapipigilan ang pagtagas ng mga ito kung ang pinagbabatayan na system ay nakompromiso.
Ang kahinaan ay dahil sa isang depekto sa pagpapatupad ng elliptic curve processing algorithm, na humantong sa pagtagas ng impormasyon tungkol sa pag-usad ng pagproseso ng data. Ang mga mananaliksik ay nakabuo ng isang side-channel attack technique na nagbibigay-daan sa paggamit ng mga kasalukuyang hindi direktang pagtagas upang mabawi ang mga nilalaman ng mga pribadong key na matatagpuan sa isang hardware-isolate.
Ang pangunahing sanhi ng problema ay ang pagbabahagi ng mga karaniwang bahagi ng hardware at cache para sa mga kalkulasyon sa TrustZone at sa pangunahing sistema - ang paghihiwalay ay ginaganap sa antas ng lohikal na paghihiwalay, ngunit gamit ang mga karaniwang yunit ng computing at may mga bakas ng mga kalkulasyon at impormasyon tungkol sa sangay mga address na idineposito sa karaniwang cache ng processor. Gamit ang paraan ng Prime+Probe, batay sa pagtatasa ng mga pagbabago sa oras ng pag-access sa naka-cache na impormasyon, posible, sa pamamagitan ng pagsuri sa pagkakaroon ng ilang mga pattern sa cache, upang subaybayan ang mga daloy ng data at mga palatandaan ng pagpapatupad ng code na nauugnay sa mga kalkulasyon ng mga digital na lagda sa TrustZone na may medyo mataas na katumpakan.
Karamihan sa mga oras upang makabuo ng digital signature gamit ang ECDSA keys sa Qualcomm chips ay ginugugol sa pagsasagawa ng multiplication operations sa isang loop gamit ang initialization vector na hindi nagbabago para sa bawat signature (
Sa kaso ng Qualcomm, dalawang lugar kung saan na-leak ang naturang impormasyon ay natukoy sa multiplication algorithm: kapag nagsasagawa ng mga operasyon sa paghahanap sa mga talahanayan at sa conditional data retrieval code batay sa halaga ng huling bit sa "nonce" vector. Sa kabila ng katotohanan na ang Qualcomm code ay naglalaman ng mga hakbang upang kontrahin ang mga pagtagas ng impormasyon sa pamamagitan ng mga third-party na channel, ang binuo na paraan ng pag-atake ay nagbibigay-daan sa iyo na laktawan ang mga hakbang na ito at matukoy ang ilang mga piraso ng "nonce" na halaga, na sapat upang mabawi ang 256-bit na mga ECDSA key.
Pinagmulan: opennet.ru