Az NCC Group kutatói
Emlékezzünk vissza, hogy az ARM TrustZone technológia lehetővé teszi a hardvertől elszigetelt védett környezetek létrehozását, amelyek teljesen elkülönülnek a fő rendszertől, és külön virtuális processzoron futnak, külön speciális operációs rendszer segítségével. A TrustZone fő célja a titkosítási kulcsok, biometrikus hitelesítés, fizetési adatok és egyéb bizalmas információk processzorainak izolált végrehajtása. A fő operációs rendszerrel való interakció közvetetten, a küldési felületen keresztül történik. A privát titkosítási kulcsokat egy hardvertől elkülönített kulcstárolóban tárolják, amely megfelelő megvalósítás esetén megakadályozhatja azok kiszivárgását, ha az alapul szolgáló rendszer sérül.
A sérülékenység oka az elliptikus görbe feldolgozási algoritmus megvalósításának hibája, amely az adatfeldolgozás folyamatával kapcsolatos információk kiszivárgásához vezetett. A kutatók olyan oldalcsatornás támadási technikát fejlesztettek ki, amely lehetővé teszi a meglévő közvetett szivárgások felhasználásával a hardvertől elkülönített magánkulcsok tartalmának helyreállítását.
A probléma fő oka a közös hardverkomponensek és a gyorsítótár megosztása a számításokhoz a TrustZone-ban és a fő rendszerben - az elkülönítés logikai elválasztás szintjén történik, de közös számítási egységekkel, valamint számítások nyomaival és az elágazásra vonatkozó információkkal. a címek a processzor közös gyorsítótárában vannak elhelyezve. A Prime+Probe módszerrel, amely a gyorsítótárazott információkhoz való hozzáférési idő változásának felmérésén alapul, bizonyos minták meglétének ellenőrzésével a gyorsítótárban ellenőrizhető a digitális aláírások számításaihoz kapcsolódó adatfolyamok és kódvégrehajtás jelei. TrustZone meglehetősen nagy pontossággal.
A Qualcomm chipekben lévő ECDSA-kulcsok segítségével digitális aláírás generálására fordított idő nagy részét a szorzási műveletek ciklusban történő végrehajtásával töltik, egy inicializálási vektorral, amely minden aláírásnál változatlan (
A Qualcomm esetében a szorzási algoritmusban két helyet azonosítottak, ahol ilyen információ szivárgott ki: a táblákban végzett keresési műveletek során és a feltételes adatlekérő kódban a „nonce” vektor utolsó bitjének értéke alapján. Annak ellenére, hogy a Qualcomm kód tartalmaz intézkedéseket a harmadik fél csatornáin keresztül történő információszivárgás ellen, a kifejlesztett támadási módszer lehetővé teszi ezen intézkedések megkerülését és a „nonce” érték több bitjének meghatározását, amelyek elegendőek a 256 bites ECDSA kulcsok helyreállításához.
Forrás: opennet.ru