Raziskovalci uspeli rekonstruirati 1024-bitni RSA ključ v 104 urah

Matej Kovačič

11. mar 2010 ob 12:02:58

Todd Austin, Valeria Bertacco in Andrea Pellegrini in University of Michigan so odkrili nov napad na zasebne RSA šifrirne ključe ter resno ranljivost v kriptografski knjižnici OpenSSL oziroma njenem RSA avthentikacijskem mehanizmu, ki za potenciranje uporablja CRT (Chinese Remainder Theorem - kitajski izrek o ostankih) funkcijo.

Gre za klasičen posredni napad na kriptografijo (tim. channel side napad) oziroma napad na strojno programsko opremo, na kateri teče kriptografska koda. Raziskovalci so namreč ugotovili, da je z majhnimi spremembami (nižanjem) napetosti električne energije s katero se napaja procesor mogoče povzročiti napako (spremembo enega bita, tim. single-bit error) v delovanju procesorja, kar pa v primeru, da procesor izvaja kriptografske operacije privede do razkritja 4 bitov zasebnega šifrirnega ključa. Napad ne povzroči nobene poškodbe strojne opreme in ga je zato praktično nemogoče zaznati, poleg tega pa do takih napak pogosto prihaja tudi pri normalnem delovanju procesorja.

Raziskovalci so tako uspeli zbrati 10.000 digitalnih podpisov, od katerih jih je bilo 8.800 poškodovanih in ki so razkrivali informacije o RSA šifrirnem ključu. S pomočjo analize v gruči 81 računalnikov s procesorji 2,4 GHz Pentium 4 so nato uspeli rekonstruirati 1024-bitni zasebni šifrirni ključ. Za to so potrebovali približno 650 poškodovanih digitalnih odpisov (ang. single-bit corrupted signature). Analiza je trajala le 104 ure (oziroma eno leto procesorskega časa na enoprocesorskem računalniku). V napadu so uporabili SPARC Linux sistem z OpenSSL 0.9.8i, ki je tekel na FPGA plošči.

Raziskovalci so napad poimenovali Fault-based Attack of RSA Authentication, več podrobnosti pa v članku.

Kljub temu pa je potrebno poudariti, da omenjena tehnika napada v praksi ni preveč uporabna, saj zahteva fizični dostop do strojne opreme. Je pa tehniko mogoče uporabiti v primeru napadov na kriptografske implementacije DRM-ja na igralnih konzolah, mobilnih telefonih in multimedijskih predvajalnikih.

Mimogrede, lansko leto so Barenghi, Bertoni, Parrinello in Pelosi iz milanske Politehnike predstavili podoben napad na ARM procesor, ugotovitve pa so objavili v članku Low Voltage Fault Attacks on the RSA Cryptosystem.

(Delno) ista skupina (Barenghi, Bertoni, Breveglieri, Pellicioli in Pelosi) pa pripravlja še podoben napad na AES-128, AES-192 in AES-256 (tehnično poročilo Low Voltage Fault Attacks to AES and RSA on General Purpose Processors je objavljeno na Cryptology ePrint Archive).

Se kriptografskim implementacijam na strojni opremi obetajo težki časi?