Salausavaimia nuuhkivaa haavoittuvuutta ei voida korjata esimerkiksi mikrokoodipäivityksellä ja siltä suojautuminen jää ohjelmistokehittäjien tehtäväksi suorituskyvyn kustannuksella.

Sivukanavahyökkäykset ovat olleet viime vuosina etenkin useiden x86-prosessoreiden harmina, vaikkei muutkaan arkkitehtuurit ole säästyneet niiltä täysin. Nyt vuorossa on yksinomaan Applen Arm-prosessoreita koskeva vakavamman pään haavoittuvuus.

GoFetchiksi nimetty sivukanavahyökkäys mahdollistaa kryptografisten tietojen nuuskimisen prosessorin välimuisteista ja sen myötä sopivan avaimen luomisen salatun datan avaamiseen. Erityisen haastavan ongelmasta tekee se, että sitä ei voida korjata eikä se vaadi toimiakseen edes korotettuja käyttäjäoikeuksia – ainut vaatimus on, että GoFetch-hyökkääjä ja kohteena oleva kryptografinen sovellus pyörivät samassa prosessoriryppäässä.

Hyökkäyssovelluksen kerrotaan ottavan yhteyden kohteena olevaan kryptografiseen sovellukseen ja syöttää sille itse sopivaa dataa joko allekirjoitettavaksi tai purettavaksi. Kun sovellus sitten prosessoi kyseistä toimintoa, varastaa GoFetch tarvitsevansa datan välimuisteista.

GoFetch-hyökkäyksen kerrotaan toimivan sekä perinteisiä salausalgoritmeja että kvanttikoneiden hyökkäysten varalta terästettyjen salausalgoritmien kanssa. Sovelluksen kerrotaan kykenevän nappaamaan 2048-bittisen RSA-avaimen alle tunnissa ja niin ikään 2048-bittisen Diffie-Hellman-avaimen reilussa parissa tunnissa. Kyber-512-avaimen se kykenee luomaan varastetusta datasta 54 minuutissa ja Dilithium-2-avaimen noin 10 kymmenessä tunnissa, kertoo Ars Technica. Kahdessa viimeisessä esimerkissä ei ole huomioitu raa’an datan prosessointiin menevää aikaa, jota ei artikkelissa tarkennettu.

Haavoittuvuus koskee Applen M1-, M2- ja M3-piirejä ja kuten jo todettu, se ei ole korjattavissa. Sen sijasta suojautuminen hyökkäykseltä jää sovelluskehittäjien harteille. Ikävämmän tilanteesta tekee se, että tiedossa olevat suojaukset tapaavat myös olemaan myrkkyä suorituskyvylle. M3-piirien kohdalla on ilmeisesti periaatteessa mahdollista suojautua hyökkäykseltä täysin, mutta se tarkoittaa samalla prefetcherin DMP-ominaisuuden kytkemistä pois päältä, mikä taas vaikuttaa suorituskykyyn kaikkialla. Teoriassa riittävä suojaus olisi myös kryptografisen sovelluksen pyörittäminen energiatehokkailla ytimillä, jotka eivät tue DMP:tä, mutta se taas hidastaa niiden toimintaa merkittävästi suorituskykyisiin ytimiin verrattuna.

Syvemmin GoFetchistä kiinnostuneille suosittelemme lämpimästi esimerkiksi ArsTechnican syväluotaavaa artikkelia aiheesta.

Lähde: ArsTechnica

This site uses XenWord.
;