Hacker Newsiin ilmestyi torstaina uusi käyttäjätili. Sen takana oli OpenAI:n kehittäjä, joka kertoi rakentaneensa järjestelmän, joka oli juuri käynyt läpi Linux-ytimen. Hän kirjoitti tavoitteekseen, että internetissä ei olisi enää haavoittuvuuksia. Lisäksi hän lupasi skannata Linuxin uudelleen aina, kun yhtiö saa käyttöönsä uuden sukupolven kyberturvamallin.
Taustalla on OpenAI:n blogikirjoitus A thousand fewer paths to root (suomeksi suunnilleen ”Tuhat reittiä pääkäyttäjäksi vähemmän”). Sen mukaan yhtiön julkaisematon kyberturvamalli löysi, varmisti ja kirjoitti korjauksen 948 haavoittuvuuteen, joiden kautta tavallinen käyttäjä voi korottaa oikeutensa pääkäyttäjän tasolle. Koko ajon API-kulut olivat yhtiön mukaan noin 1,2 miljoonaa dollaria.
Kaikki luvut ovat OpenAI:n omia. Ne pitää lukea yhtiön ilmoituksena eikä vahvistettuna tietona.
Mitä oikeuksien korotus tarkoittaa?
Käyttöjärjestelmän ydin on ohjelma, joka päättää, kuka saa tehdä mitä. Tavallinen sovellus tai käyttäjä toimii rajatuilla oikeuksilla, ja vain pääkäyttäjä (root) pääsee kaikkialle. Oikeuksien korotuksessa (local privilege escalation) hyökkääjä, joka on jo päässyt laitteelle heikoilla oikeuksilla, käyttää ytimen virhettä ja nousee pääkäyttäjäksi.
Tämä koskee muitakin kuin palvelinten ylläpitäjiä. Android-puhelimet perustuvat Linux-ytimeen, samoin valtaosa pilvipalvelimista, reitittimistä ja autojen järjestelmistä. Yleinen hyökkäysketju menee niin, että haittasovellus tai selaimen aukko antaa ensin rajatun pääsyn ja ytimen virhe tekee siitä täyden hallinnan. Jos puhelimen valmistaja ei jaa päivityksiä, aukko jää laitteeseen vuosiksi.
OpenAI:n tekstissä tämä sanotaan suoraan: heikoilla oikeuksilla saatua pääsyä päivittämättömään järjestelmään ”pitäisi pitää käytännössä samana kuin pääkäyttäjän pääsyä hyvin resursoidulle uhkatoimijalle” (englanniksi ”should be considered functionally equivalent to root access for a well-resourced threat actor”, Hacker Newsin keskustelijan lainaama).
Näin malli toimi
Järjestelmä toimi itsenäisesti. Se etsi virheitä, kokeili niitä hyökkäyksenä ja kirjoitti lopuksi korjauksen. Hacker Newsissa ketjun kirjoittajaksi esittäytyvä nimimerkki ky1ebot1337 kertoi, että varmennettuina pidettiin vain virheitä, joihin tavallinen käyttäjä pääsee käsiksi ilman erityisoikeuksia ja jotka aiheuttavat mitattavan muistin korruptoitumisen. Kohdekoneina olivat yhtiön mukaan ”tavallista työpöytäkäyttöjärjestelmää” ajavat virtuaalikoneet.
Luku 948 lasketaan korjausten mukaan. Kehittäjä selitti tämän itse, ja englanninkielinen kommentti on käännetty tässä tarkasti: ”Nämä ovat erillisiä haavoittuvuuksia korjausten määrällä laskettuna. Korjausten tuottamisjärjestelmä tekee varianttianalyysin. Jokainen korjaus voi siis mahdollisesti estää useita hyökkäyksiä.” Hänen mukaansa toimivia hyökkäyksiä löytyi enemmän kuin julkaistiin.
“Huomasin, että vahvemmat mallit löytävät paljon enemmän haavoittuvuuksia, joita heikommat mallit eivät löydä.”
Halvempaa kuin palkkiometsästäjät
Kun 1,2 miljoonaa dollaria jaetaan 948:lla, yksi haavoittuvuus maksoi noin 1 270 dollaria eli runsaat 1 100 euroa. Summassa ovat mukana löytäminen, hyökkäyksen todentaminen ja korjausehdotus.
Ihmisille tällaisesta työstä maksetaan paljon enemmän. Googlen kernelCTF-ohjelma, joka palkitsee Linux-ytimen oikeuksien korotuksista, maksoi vuonna 2023 julkaistujen sääntöjensä mukaan toimivasta hyökkäyksestä vähintään 21 337 dollaria. Sillä hinnalla 948 löydöstä olisi maksanut yli 20 miljoonaa dollaria. Vertailu ontuu, koska kernelCTF vaatii valmiin hyökkäyksen ja OpenAI:n löydöksiä ei ole ulkopuolisesti arvioitu. Suuruusluokka on silti selvä.
Ihmistyö ei kuitenkaan katoa yhtälöstä. OpenAI myöntää itse, että ”tässä mittakaavassa jokaisen raportin käsin tutkiminen on tutkimustiimillemme epäkäytännöllistä”. Tarkistustyö siirtyy siis jollekulle muulle. Usein se on vapaaehtoinen ylläpitäjä.



