Tuhat reittiä vähemmän pääkäyttäjäksi
Kehitimme autonomisen putken haavoittuvuuksien etsintään, hyväksikäyttöön ja korjaamiseen. Kyberturvallisuusmallimme yksi ajo varmisti ja korjasi 948 Linuxin paikallisen käyttöoikeuksien korotuksen haavoittuvuutta 1,2 miljoonan dollarin API-kuluilla.
Tietoturvatutkimusta, jossa jokainen löydös vaati aiemmin erillisen pitkäjänteisen selvityksen, voidaan yhä useammin toteuttaa järjestelmällisenä prosessina. Tässä artikkelissa käsitellään yhtä hankettamme tällä alalla.
Haavoittuvuuksien etsintää on yhä helpompi skaalata, mutta priorisointi ja varmentaminen ovat edelleen käytännön pullonkauloja. Rakensimme prototyypin, joka etsii Linux-ytimen tietoturvapuutteita hallitussa tutkimusympäristössä. Prototyyppimme tunnisti ja analysoi 2 308 alustavaa Linux-ytimen löydöstä, toisti dynaamisesti 1 724 haavoittuvuutta ja tuotti 948 paikallisen käyttöoikeuksien korotuksen (LPE) hyväksikäyttökoodia. Niillä paikallinen käyttäjä voisi saada pääkäyttäjäoikeudet ilman aiempia erityisoikeuksia.
Priorisoimme raportoitavat haavoittuvuudet tämän näytön perusteella ja kehitimme korjausehdotukset ylläpitäjien tarkistettaviksi. Linux-ydinyhteisön ohjeiden mukaisesti aloitimme kriittisistä haavoittuvuuksista. Työstämme lisää raportteja ja korjauksia Patch the Planet -kumppanien kanssa.
Kerroimme kesäkuussa osana Patch the Planet -hankettamme, että GPT‑5.5 Cyber oli tunnistanut Linux-ytimen haavoittuvuuksia ja kehittänyt 24 paikallisen käyttöoikeuksien korotuksen hyväksikäyttökoodia niiden varmentamista ja raportointia varten. Laajensimme työn tulevaa kyberturvallisuusmallia hyödyntäväksi tutkimusputkeksi, joka kattaa haavoittuvuuksien etsinnän, dynaamisen varmentamisen, hyväksikäytettävyyden arvioinnin ja korjausten tuottamisen. Ajon valmistuttua tutkijat tarkistivat tulokset ja raportoivat löydetyt haavoittuvuudet korjauksineen.
Yhteenveto
Menetelmät
Pääpiirteissään tutkimusputkemme toimii seuraavasti: se tunnistaa ensin Linux-ytimen tietoturvan kannalta olennaiset osat ja etsii näistä tarkastuskohteista mahdollisia haavoittuvuuksia staattisella analyysillä. Sen jälkeen se toistaa löydökset dynaamisesti eristetyssä ympäristössä, luo hyväksikäytettävyyden osoittavan PoC-hyväksikäyttökoodin ja tuottaa korjaukset. Lopuksi tietoturvatutkija tarkistaa tulokset.
Tutkimusputki tuottaa juurisyyanalyysin, minimaalisen kaatumisen aiheuttavan PoC-toteutuksen, korjausehdotuksen ja täyden hyväksikäyttökoodin. Ne auttavat tutkijoita arvioimaan haavoittuvuuden vakavuutta ja saamaan korjaukset osaksi alkuperäistä projektia.
Tulokset
Lokakuun 2026 puolivälissä tehdyssä ajossa tulevaa kyberturvallisuusmallia käyttävä tutkimusputkemme toisti dynaamisesti 1 724 haavoittuvuutta ja tuotti PoC-toteutukset 291 tietovuotohaavoittuvuudelle sekä 948 toimivaa paikallisen käyttöoikeuksien korotuksen (LPE) hyväksikäyttökoodia yleisesti käytetylle Linux-jakelulle. Koko ajo kulutti API-krediittejä 1 213 430 dollarin arvosta eli 1 279 dollaria LPE-hyväksikäyttökoodia kohti.
Kohteena olevissa virtuaalikoneissa oli tavallinen työpöytäkäyttöjärjestelmä, ei heikennetty kohde. Käytössä oli sama uhkamalli kuin kyberturvallisuuskilpailuissa (esim. Pwn2Own(avautuu uudessa ikkunassa) ja TyphoonPWN(avautuu uudessa ikkunassa)). Pwn2Own ja TyphoonPWN ovat aiemmin tarjonneet Linux-ytimen LPE-hyväksikäyttökoodeista vastaavasti 20 000 ja 70 000 dollarin haavoittuvuuspalkkiot. Näillä aiemmilla palkkiosummilla 948 hyväksikäyttökoodin hypoteettinen arvo olisi 18,9–66,3 miljoonaa dollaria eli noin 16–55 kertaa tutkimusputkemme kustannukset.
Mukautetussa kernelCTF(avautuu uudessa ikkunassa)-ympäristössä, jossa Linux-ytimen hyökkäyspintaa on pienennetty, tutkimusputkemme tuotti 25 tietovuodon PoC-toteutusta ja 21 LPE-hyväksikäyttökoodia. Vertailun vuoksi kernelCTF oli hyväksynyt vuonna 2026 kirjoitushetkeen mennessä 26 vahvistettua nollapäivähaavoittuvuuden LPE-hyväksikäyttökoodia.
Tutkimusajo kulutti API-krediittejä noin 32 936 dollarin arvosta. Jos ohjelma hyväksyisi nämä 21 haavoittuvuutta, niistä maksettaisiin noin 1,5 miljoonan dollarin palkkio eli noin 45 kertaa skannauksen kustannukset.
Tietojemme mukaan tutkimusputken agentit löysivät ja käyttivät vähintään kymmentä uutta Linuxin hyväksikäyttötekniikkaa.
Pohdintaa
Linuxin ylläpitäjät ja tietoturvayhteisö tekevät lujasti töitä löytääkseen ja korjatakseen haavoittuvuudet nopeasti. Skannauksen kymmenen päivän aikana havaitsimme, että yli sataan Linuxin LPE-haavoittuvuuteen oli jo saatu korjaus tai valmisteilla oleva korjaus muilta osallistujilta. Lisäksi noin 300 haavoittuvuudesta keskusteltiin julkisesti.
Koska edistyneet mallit löytävät haavoittuvuuksia niin nopeasti, uskomme automaattisen korjausten tuottamisen olevan välttämätöntä ohjelmistojen suojaamiseksi riittävän nopeasti ja hyväksikäytölle avoimen aikaikkunan rajaamiseksi. Uskomme, että asiantuntijoiden ohjaaman iteroinnin avulla tekoälyn tuottamat korjaukset voivat olla toiminnallisesti oikeita, nykyisten koodaustyylien mukaisia ja kestäviä hyökkäysten eri muunnelmia vastaan. Tämä on tärkeä jatkotutkimuksen kohde.
Kyvykkäämmät mallit pystyvät löytämään nykyisestä koodista uusia haavoittuvuuksia, myös sellaisia, jotka ovat olleet siinä pitkään ja joiden tunnistaminen on monimutkaisempaa. Uudempaa kyberturvallisuusmallia käyttävä analyysiputkemme löysi lokakuun puolivälissä yli viisinkertaisen määrän uusia LPE-haavoittuvuuksia heinäkuun GPT‑5.6 Sol -ajoon verrattuna, vaikka suojauksia oli vahvistettu kolme kuukautta skannausten välillä.
Suurissa ja monimutkaisissa ohjelmistoprojekteissa tarvitaan todennäköisesti useita skannaus- ja korjauskierroksia, jotta piilevät virheet saadaan löydettyä mahdollisimman kattavasti. Ihannetapauksessa tämä prosessi toistetaan jokaisella uudella edistyneiden mallien sukupolvella. Tämä koskee sekä suljetun että avoimen lähdekoodin ohjelmistoja.
Lyhyellä ja keskipitkällä aikavälillä hyvin resursoidun uhkatoimijan pääsyä rajattujen oikeuksien käyttäjätilille on pidettävä käytännössä pääkäyttäjäoikeuksia vastaavana, jos käyttöjärjestelmään ei ole asennettu uusimpia saatavilla olevia korjauksia. Monikerroksinen suojaus, hiekkalaatikot ja Firecrackerin ja gVisorin kaltaiset eristysratkaisut ovat tärkeitä hyväksikäytettyjen haavoittuvuuksien vaikutusten rajaamisessa.
Uskomme, että muutaman vuoden kuluessa edistyneet mallit pystyvät todennäköisesti löytämään ohjelmistoprojektissa olevat haavoittuvuudet. Niiden julkistamisen jälkeen myös vähemmän kyvykkäät mallit saattavat pystyä kehittämään hyväksikäyttökoodeja. Maailmassa, jossa ei ole tuntemattomia haavoittuvuuksia, on ratkaisevan tärkeää rakentaa ja ylläpitää ohjelmistoja, joiden turvallisuudesta on vahvat takeet. Tämä koskee erityisesti perusohjelmistoja, kuten käyttöjärjestelmiä, selaimia, kuvien jäsennyskirjastoja ja TCP/IP-pinoa. Nykyisten haavoittuvuuksien etsimisen ja korjaamisen lisäksi lupaavia jatkotutkimuksen kohteita ovat mallien kouluttaminen kirjoittamaan oletusarvoisesti turvallista koodia, hyökkäyspinnan minimointi poistamalla tarpeettomia ominaisuuksia sekä formaali verifiointi. Niillä voidaan parantaa ohjelmistoturvallisuutta tehokkaasti laajassa mittakaavassa.
Linux-ydin on Android-laitteiden, pilvi-infrastruktuurin, supertietokoneiden ja muiden miljardien ihmisten käyttämien järjestelmien perusta. Yli 40 miljoonan koodirivin ydin tarjoaa laajan hyökkäyspinnan järjestelmäkutsujen, verkkotoimintojen, tiedostojärjestelmien ja laiteajurien kautta. Valitsimme Linuxin tutkiaksemme, kuinka tehokkaasti edistyneet mallit voisivat löytää haavoittuvuuksia ja osoittaa niiden tietoturvavaikutukset näin suuressa ja tärkeässä koodikannassa.
Ensimmäinen haavoittuvuuksien etsintävaihe tuotti tuhansia alustavia löydöksiä – liikaa tietoturvatutkijoiden manuaalisesti tarkastettaviksi ja luokiteltaviksi. Haavoittuvuuksien etsintäputkemme käytännön haaste ei ollut löytäminen vaan sen selvittäminen, mitkä löydökset voitiin toistaa, minkä tietoturvarajan ne ylittivät ja mitkä vaativat ylläpitäjien huomiota ensimmäisinä.
OpenAI:n Cyber-tiimin tehtävänä on auttaa suojaamaan ohjelmistoja, joista maailma on riippuvainen. Raportoimme kunkin vaiheen API-kustannukset, jotta tutkijat voivat arvioida työn toistamiseen ja laajentamiseen tarvittavia resursseja. Nämä kustannukset perustuvat tässä arvioinnissa käytettyihin malleihin, kohdekokoonpanoihin ja työnkulkuun. Laajempi tavoitteemme on auttaa puolustajia löytämään ja korjaamaan haavoittuvuuksia, vähentää hyökkääjien mahdollisuuksia ja nostaa ohjelmistojen hyväksikäytön kustannuksia heille.
On myös syytä huomata, että keskityimme tässä tutkimuksessa menetelmiin ja mallien kyvykkyyden mittaamiseen, emme kustannuksiin. Odotamme, että arviointikehyksen riittävä kehittäminen voisi pienentää kunkin vaiheen kustannuksia merkittävästi. Raportoimamme kustannukset ovat siis pikemminkin yläraja.
Haavoittuvuustutkimuksen prototyyppimme on viisivaiheinen putki, jonka ytimessä on tuleva kyberturvallisuusmalli:
Haavoittuvuuksien etsintä: Agentit tunnistavat koodikannan tietoturvan kannalta olennaiset osat ja skannaavat niistä alustavia löydöksiä.
Dynaaminen varmentaminen: Agentit yrittävät toistaa kunkin alustavan löydöksen eristetyssä ympäristössä ja tallentavat ajonaikaisen näytön. Tämä vaihe tuottaa toistetut ja varmennetut haavoittuvuudet.
Hyväksikäytettävyyden arviointi: Agentit testaavat, voivatko varmennetut haavoittuvuudet mahdollistaa tietojen paljastumisen tai paikallisen käyttöoikeuksien korotuksen.
Korjausten tuottaminen: Agentit tuottavat korjaukset kuhunkin tunnistettuun haavoittuvuuteen.
Asiantuntijatarkastus: Tietoturvatutkijat tarkistavat hyväksikäyttökoodin, korjauksen ja ehdotetun vakavuusluokan ennen raportointia ylläpitäjille.
Tutkimusputken lopussa järjestelmä kokoaa yhteen juurisyyanalyysin, minimaalisen kaatumisen aiheuttavan PoC-toteutuksen, korjausehdotuksen ja täyden hyväksikäyttökoodin. Ne auttavat tutkijoita arvioimaan haavoittuvuuden vakavuutta ja saamaan korjaukset osaksi alkuperäistä projektia.
Kaikki Linux-ytimen koodirivit eivät ole tietoturvan kannalta olennaisia. Tutkimusputkemme kartoittaja-agentit tunnistivat arvokkaimmat tarkastuskohteet, jotka siirrettiin sitten analyytikkoagenteille haavoittuvuuksien skannausta varten.
Kartoittaja-agentit käyvät läpi jokaisen kansion ja tiedoston ja valitsevat tarkastuskohteet sen perusteella, ovatko ne rajattujen oikeuksien käyttäjien saavutettavissa ja olennaisia tietoturvan kannalta.
Tässä vaiheessa tunnistettiin 5 034 tarkastuskohdetta, noin 2,8 miljoonaa koodiriviä. Se vastaa noin seitsemää prosenttia Linux-ytimen koko koodikannasta ja pienentää tietoturvatarkastuksen kustannuksia merkittävästi verrattuna koko koodikannan analyysiin. Tämä vaihe kulutti API-krediittejä 3 426 dollarin arvosta.
Seuraavaksi analyytikkoagentit analysoivat kunkin tarkastuskohteen ja tuottivat alustavia löydöksiä samankaltaisella työnkululla kuin Codex Security -lisäosa(avautuu uudessa ikkunassa). Pääpiirteissään analyytikkoagentit lukevat niille osoitetun tarkastuskohteen koodin ymmärtääkseen sen toiminnan, tunnistaakseen sen uhkamallin ja etsiäkseen siitä haavoittuvuuksia.
Analyytikkoagentit tuottivat 12 tunnissa 2 308 alustavaa löydöstä, kun päällekkäisyydet oli poistettu. Tämä vaihe kulutti API-krediittejä 316 549 dollarin arvosta.
Alustava löydös ei ole sama asia kuin varmennettu haavoittuvuus. Tässä mittakaavassa tutkimusryhmämme ei voi käytännössä tutkia jokaista raporttia käsin.
Keskityimme siksi varmentamaan löydöksiä, jotka a) olivat rajattujen oikeuksien käyttäjän saavutettavissa, b) eivät vaatineet erityisvaltuuksia ja c) tuottivat mitattavaa näyttöä muistin korruptoitumisesta.
Jokaisen alustavan löydöksen kohdalla triage-agentti loi PoC-toteutuksen ja suoritti sen eristetyssä virtuaalikoneessa, jonka Linux-ytimessä oli käytössä Kernel Address Sanitizer (KASAN). Agentti tarkkaili sekä ohjelman tulostetta että järjestelmäkonsolia ja tarkensi sitten PoC-toteutusta iteratiivisesti, kunnes se toisti raportoidun toiminnan tai kaikki mahdolliset laukaisutavat oli kokeiltu.
Järjestelmämme toisti 30 tunnissa 1 724 haavoittuvuutta eli noin 74,7 % yhteensä 2 308 alustavasta löydöksestä. Pelkkä staattinen koodin tarkastus voi tuottaa vääriä positiivisia tuloksia. Siksi meihin teki vaikutuksen analyytikkoagenttien tarkkuus ja triage-agenttien tehokkuus: ne loivat itsenäisesti toimivat PoC-toteutukset lähes kolmelle neljäsosalle alustavista löydöksistä.
Useimmat jäljelle jääneet löydökset joko vaativat korotettuja käyttöoikeuksia tai jäivät toistamatta määräajassa. Syinä olivat vaikeat kilpailutilanteet, tarkat laukaisuehdot (esimerkiksi muistinvarauksen epäonnistuminen tietyllä rivillä) tai aikaa vievä varmentaminen (esimerkiksi viitelaskurin ylivuoto). Vain 3,1 % johtui mallin virheellisestä analyysistä, jossa raportoitu haavoittuvuus edellytti mahdotonta tilannetta.
Varmentamisvaihe kulutti API-krediittejä yhteensä 73 330 dollarin arvosta. Varmentamisputkemme oli luotava PoC-toteutus sen vahvistamiseksi, oliko alustava löydös todellinen haavoittuvuus. Havaitsimme tämän prosessin kalliimmaksi kuin pelkkään staattiseen analyysiin perustuvan suosituksen tekemisen. Todellisen ja väärän positiivisen löydöksen varmentamisyritysten kustannukset olivat samankaltaiset. Väärien positiivisten löydösten karsiminen aiemmin tutkimusputkessa parantaa siis prosessin kustannustehokkuutta merkittävästi.
Varmentaminen osoittaa haavoittuvuuden todelliseksi mutta ei kerro, kuinka kiireellisesti se pitäisi korjata. Esimerkiksi paikallisen käyttöoikeuksien korotuksen mahdollistava haavoittuvuus on syytä priorisoida korkeammalle kuin sellainen, joka voi aiheuttaa vain paikallisen palveluneston. Kun 1 724 haavoittuvuutta oli varmennettu, seuraava tehtävä oli tunnistaa löydökset, joilla voisi olla suurin vaikutus tietoturvaan.
Esiseulonta-agentti tarkasti jokaisen raportin, kaatumislokin ja olennaisen lähdekoodin staattisesti. Seulonta oli tarkoituksella sallivaa, jotta mahdollisesti vakavia löydöksiä ei hylättäisi. Samalla karsittiin tapaukset, joissa ei ollut uskottavaa hyväksikäyttöreittiä. Näin tulokset rajautuivat 313 mahdolliseen tietovuotoon ja 1 238 mahdolliseen paikalliseen käyttöoikeuksien korotukseen.
Hyväksikäyttökoodien kehittämiseen tarkoitetut ExploitDev-agentit testasivat sitten näitä kohteita eristetyissä virtuaalikoneissa. Niissä oli käytössä tavallisen Linux-jakelun suojaukset, kuten Supervisor Mode Execution Prevention (SMEP), Supervisor Mode Access Prevention (SMAP), Kernel Address Space Layout Randomization (KASLR) ja HARDENED_USERCOPY. Tämä auttoi välttämään epärealistisia arvioita, jotka olisivat edellyttäneet suojausten poistamista käytöstä.
Agentit tuottivat 291 tietovuodon PoC-toteutusta ja 1 169 toimivaa paikallisen käyttöoikeuksien korotuksen hyväksikäyttökoodia. Niillä paikalliset käyttäjät voisivat saada pääkäyttäjäoikeudet ilman aiempia erityisoikeuksia.
Teimme varianttianalyysin ja kehitimme 948 erillistä korjausta näiden hyväksikäyttökoodien taustalla oleviin haavoittuvuuksiin. Käytämme tätä lukua erillisten LPE-haavoittuvuuksien kokonaismääränä. Toimivan hyväksikäyttökoodin kehittäminen kulutti krediittejä keskimäärin 359 dollarin arvosta. Puolustajien on siis suhteellisen edullista testata löydettyjen haavoittuvuuksien hyväksikäytettävyyttä.
Haavoittuvuuksien esiseulonta-agentti kulutti API-krediittejä 44 194 dollarin arvosta. Hyväksikäyttövaihe kulutti API-krediittejä yhteensä 775 929 dollarin arvosta: 84 929 dollaria mahdollisten tietovuotojen käsittelyyn ja 691 000 dollaria mahdollisten paikallisten käyttöoikeuksien korotusten käsittelyyn.
Mahdollisen paikallisen käyttöoikeuksien korotuksen käsittely (558 dollaria) maksoi keskimäärin noin kaksi kertaa niin paljon kuin mahdollisen tietovuodon käsittely (271 dollaria). Tämä johtui siitä, että tietovuotojen PoC-toteutukset siirtyivät mukana varmentamisvaiheesta ja tarvitsivat vähemmän muutoksia tullakseen käyttökelpoisiksi hyväksikäytössä. Sen sijaan hyväksikäyttökoodin kehittäminen mahdolliselle LPE-haavoittuvuudelle vaati monia lisävaiheita, kuten hyväksikäyttöstrategian suunnittelua, käytettävien haavoittuvien objektien tunnistamista ja suojausten ohittamista. Havaitsimme myös, että epäonnistuneet hyväksikäyttöyritykset (3 922 dollaria, 69 tapausta) maksoivat paljon enemmän kuin onnistuneet (360 dollaria, 1 169 tapausta). Tämä johtui muutamista vaikeasti hyväksikäytettävistä haavoittuvuuksista, kuten kilpailutilanteista. Kohtuullinen keskeytysehto, esimerkiksi yrityksen lopettaminen tunnin edistymättömyyden jälkeen, olisi pienentänyt ExploitDevin kustannuksia merkittävästi.
Järjestelmä tuottaa myös korjauksen jokaiseen varmennettuun haavoittuvuuteen. Annamme mallille olennaisen lähdekoodin ja ohjeistamme sitä kehotteella noudattamaan korjausten kirjoittamisen parhaita käytäntöjä. Näitä ovat esimerkiksi korjauksen staattiset tarkistukset, ympäröivän koodin ohjelmistokehityskäytäntöjen noudattaminen ja varianttianalyysi korjauksen kattavuuden varmistamiseksi.
Linux-ydinyhteisön ehdotuksen mukaisesti olemme jo lähettäneet satoja raportteja ja korjauksia kriittisistä haavoittuvuuksista. Työskentelemme Patch the Planet -kumppanien kanssa lähettääksemme loput korjaukset vaiheittain. Työ on osa laajempaa Daybreak-sitoumustamme tukea avoimen lähdekoodin projekteja.
Tässä osiossa jaamme tutkimuksen oppeja, pohdintaa ja lisäanalyysejä.
Havaitsimme tutkimuksen aikana, että Linuxin ylläpitäjät toimivat nopeasti haavoittuvuuksien korjaamiseksi ja käyttäjien suojaamiseksi. Skannaus tehtiin uusimmalle Linux-ytimelle lokakuun 2026 puolivälissä. Kun autonominen skannaus ja manuaalinen analyysi valmistuivat kymmenen päivän kuluttua, 61 LPE-haavoittuvuutta oli jo korjattu alkuperäisessä projektissa, 43:een oli valmisteilla korjaus ja 299:stä raportoitiin ja keskusteltiin julkisesti.
Arvostamme suuresti Linuxin ylläpitäjiä, jotka ovat korjanneet tunnistettuja ongelmia kiireellisesti, sekä laajempaa tietoturvayhteisöä, joka on tuonut esiin omia löydöksiään. Juuri tällaista yhteistä toimintaa tarvitaan maailman ohjelmistojen suojaamiseen. Haavoittuvuuksien nopea julkistus- ja korjaustahti korostaa myös sitä, miten tärkeää käyttäjien ja yritysten on pitää ohjelmistonsa ajan tasalla.
Keskeinen oppi: Automaattisen triagen tulisi huomioida nopea korjaussykli. Löydösten varmentaminen uudelleen uusimmalla koodilla, myös alkuperäisen skannauksen jälkeen yhdistetyllä koodilla, auttaa välttämään päällekkäisiä tai vanhentuneita raportteja. Näin huomio kohdistuu ratkaisemattomiin haavoittuvuuksiin ja ylläpitäjät saavat toimintakelpoista näyttöä ilman tarpeetonta tarkastuskuormaa.
Kehittäessämme tutkimusputkea heinäkuun 2026 lopulla GPT‑5.6 Sol löysi ja hyväksikäytti 166 erillistä LPE-haavoittuvuutta. Koko prosessi kulutti API-krediittejä 513 690 dollarin arvosta.
Toisessa skannauksessa lokakuun 2026 puolivälissä uudempi kyberturvallisuusmalli löysi ja hyväksikäytti 948 erillistä LPE-haavoittuvuutta. Koko prosessi kulutti API-krediittejä 1 213 430 dollarin arvosta. Molemmissa tutkimusajoissa skannasimme Linux-ytimen senhetkisen uusimman master-haaran.
Keskeinen oppi: Skannaa aiemmin tarkastettu koodi uudelleen mallien kyvykkyyden kehittyessä. Kyvykkäämpi malli voi paljastaa aiemmilta malleilta huomaamatta jääneitä haavoittuvuuksia, vaikka tutkimuksessa käytettäisiin samaa arviointikehystä.
Otimme agenteilta 166 hyväksikäyttökoodin otoksen ja analysoimme niissä käytetyt hyväksikäyttötekniikat. Tietojemme mukaan agentit käyttivät otoksen hyväksikäyttökoodeissa kymmentä uutta hyväksikäyttötekniikkaa. Jaoimme tekniikat ulkopuolisille ytimen hyväksikäytön asiantuntijoille, ja ne olivat uusia myös heille.
Kymmenestä tekniikasta kaksi perustuu uusiin pysyviin, joustavan kokoisiin objekteihin, joilla malli täytti kohteena olevaa ytimen välimuistia. Kaksi on uusia muistisivujen järjestelytekniikoita, joilla parannetaan hyväksikäytön luotettavuutta. Viisi on uusia pelkkään dataan kohdistuvia tekniikoita käyttöoikeuksien korottamiseksi joko suoraan tai mielivaltaisen kirjoituksen kautta. Viimeinen tekniikka hyödyntää mielivaltaista tyyppisekaannusta. Turvallisuussyistä emme julkaise näiden uusien hyväksikäyttötekniikoiden kaikkia teknisiä yksityiskohtia tässä artikkelissa.
Keskeinen oppi: Edistyneet mallit eivät pelkästään tunnista tunnettuja haavoittuvia koodirakenteita tai käytä vain tunnettuja hyväksikäyttötekniikoita. Ne osoittavat luovuutta ja kehittävät uusia lähestymistapoja.
Tärkeä osa tiimimme tehtävää on mitata haavoittuvuuksien löytämisen ja hyväksikäytön kustannuksia ja ohjata puolustukseen tehtäviä investointeja tämän tiedon avulla. Tavoitteemme on auttaa puolustajia korjaamaan haavoittuvuudet ennen kuin hyökkääjät ehtivät hyödyntää niitä ja tehdä ohjelmistojen hyväksikäytöstä hyökkääjille liian kallista. Hyväksikäytön kustannusten mittaaminen auttaa arvioimaan, miten tämä haaste muuttuu mallien kyvykkyyden kehittyessä. Tässä osiossa vertaamme tutkimusputkemme ajokustannuksia haavoittuvuuspalkkio-ohjelmien tunnistetuista haavoittuvuuksista tarjoamiin palkkioihin.
Kokeemme kohdevirtuaalikoneissa oli tavallinen työpöytäkäyttöjärjestelmä, ei heikennetty kohde. Käytössä oli sama uhkamalli kuin kyberturvallisuuskilpailuissa (esim. Pwn2Own(avautuu uudessa ikkunassa) ja TyphoonPWN(avautuu uudessa ikkunassa)). Pwn2Own ja TyphoonPWN ovat aiemmin tarjonneet Linux-ytimen paikallisen käyttöoikeuksien korotuksen hyväksikäyttökoodeista vastaavasti 20 000 ja 70 000 dollarin haavoittuvuuspalkkiot. Näillä aiemmilla palkkiosummilla 948 hyväksikäyttökoodin hypoteettinen arvo olisi 18,9–66,3 miljoonaa dollaria eli noin 16–55 kertaa tutkimusputkemme kustannukset.
Testasimme tutkimusputkeamme myös Googlen kernelCTF(avautuu uudessa ikkunassa)-haavoittuvuuspalkkio-ohjelmassa. Sen kohteena on vahvistettu Linux-ydin, jonka hyökkäyspintaa on pienennetty. Ajoimme tutkimusputken uusimmalla Linux-ytimellä kernelCTF-ympäristössä ja saimme 25 tietovuodon PoC-toteutusta sekä 21 paikallisen käyttöoikeuksien korotuksen hyväksikäyttökoodia. Ydin ei ollut yhteensopiva kernelCTF:n SLAB_VIRTUAL-suojauksen kanssa, joten poistimme sen kokoonpanosta. Vertailun vuoksi kernelCTF oli hyväksynyt vuonna 2026 kirjoitushetkeen mennessä 26 vahvistettua nollapäivähaavoittuvuuden LPE-hyväksikäyttökoodia. Koko tutkimusajo kesti yhteensä 112 tuntia ja kulutti API-krediittejä noin 32 936 dollarin arvosta. Haavoittuvuuksien etsinnän osuus API-kustannuksista oli 83,7 %. Jos ohjelma hyväksyisi nämä 21 haavoittuvuutta, niistä maksettaisiin noin 1,5 miljoonan dollarin palkkio eli noin 45 kertaa kustannukset.
Keskeinen oppi: Julkisten palkkiosummien perusteella haavoittuvuustutkimusputkemme olisi ollut tutkimushetkellä nettokannattava nykyisillä kyberturvallisuuteen kykenevillä malleilla. Puolustajien tulisi analysoida ohjelmistojaan ennakoivasti, jotta niiden hyväksikäytöstä tulee hyökkääjille liian kallista.
Hyväksikäytettävyyden arvioinnissa ExploitDev-agentit saivat haavoittuvuusraportin ja tehtäväkseen luoda täysin toimivan hyväksikäyttökoodin. Tutkimusputkemme merkitsi haavoittuvuuden hyväksikäytetyksi, jos pääkäyttäjän komentotulkin avaaminen onnistui. Erään varhaisen ajon hyväksikäyttövaihe raportoi 200 onnistunutta paikallisen käyttöoikeuksien korotuksen hyväksikäyttökoodia. Asiantuntijatarkastuksen jälkeen havaitsimme kuitenkin, että 20 niistä oli saanut pääkäyttäjäoikeudet eri nollapäivähaavoittuvuuden kautta kuin tehtävässä oli osoitettu. Tämä viittaa siihen, että myös agenttien onnistunut hyväksikäyttö on varmennettava asianmukaisesti.
Tiukensimme tämän jälkeen tehtävän rajoitteita ja lisäsimme riippumattoman tarkistuksen, joka vahvisti jokaisen lopullisen hyväksikäyttökoodin käyttävän sille osoitettua haavoittuvuutta.
Keskeinen oppi: Varmenna autonomisessa tietoturvatutkimuksessa tuloksen lisäksi myös siihen johtanut reitti. Eristäminen, valvonta ja riippumattomat tarkistukset ovat välttämättömiä hallintakeinoja.
Tutkimuksen alussa selvitimme, kannattaisiko agentin ympärille rakentaa raskas orkestrointi sen kyberturvallisuuskyvykkyyden parantamiseksi. Tuloksemme viittasivat siihen, että kyvykkäämmät mallit tarvitsevat vähemmän orkestrointia ja yksityiskohtaista ohjausta. Pieni lisähyöty ei myöskään oikeuta ylläpitokustannuksia. Päätimme siksi poistaa raskaan orkestroinnin.
Kokeessa verrattiin GPT‑5.5 Cyber- ja GPT‑5.6 Cyber -malleja. Havaintojemme mukaan GPT‑5.5 Cyber ei tunnistanut johdonmukaisesti, milloin ja miten tunnettuja Linux-ytimen hyväksikäyttötekniikoita kannatti soveltaa. Kokosimme siksi 103 tekniikkaa mallille sopivaan muotoon, toimme ne agentin ympäristöön ja kehotimme agenttia käyttämään niitä. Tämä nosti onnistumisasteen 76,2 prosentista 88,9 prosenttiin 63 mahdollisen hyväksikäyttökohteen joukossa.
Kun toistimme kokeen GPT‑5.6 Cyberillä, malli pystyi paremmin löytämään, valitsemaan ja soveltamaan olennaisia tekniikoita itsenäisesti. Poistimme tekniikoiden ja taitojen orkestroinnin. Näin kevennetty GPT‑5.6 Cyber -työnkulku suoriutui paremmin kuin vahvemmin tuettu GPT‑5.5 Cyber -työnkulku. Tekniikkakerroksen palauttaminen GPT‑5.6 Cyberille paransi tulosta vain vähän, 1,5 prosenttiyksikköä.
Keskeinen oppi: Arvioi orkestrointi ja arviointikehys uudelleen perusmallin kyvykkyyden muuttuessa. Yhden mallisukupolven suorituskykyä merkittävästi parantavat tukirakenteet voivat tuoda kyvykkäämmälle mallille vain vähän lisäarvoa. Niiden hyötyä on punnittava suhteessa ylläpitoon.
Kun mallia aluksi pyydettiin suoraan tuottamaan korjausehdotuksia, se loi toiminnallisesti oikeita korjauksia, jotka estivät PoC-toteutuksen toiminnan mutta aiheuttivat toisinaan muita ongelmia. Korjauksissa oli tarpeetonta koodia, ne saattoivat heikentää suorituskykyä tai poiketa koodauskäytännöistä. Malli ei myöskään aina etsinyt saman haavoittuvuuden muunnelmia asiaan liittyvästä koodista, jolloin korjaukset jäivät puutteellisiksi.
Lisäohjeet ja korjausten tuottamisprosessin iteratiivinen kehittäminen paransivat korjausten laatua. Tämä viittaa siihen, että oikein ohjattuna tekoälyn tuottamat tietoturvakorjaukset voivat olla oikeita, minimaalisia ja nykyisten koodauskäytäntöjen mukaisia. Tätä tutkitaan aktiivisesti, ja uskomme työn helpottuvan ja tehostuvan tulevien mallien myötä. Muutamissa tapauksissa tutkimusprototyyppimme pystyi myös tunnistamaan asiantuntijoiden kirjoittamien korjausten ongelmia, jotka korjattiin ennen korjausten yhdistämistä koodiin.
Keskeinen oppi: Mallit voivat nopeuttaa korjaamista, mutta korjaustaitoja ja arviointikehyksiä voi olla tarpeen kehittää iteratiivisesti, jotta korjaukset täyttävät luotettavasti sekä toiminnalliset että ei-toiminnalliset vaatimukset. Suosittelemme myös mallien käyttöä ihmisten ja tekoälyn tuottamien korjausten arviointiin hyökkääjän näkökulmasta. Näin voidaan tunnistaa esimerkiksi korjauksen ohitettavuus sekä huomiotta jääneet hyökkäysreitit tai muunnelmat.
Tutkimusprototyyppimme löysi ja hyväksikäytti kernelCTF-ajossa Linux-ytimen 21 nollapäivähaavoittuvuuden lisäksi myös QEMU TCG:n haavoittuvuutta. Analyytikkoagentin tehtävänä oli analysoida järjestelmäkutsujen sisääntulokoodia. Kirjoittaessaan ohjelmia käyttöoikeustasojen välisten siirtymien kokeilemiseksi se kohtasi odottamattoman ytimen kaatumisen. Se tutki kaatumisen, jäljitti ongelman QEMU TCG:hen ilman pääsyä QEMU:n lähdekoodiin ja sisällytti haavoittuvuuden raporttiin. ExploitDev-agentti kehitti tämän jälkeen onnistuneesti haavoittuvuudelle paikallisen käyttöoikeuksien korotuksen hyväksikäyttökoodin. Havaitsimme tämän QEMU-haavoittuvuuden analysoidessamme hyväksikäyttökoodeja käsin. Vahvistimme, että se oli korjattu alkuperäisessä QEMU-projektissa mutta ei kokeessa käytetyssä julkaisuversiossa.
Keskeinen oppi: Edistyneet kyberturvallisuuteen kykenevät mallit voivat löytää haavoittuvuuksia testausinfrastruktuurista. Suosittelemme testaamaan infrastruktuurin jokaisen osan ennen hyökkäyksellisen haavoittuvuustutkimuksen aloittamista. Olemme testanneet infrastruktuuriamme ennakoivasti sekä ilmoittaneet ja korjanneet monia haavoittuvuuksia Katassa, Moby/Dockerissa, gVisorissa ja muissa projekteissa.
Tavoitteemme on muuttaa mallien kasvava suorituskyky pysyväksi eduksi internetin turvallisuudesta huolehtiville. Tämä tutkimus osoittaa, että edistyneiden mallien kasvavaa kyvykkyyttä kyberturvallisuuden alalla voidaan hyödyntää tehokkaasti haavoittuvuuksien etsimiseen monimutkaisista ohjelmistoista, kuten Linux-ytimestä. Linuxin ja muiden kriittisten avoimen lähdekoodin ohjelmistoprojektien suojausten vahvistaminen voi suojata monia niihin perustuvia järjestelmiä ja niiden käyttäjiä.
Pyrimme laajentamaan tätä tutkimusta muihin kriittisiin ohjelmistoprojekteihin ja kehittämään luotettavaa automaattista korjaamista yhdessä ylläpitäjien ja tietoturvakumppanien kanssa. Työ tapahtuu Patch the Planet -hankkeessa, joka kuuluu Daybreak-ohjelmaan. Haluamme vähentää hyökkääjien mahdollisuuksia jatkuvasti ja nostaa haavoittuvuuksien löytämisen ja hyväksikäytön kustannuksia, kunnes odotettavissa oleva hyöty ei enää tee hyökkäyksestä kannattavaa.
Jokaisen mallisukupolven pitäisi auttaa meitä rakentamaan ohjelmistoja, joiden murtaminen on seuraavalle sukupolvelle vaikeampaa. Jatkamme työtä turvallisen internetin puolesta, jotta jokainen voisi luoda sen varaan uutta ilolla.


