Etusivu: Kyberturvallisuuskeskus
Etusivu: Kyberturvallisuuskeskus
Valikko

Meltdown- ja Spectre -hyökkäykset hyödyntävät prosessorien ongelmia

Haavoittuvuus1/2018

Meltdown- ja Spectre ovat hyökkäyksiä, jotka hyväksikäyttävät prosessoreiden tapaa ennakoida käskyjen suoritusta. Hyökkäysten avulla voidaan ohittaa prosessoreiden muistinsuojauksia. Haavoittuvuudet vaikuttavat erityisesti palvelinympäristöihin, joissa on useita käyttäjiä. Niissä käyttäjä voi saada haltuunsa toisten käyttäjien luottamuksellisia tietoja.

Päivitys 22.5.2018: Hyökkäyksestä on julkaistu uusia variantteja. Variantti 3A saattaa paljastaa järjestelmästä luottamuksellisia tietoja ja variantti 4 saattaa mahdollistaa tietojen lukemisen muistista.

Modernit prosessorit käyttävät tehokkuussyistä ennakoivaa suoritusta. Siinä prosessori pyrkii koodin haarautuessa ennakoimaan todennäköisempää polkua ja valmistelemaan sen suoritusta. Tällöin myös koodin tarvitsemat muistiviittaukset haetaan valmiiksi.

Meltdown-hyökkäys hyödyntää oikeustarkastusten puutetta muistiviittausten käsittelyssä. Käyttäjän oikeuksin suoritettavasta koodista voidaan viitata käyttöjärjestelmän ytimen muistialueisiin. Tavallisessa suorituksessa nämä viittaukset on estetty, mutta ennakoivan suorituksen aikana muistia käsitellään silti. Tämä mahdollistaa ytimen muistin lukemisen tarkastelemalla, luettiinko muistialue välimuistiin ennakoivan suorituksen aikana. Ytimen muistista voidaan lukea esimerkiksi salasanoja, salausavaimia, tai muita luottamuksellisia tietoja.

Spectre-hyökkäyksessä hyökkääjä pyrkii ajamaan kohdejärjestelmässä täsmälleen samanlaista koodinpätkää kuin jossain kohteeksi valitussa prosessissa. Hyökkääjän koodi pystyy tällöin vaikuttamaan myös kohdeprosessin koodin ennakoivaan suorittamiseen. Ennakoivan suorituksen aikana saatetaan tällöin käsitellä muistialueita, joihin koodi ei tavallisen suorituksen aikana menisi. Hyökkääjä voi tässäkin tapauksessa lukea luottamuksellista muistia tarkastelemalla muistinkäsittelyn ajoituksia, tai käyttäen jotain muuta sivukanavaa. Hyökkäyksen toteuttaminen voi olla hankalaa, sillä ennakoivan suorituksen yksityiskohtainen toteutus vaihtelee eri prosessorimalleissa. Spectre-hyökkäyksen kuvaavassa artikkelissa hyökkäys oli onnistuneesti toteutettu myös selaimessa JavaScript-koodilla.

Linux on julkaissut päivitykset Meltdown-hyökkäystä vastaan Intel- ja ARM-pohjaisille prosessoreille.

Kohde

  • Työasemat ja loppukäyttäjäsovellukset
  • Palvelimet ja palvelinsovellukset

Hyökkäystapa

  • Etäkäyttö
  • Paikallisesti

Vaikutukset

  • Suojauksen ohittaminen
  • Luottamuksellisen tiedon hankkiminen

Ratkaisu

  • Korjaava ohjelmistopäivitys
  • Ongelman rajoittaminen
  • Ei päivitystä

Haavoittuvuuden kohde

Meltdown-hyökkäys vaikuttaa ainakin Intelin valmistamiin prosessoreihin.

Spectre-hyökkäys vaikuttaa Intelin lisäksi ainakin AMD- ja ARM-prosessoreihin.

Mistä on kysymys?

Microsoft on julkaissut Out of Band -päivityksen (Ulkoinen linkki), joka korjaa tai rajoittaa haavoittuvuuksien vaikutuksia.

Linuxiin on julkaistu KPTI-niminen joukko päivityksiä, jotka eri jakeluversiot ottavat käyttöön. KPTI estää Meltdown-hyökkäyksen hyväksikäytön.

Myös useat muut valmistajat, kuten VMWare, Citrix, Google, Mozilla ja F5 ovat julkaisseet päivityksiä.

Päivitykset kannattaa asentaa sitä mukaa, kun niitä tulee saataville.

Päivityksillä voi olla vaikutuksia suorituskykyyn riippuen käytetystä prosessorista ja työkuorman luonteesta.

Mitä voin tehdä?

Julkaistu Viestintäviraston sivulla 4.1.2018 04.01.2018 klo 13:21 Julkaistu 04.01.2018 klo 13:36 Lisätty linkki AMD:n tiedotteeseen 22.05.2018 klo 16:30 Lisätty tiedot varianteista 3A ja 4