Spectre (tietoturvahaavoittuvuus)

Spectre ja Meltdown ovat tietokoneen suorittimissa olevia tietoturva-aukkoja. Meltdown perustuu virheeseen suorittimen kyvyssä suorittaa ohjelmaa epäjärjestyksessä (). Spectre perustuu haarautumisen ennakoinnissa () ja spekulatiivisessa suorituksessa olevaan virheeseen. Haavoittuvuutta on kutsuttu "luultavasti pahimmaksi koskaan löydetyksi suorittimen bugiksi".

Suorittimet suorittavat käskyjä ennakoivasti ja hylkäävät suoritetun osan mikäli ennakoitu ehto olikin väärä. Hylätyt käskyt eivät muuta ohjelman lopputulosta, mutta vaikuttavat välimuistin myöhempään suorituskykyyn myös, kun arvoja ei olisi koskaan pitänyt ladata ilman ennakoivaa suorittamista. Välimuistiin jääneet arvot voidaan havaita, koska niiden haku on hieman nopeampaa. Myös haarautumisen ennakoinnin nopeutta voidaan seurata, joka samalla tavoin voi paljastaa tietoa.
Käyttöjärjestelmiin on tehty muutoksia tavoitteena suojata haavoittuvuuksilta.

Aukoista julkaistiin alkuvuonna 2018.
Aukon julkaisun jälkeen on löydetty useita muita muunnelmia (kuten Foreshadow, ZombieLoad, RIDL ja Fallout).
Julkaisun jälkeen on löydetty myös luokka haavoittuvuuksia nimeltä Microarchitectural Data Sampling (MDS), joka kohdistuu suorittimen sisäisiin puskureihin eikä välimuistiin. Haavoittuvuudet mahdollistavat järjestelmän suojauksien ohittamisen ja suojautun järjestelmämuistin lukemisen antaen pääsyn tietoihin kuten salasanoihin ja salausavaimiin.
Myös suorittimien sisäisestä mikro-operaatioiden käsittelystä on löydetty haavoittuvuuksia.

Googlen tutkijoiden mukaan vastaavat haavoittuvuudet säilyvät uhkana.

Katso myös 
 Load Value Injection

Lähteet

Aiheesta muualla 
 https://meltdownattack.com
 https://www.kyberturvallisuuskeskus.fi/fi/meltdown-ja-spectre-hyokkaykset-hyodyntavat-prosessorien-ongelmia

Turvallisuushaavoittuvuudet
Suorittimet