Intelin suorittimissa on suunnitteluvirhe, jonka korjaaminen tulee vaikuttamaan suorituskykyyn – paikat pian saatavilla

Intelin suorittimissa on merkittävä suunnitteluvirhe, minkä vuoksi kaikki Intelin suorittimia käyttävät käyttöjärjestelmät on päivitettävä, The Register kertoo. Ongelma voidaan korjata ainoastaan käyttöjärjestelmän ytimen tasolla.

Ainakin Microsoftin Windowsin sekä Linuxin kehittäjät ovat jo työstäneet korjausta järjestelmien kerneleihin. Myös Applen on korjatta MacOS-järjestelmänsä. Registerin mukaan Microsoftin odotetaan tuovan päivityksen laajempaan jakoon seuraavan paikkatiistain päivityspaketin mukana. Niitä on testattu Windows Insider -käyttäjillä jo marras- ja joulukuussa.

Korjaus muuttaa ytimen toimintaa niin merkittävällä tavalla, että koko järjestelmän suorituskyvyn odotetaan laskevan hieman. Toistaiseksi hidastuksen määrästä on vain arvioita, Registerin mukaan vaikutus voi tehtävästä riippuen olla viidestä jopa 30 prosenttiin. Vaikutuksen odotetaan olevan pienempi tuoreemmilla Intelin suorittimilla, joissa on muistinkäyttöön vaikuttavia ominaisuksia kuten PCID.

Haavoittuvuudesta ei ole julkaistu tarkempia tietoja ennen kuin isot järjestelmävalmistajat saavat päivityksen valmiiksi. Linuxin kernelille tarkoitetut korjaukset ovat julkisessa jaossa, mutta koodista on poistettu kommentit varsinaisen ongelman hämärtämiseksi.

Ytimen suojaus pettää

Jotain ongelmasta kuitenkin tiedetään. The Registerin mukaan vian uskotaan vaikuttavan Intelin suorittimiin viimeisen kymmenen vuoden ajalta. Ilmeisesti kyse on siitä, että suunnitteluvirheen vuoksi osa käyttäjätilassa ajetuista ohjelmista voi päästä käsiksi ytimen suojattuihin muistialueisiin.

Korjauksen tarkoituksena on erottaa ytimen muisti kokonaan käyttäjätilassa ajettavien ohjelmien muistista käyttäen Kernel page table isolation -tekniikka eli KPIT:ta. Jossain vaiheessa korjaustyötä Linuxin kehittäjät suunnittelivat kutsuvansa korjausta nimellä Forcefully Unmap Complete Kernel With Interrupt Trampolines, mikä olisi lyhentynyt sanaksi FUCKWIT, The Register kertoo kehittäjien turhautumisesta.

Erotuksessa on kyse siitä, että tavallisesti laitteistoa hallinnoiva järjestelmän kerneli on osa kaikkien ajettavien prosessien muistialuetta, jotta siirtyminen ytimestä ohjelmiin ja toisinpäin olisi mahdollisimman nopeaa. Ohjelmat eivät kuitenkaan voi nähdä samassa muistitilassa olevaa ydintä.

Paikkaus siirtää ytimen kokonaan toiseen muistipaikkaan. Se aiheuttaa koko järjestelmään hidastumista, sillä kokonaisten osoitealuiden välillä siirtyminen on hitaampaa.

Haavoittuvuuden avulla hyökkääjät voisivat parhaassa tapauksessa helpommin hyödyntää muita haavoittuvuuksia, The Register selittää. Pahimmillaan haavoittuvuuden avulla voitaisiin päästä käsiksi ytimen suojattuihin muistialueisiin. Se on paha tietoturvaongelma, sillä ytimen muistialueilla käsitellään esimerkiksi salasanoja, kirjautumisavaimia ja muualta järjestelmästä tallennettuja tietoja. Ovela hyökkääjä voisi lukea käyttäjän salasanat esimerkiksi selaimella ajettavalla JavaSciprt-koodinpätkällä.

Ongelma ei vaikuta ainakaan toistaiseksi peruskäyttäjiin. Sen sijaan sillä voi olla iso vaikutus pilvipalveluntarjoajiin kuten Amazoniin, Googleen ja Microsoftiin, joiden pilvialustat perustuvat Intelin suorittimiin.

Lähde: Tivi