Spectre (tietoturvahaavoittuvuus)
Spectre ja Meltdown ovat tietokoneen suorittimissa olevia tietoturva-aukkoja.[1] Meltdown perustuu virheeseen suorittimen kyvyssä suorittaa ohjelmaa epäjärjestyksessä (engl. out of order execution).[1] Spectre perustuu haarautumisen ennakoinnissa (engl. branch prediction) ja spekulatiivisessa suorituksessa olevaan virheeseen.[1] Haavoittuvuutta on kutsuttu "luultavasti pahimmaksi koskaan löydetyksi suorittimen bugiksi".[2]
Suorittimet suorittavat käskyjä ennakoivasti ja hylkäävät suoritetun osan mikäli ennakoitu ehto olikin väärä.[3] 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.[3] Välimuistiin jääneet arvot voidaan havaita, koska niiden haku on hieman nopeampaa.[3] Myös haarautumisen ennakoinnin nopeutta voidaan seurata, joka samalla tavoin voi paljastaa tietoa.[3] Käyttöjärjestelmiin on tehty muutoksia tavoitteena suojata haavoittuvuuksilta.[3]
Aukoista julkaistiin alkuvuonna 2018.[1] Aukon julkaisun jälkeen on löydetty useita muita muunnelmia (kuten Foreshadow, ZombieLoad, RIDL ja Fallout).[4] Julkaisun jälkeen on löydetty myös luokka haavoittuvuuksia nimeltä Microarchitectural Data Sampling (MDS), joka kohdistuu suorittimen sisäisiin puskureihin eikä välimuistiin.[5] Haavoittuvuudet mahdollistavat järjestelmän suojauksien ohittamisen ja suojautun järjestelmämuistin lukemisen antaen pääsyn tietoihin kuten salasanoihin ja salausavaimiin.[5] Myös suorittimien sisäisestä mikro-operaatioiden käsittelystä on löydetty haavoittuvuuksia.[6] Vuonna 2020 uutisoitiin Spectre-STC -muunnelmasta[7] ja vuonna 2021 julkistettiin SRV-muunnelma.[8][9] Vuonna 2024 kerrottiin BHI-muunnelmasta.[10]
Googlen tutkijoiden mukaan vastaavat haavoittuvuudet säilyvät uhkana.[11]
Katso myös
[muokkaa | muokkaa wikitekstiä]Lähteet
[muokkaa | muokkaa wikitekstiä]- ↑ a b c d James Sanders: Massive Intel CPU flaw: Understanding the technical details of Meltdown and Spectre techrepublic.com. 4.1.2018. Viitattu 24.9.2020. (englanniksi)
- ↑ Samuel Gibbs: Meltdown and Spectre: ‘worst ever’ CPU bugs affect virtually all computers theguardian.com. 4.1.2018. Viitattu 29.9.2020. (englanniksi)
- ↑ a b c d e “Meltdown” and “Spectre:” Every modern processor has unfixable security flaws arstechnica.com. 4.1.2018. Viitattu 1.10.2020. (englanniksi)
- ↑ https://lviattack.eu
- ↑ a b James Sanders: Spectre and Meltdown explained: A comprehensive guide for professionals techrepublic.com. 15.5.2019. Viitattu 24.9.2020. (englanniksi)
- ↑ I See Dead µops: Leaking Secrets via Intel/AMD Micro-Op Caches (PDF) cs.virginia.edu. Arkistoitu . Viitattu 30.7.2022. (englanniksi)
- ↑ A Formal Approach for Detecting Vulnerabilities to Transient Execution Attacks in Out-of-Order Processors ieeexplore.ieee.org. 9.10.2020. doi:10.1109/DAC18072.2020.9218572. Viitattu 11.4.2024. (englanniksi)
- ↑ Speculative Vectorisation with Selective Replay ieeexplore.ieee.org. 4.8.2021. doi:10.1109/ISCA52012.2021.00026. Viitattu 11.4.2024. (englanniksi)
- ↑ Sayinath Karuppanan & Samira Mirbagher Ajorpaz: An Attack on The Speculative Vectorization: Leakage from Higher Dimensional Speculation arxiv.org. 2.2.2023. Viitattu 26.8.2024. (englanniksi)
- ↑ Jessica Lyons: It's 2024 and Intel silicon is still haunted by data-spilling Spectre theregister.com. 10.4.2024. Viitattu 11.4.2024. (englanniksi)
- ↑ Google: Software is never going to be able to fix Spectre-type bugs arstechnica.com. 23.2.2019. Viitattu 1.10.2020. (englanniksi)