Tekoäly

Yksikään koodausagentti ei kirjoittanut turvallista koodia

143 haavoittuvuutta löytyi kolmen tekoälymallin tuottamasta koodista

Hanna HuulivuoHanna Huulivuo
Jaa:
Yksikään koodausagentti ei kirjoittanut turvallista koodia

Kolme koodausagenttia, nolla turvallista sovellusta

Tietoturvayhtiö DryRun Security julkaisi tiistaina ensimmäisen Agentic Coding Security Report -raporttinsa, jossa yhtiö testasi kolmea johtavaa koodausagenttia todellisissa kehitysprojekteissa. Tulokset ovat karuja: yksikään agentti ei onnistunut tuottamaan turvallista sovellusta.

Tutkimuksessa Anthropicin Claude, OpenAI:n Codex ja Googlen Gemini rakensivat kaksi erillistä sovellusta – perheallergioiden seurantapalvelun ja selainpohjaisen ajopelin – vetopyyntö kerrallaan, kuten oikeat kehitystiimit tekevät. DryRun Security analysoi jokaisen vetopyynnön ennen seuraavan ominaisuuden toteutusta ja suoritti lopuksi koko koodikannan kattavan DeepScan-analyysin.

Menetelmä on merkittävä, koska se mallintaa todellista agenttiavusteista kehitystyötä. Monet aiemmat tutkimukset ovat testanneet tekoälymalleja yksittäisillä koodinpätkillä, mutta DryRun antoi agenttien rakentaa kokonaisia sovelluksia alusta loppuun.

30 vetopyynnöstä 26 eli 87 prosenttia sisälsi vähintään yhden tietoturva-aukon. Yhteensä 38 skannausta paljasti 143 erillistä haavoittuvuutta.

Claude tuotti eniten korjaamattomia aukkoja

Mallien välillä oli selkeitä eroja. Claude jätti lopullisiin sovelluksiin eniten korjaamattomia vakavia haavoittuvuuksia. Codex pärjäsi vertailussa parhaiten: se tuotti vähiten aukkoja lopputulokseen ja osoitti vahvinta kykyä korjata omia virheitään kehityksen edetessä. Kun Codex havaitsi aiemmassa vetopyynnössä aiheuttamansa ongelman, se pyrki korjaamaan sen seuraavissa vaiheissa.

Gemini toi alkuvaiheessa mukaan useita ongelmia, mutta poisti osan niistä myöhemmissä muokkauksissa. Siitä huolimatta sen lopullisiin sovelluksiin jäi useita vakavia löydöksiä. Raportti ei julkaissut tarkkoja mallikohtaisia lukuja, joten erojen todellinen suuruus jää avoimeksi.

Kaikille malleille yhteistä oli, että ne keskittyivät toiminnallisuuden toteuttamiseen tietoturvan kustannuksella. Agentit tuottivat nopeasti toimivia ominaisuuksia, mutta eivät arvioineet järjestelmällisesti, mitä turvallisuusriskejä uusi koodi tuo mukanaan.

Neljä autentikointiaukkoa löytyi joka koodikannasta

Kenties huolestuttavinta on, että neljä samaa haavoittuvuustyyppiä löytyi jokaisen mallin jokaisesta lopullisesta koodikannasta. Kaikki liittyivät käyttäjän tunnistautumiseen: puutteellinen JWT-tokenien varmennus, sovellustason suojan puuttuminen väsytyshyökkäyksiä vastaan, alttius token replay -hyökkäyksille ja refresh-tokenien evästeiden turvaton oletuskonfiguraatio.

Monet löydöksistä vastasivat OWASP Top 10 -luokituksen yleisimpiä haavoittuvuustyyppejä. Autentikointiongelmat ovat erityisen vaarallisia, koska ne antavat hyökkääjälle suoran pääsyn käyttäjien tileihin ja tietoihin.

Paljastava oli myös se, miten agentit sovelsivat tietoturvamekanismeja epäjohdonmukaisesti. Eräässä tapauksessa agentti rakensi autentikoinnin tarkistavan väliohjelmiston REST-rajapinnoille, mutta jätti WebSocket-yhteydet kokonaan suojaamatta. Sovellus näytti ulospäin suojatulta, mutta sivuovesta pääsi sisään.

“Koodausagentit tuottavat toimivaa ohjelmistoa hämmästyttävällä nopeudella, mutta tietoturva ei kuulu niiden perusajatteluun.”

— James Wickett, toimitusjohtaja, DryRun Security

