Ajatusjohtajat
AI:n generoima koodi on täällä jäädäkseen. Olemme turvattomampia tämän seurauksena?

Koodaus vuonna 2025 ei ole enää vaivannutonta koodin palasten parissa työskentelyä tai pitkien tuntien viettämistä virheiden etsimisessä. Se on kokonaan eri tunnelma. AI-generoitu koodi on tulevaisuuden tuotteiden koodin enemmistö, ja se on modernin kehittäjän välttämätön työkalu. Tätä kutsutaan “vibe-koodaukseksi”, ja koodin generoimiseen käytetään työkaluja kuten Github Copilot, Amazon CodeWhisperer ja Chat GPT. Tämä on normi, ei poikkeus, ja se vähentää kehitysaikaa ja lisää tehokkuutta. Mutta vaikuttaako AI-generoidun koodin helppous turvallisuusrakenteen heikentymiseen? Lisääkö generatiivinen AI turvallisuuden haavoittuvuutta vai onko kehittäjillä keino “vibe-koodata” turvallisesti?
”Turvallisuusloukkaukset, jotka johtuvat AI-generoidun koodin haavoittuvuuksista, ovat yksi vähiten käytetyistä aiheista tänään”, DeepSourcen perustaja Sanket Saurav sanoi. ”Edelleen on paljon koodia, jota generoidaan alustoilla kuten Copilot tai Chat GPT, eikä sitä tarkasteta ihmisten toimesta, ja turvallisuusloukkaukset voivat olla katastrofaalisia yrityksille, jotka joutuvat niiden kohteeksi.”
Avoimen lähdekoodin alustan kehittäjä, joka käyttää staattista analyysiä koodin laadun ja turvallisuuden arvioimiseen, Saurav mainitsi SolarWinds-hyökkäyksen vuonna 2020 esimerkkinä siitä, miten ”jäätikköinen tapahtuma” voi vaikuttaa yrityksiin, jotka eivät ole asentaneet oikein turvallisuuden varmistimia AI-generoidun koodin käytön aikana. ”Staattinen analyysi mahdollistaa epäturvallisten koodimallien ja huonojen koodauskäytäntöjen tunnistamisen”, Saurav sanoi.
Hyökkäys kirjastojen kautta
AI-generoidun koodin turvallisuusuhkat voivat ottaa kekseliääitä muotoja ja kohdistua kirjastoihin. Kirjastot ohjelmoinnissa ovat hyödyllisiä uudelleenkäytettäviä koodipalasia, joita kehittäjät käyttävät ajan säästämiseen koodin kirjoittamisessa.
Ne usein ratkaisevat säännöllisiä ohjelmointitehtäviä, kuten tietokantayhteyksien hallinnan, ja auttavat ohjelmoijia välttämään koodin uudelleenkirjoittamisen alusta alkaen.
Yksi tällainen uhka kirjastoja vastaan on ”hallusinaatio”, jossa AI-generoitu koodi paljastaa haavoittuvuuden käyttämällä kuvitteellisia kirjastoja. Toinen, viimeaikainen hyökkäys AI-generoidun koodin kimppuun on ”slopsquatting”, jossa hyökkääjät voivat suoraan kohdistaa kirjastoihin päästäkseen tietokantaan.
Näiden uhkien torjuminen vaatii ehkä enemmän tietoisuutta kuin ”vibe-koodauksen” termi antaa ymmärtää. Puhuessaan toimistostaan Université du Québec en Outaouais -yliopistossa, professori Rafael Khoury on seurannut AI-generoidun koodin turvallisuuden kehitystä ja on varma, että uudet tekniikat parantavat sen turvallisuutta.
Vuonna 2023 julkaistussa tutkimuksessa professori Khoury tutki ChatGPT:n koodin tuottamista ilman lisätietoja, mikä johti epäturvaalliseen koodiin. Nuo olivat ChatGPT:n varhaiset päivät, ja Khoury on nyt optimistinen tulevaisuuden suhteen. ”Siitä lähtien on tehty paljon tutkimusta, ja tulevaisuus näyttää strategialle, joka johtaa parempiin tuloksiin”, Khoury sanoi ja lisäsi, että ”turvallisuus paranee, mutta emme ole vielä päässeet tilanteeseen, jossa voimme antaa suoran ohjeen ja saada turvallista koodia.”
Khoury kuvaili lupaavaa tutkimusta, jossa he generoivat koodia ja lähettivät sen työkalulle, joka analysoi sitä haavoittuvuuksien osalta. Työkalun käyttämä menetelmä on nimeltään Finding Line Anomalies with Generative AI (FLAG lyhyesti).
”Nämä työkalut lähettävät FLAG-eja, jotka voivat tunnistaa haavoittuvuuden rivillä 24, esimerkiksi, ja kehittäjä voi lähettää sen takaisin LLM:lle tietoineen ja pyytää sitä tarkastamaan ja korjaamaan ongelman”, hän sanoi.
Khoury ehdotti, että tämä edestakainen prosessi voi olla avain koodin korjaamiseen, joka on altis hyökkäyksille. ”Tutkimus osoittaa, että viidellä iteraatiolla voidaan vähentää haavoittuvuuksia nollaan.”
Tämä sanottuun, FLAG-menetelmä ei ole ilman ongelmia, erityisesti se voi aiheuttaa sekä vääräpositiivisia että vääränegatiivisia tuloksia. Lisäksi on rajoituksia siinä, kuinka pitkiä koodinpätkiä LLM:t voivat luoda, ja koodinpätkien yhdistäminen voi lisätä riskejä.
Ihmisen pitäminen silmällä
Jotkut ”vibe-koodauksen” toimijat suosittelevat koodin jakamista ja varmistavat, että ihmiset ovat eturintamassa koodipohjan tärkeimmissä muokkauksissa. ”Kun kirjoitat koodia, ajattele siinä commiteissa”, Windsurfin tuotejohtaja Kevin Hou sanoi ja kehui viisauden jakamista pienissä paloissa.
”Jaa suuri projekti pienempiin osiin, jotka normaalisti olisivat commiteja tai pull-pyynnöksiä. Anna agentin rakentaa pienemmän mittakaavan, yhden eristetyn ominaisuuden kerrallaan. Tämä voi varmistaa, että koodin tuloste on hyvin testattu ja ymmärretty”, hän lisäsi.
Windsurf on lähestynyt yli 5 miljardia AI-generoituja koodirivejä (edellisen nimellään Codeium). Hou sanoi, että heidän mielestään olennaisin kysymys oli, oliko kehittäjä tietoinen prosessista.
”AI pystyy tekemään paljon muokkauksia useisiin tiedostoihin samanaikaisesti, joten miten voimme varmistaa, että kehittäjä ymmärtää ja tarkastaa, mitä on meneillään, eikä vain sokeasti hyväksy kaikkea?” Hou kysyi ja lisäsi, että he olivat investoineet paljon Windsurfin UX:ään ”monilla intuitiivisilla tavoilla pysyä täysin sinkronissa siinä, mitä AI tekee, ja pitää ihmistä täysin silmällä.”
Joten kun ”vibe-koodaus” tulee yleisemmäksi, ihmiset silmällä pitävien on oltava varovaisia sen haavoittuvuuksia kohtaan. ”Hallusinaatiosta” ”slopsquattingiin” kohdistuvat uhkat ovat todellisia, mutta ratkaisutkin ovat todellisia.
Uudet työkalut, kuten staattinen analyysi, iteratiiviset parannusmenetelmät kuten FLAG ja huolellinen UX-suunnittelu osoittavat, että turvallisuus ja nopeus eivät ole toisensa vastakohtia.
Avain on pitää kehittäjät osallistuneina, informoiduina ja hallinnassa. Oikeiden varmistimien ja ”luota ja tarkasta” -asenteen avulla AI-tukeutuva koodaus voi olla sekä vallankumouksellista että vastuullista.