Aiempi tutkimus vahvistaa löydökset

DryRun Securityn tulokset eivät yllätä tutkimusten valossa. Stanfordin yliopiston tutkijat havaitsivat, että tekoälyavusteisesti koodaavat kehittäjät kirjoittivat merkittävästi turvattomampaa koodia kuin ilman apuria työskennelleet. Samalla avustajaa käyttäneet kehittäjät uskoivat koodinsa olevan turvallisempaa kuin se todellisuudessa oli – yhdistelmä, joka voi johtaa vakaviin seurauksiin tuotantokoodissa.

Tuoreimpien arvioiden mukaan jopa 62 prosenttia tekoälyn generoimista koodiratkaisuista sisältää suunnitteluvirheitä tai tunnettuja tietoturva-aukkoja. Koodausagenttien yleistyminen kärjistää ongelmaa, koska agentit rakentavat kokonaisia sovelluksia yksittäisten funktioiden sijaan. Tietoturvavelka kertyy nopeammin kuin kukaan ehtii sitä purkaa.

Agenttien erityinen riski piilee siinä, että ne tekevät arkkitehtuuritason päätöksiä ilman kokonaiskuvaa sovelluksen turvallisuusvaatimuksista. Yksittäinen kehittäjä saattaa kirjoittaa haavoittuvan funktion, mutta agentti voi rakentaa kokonaisen autentikointijärjestelmän, jossa perustavanlaatuinen suunnittelupäätös on väärä.

87 %↓

Vetopyynnöistä sisälsi haavoittuvuuksia

143↓

Erillistä tietoturva-aukkoa löytyi

4↓

Samaa aukkoa jokaisessa koodikannassa

DryRun Security, 2026

Sanasto

Vetopyyntö (pull request)
Ohjelmistokehityksessä ehdotus koodimuutoksesta joka lähetetään muiden arvioitavaksi ennen kuin se liitetään osaksi varsinaista ohjelmistoa.
JWT-token (JSON Web Token)
Digitaalinen tunniste jolla verkkosovellus varmistaa käyttäjän henkilöllisyyden kirjautumisen jälkeen – eräänlainen sähköinen henkilökortti joka kulkee selaimen ja palvelimen välillä.

Tietoturva osaksi jokaista vetopyyntöä

Yrityksille, jotka ottavat koodausagentteja käyttöön, viesti on selvä: jokainen agentin tuottama vetopyyntö tarvitsee automaattisen tietoturva-analyysin ennen kuin koodi päätyy päähaaraan. Erityistä huomiota vaativat autentikointi- ja valtuutusmekanismit, joissa kaikki testatut agentit tekivät toistuvasti virheitä. Pelkkä loppuvaiheen auditointi ei riitä, koska turvaongelmat kasautuvat jo kehityksen aikana.

DryRun Security itse myy koodin turvallisuutta analysoivia työkaluja, joten yhtiöllä on kaupallinen intressi korostaa koodausagenttien puutteita. Tutkimusmenetelmä on silti uskottava: todellisten sovellusten rakentaminen vetopyyntöjen kautta on lähempänä oikeaa kehitystyötä kuin akateemiset benchmarkit, jotka mittaavat yksittäisiä kooditehtäviä. Tulokset ovat linjassa aiemman riippumattoman tutkimuksen kanssa, mikä tukee löydösten luotettavuutta.

Viikoittainen uutiskirje

Tule firmasi fiksuimmaksi AI-osaajaksi

Yksi uutiskirje kerrallaan. Kokoamme viikon tärkeimmät tekoälyuutiset suomeksi ja kerromme, mitä ne tarkoittavat sinun työsi kannalta. Luet sen kahvitauolla.

Ei roskapostia. Voit peruuttaa milloin tahansa.

Lue seuraavaksi

Luetuimmat

Viimeiset 7 päivää

  1. 120 vuotta koodaamatta, sitten 5,4 miljoonaa
  2. 2Teemu Roos: tekoälyn tuhopuheissa voi olla kyse rahasta
  3. 3Mikä on Jev? Tekoälymalli, joka päättää eikä kirjoita
  4. 4Kaivosyhtiö: Googlen datakeskus peittäisi yli kolmanneksen malmista
  5. 5Mediakonserni osti suomalaisen tekoälyn, joka lukee julkiset hankinnat

Lähteet

Tämä artikkeli on kirjoitettu ja toimitettu tekoälyagenttien toimesta. Lue lisää toimintaperiaatteistamme.