Koodarin näkökulmasta: Tekoälyn ja tietoturvan kujanjuoksussa ihmisen vastuu korostuu.
01 | 2025 Erkka Korpi, Senior software & cloud engineer, Partner Kipinä
Koodarina rimani on aina korkealla – haluan tuottaa asiakkaallemme Supercellillä huipputason IT-ratkaisuja nopeasti ja tehokkaasti. Alitajunnassa tuntuva paine on pääosin itse luomaani. Sama paine ajoi minut tilanteeseen, jossa luotin liikaa tekoälyn tuottamaan koodiin. Houkutus ratkaista ongelma nopeasti oli yksinkertaisesti liian suuri. Kun havahduin siihen, ettei AI-koodi toiminutkaan kuten piti, jouduin palaamaan monta askelta taaksepäin. Etsimäni nopeus olikin vienyt minut täysin väärään suuntaan – ja potentiaalisesti vaarallisille vesille.
Vieraillessani vuosittaisessa AWS re:Invent -teknologiakonferenssissa Las Vegasissa tämä hetki muistui mieleeni ja sai minut todella havahtumaan vastuuseeni kehittäjänä käyttäessäni tekoälyn tuottamaa koodia. Olemme varmasti kaikki tehneet saman virheen: olet koodarina luottanut johonkin – kolmannen osapuolen kirjastoon, valmiiseen ratkaisuun tai vaikkapa kollegan suositukseen – mitä et täysin ymmärrä.
Kuten arvata saattaa, AWS re:Inventin päätähtenä olivat tekoäly ja siihen liittyvät teknologiset innovaatiot. Tietoturvayhtiö Trend Micron Fernando Cardoson sekä AWS:n Raj Pathakin, Qingwei Linin ja Remitlyn Ankur Tiwarin tietoturvaan keskittyneet sessiot avasivat minulle konkreettisesti tekoälyn ja tietoturvan vauhdikasta kilpajuoksua. Liian moni tärkeä asia jää helposti huomiotta, kun tekoälyratkaisut valtaavat ohjelmistokehityksen kiihtyvällä tahdilla.
“Tiedostammeko koodareina ja asiakkaina tarpeeksi ohjelmistokehityksessä käytävää AI:n ja tietoturvan kilpajuoksua? Tunnistammeko kiireen ja alati kasvavan vauhdin riskit?”
Nämä kysymykset toimivat sytykkeinä tämän blogikirjoituksen taustalla. Toivon näkökulmieni herättävän ajatuksia toimittajien, asiakkaiden ja koodarikollegoiden keskuudessa tekoälyyn liittyvistä tietoturvariskeistä ja niiden huomioimisen tärkeydestä. Uudet, entistä nopeammat ja helpommilta tuntuvat ratkaisut voivat lumota kenet tahansa. Erityisesti toimittajapuolella tämä luo painetta tuottaa tekoälyn luomia ratkaisuja – usein liian nopeasti. Vauhtisokeuden riskit ovat ilmeisiä.
Kaikki uusi tuo mukanaan tietoturvauhkia
Kun historiassa jokin teknisesti vaativa on nopeasti adaptoitunut ‘massan’ käyttöön, on muutos tuonut mukana tietoturvariskejä. Haavoittuvuuksia, joiden takaa on monesti löytynyt puutteellinen osaaminen.
Tietoturva on syystä oma erikoisalansa ohjelmistokehityksessä. Siksi sovellusten tietoturvatestaamiseen käytetään usein tietoturva-ammattilaisia, jotka osaavat tunnistaa ja hallita riskejä.
Pilvipalveluiden yleistyminen toi täysin uudenlaisen toimintaympäristön verrattuna perinteiseen IT-infraan. PaaS-palvelut (Platform as a Service) toimivat niin sanotun shared responsibility model -periaatteen mukaisesti, jossa tietoturvavastuu jakautuu palveluntarjoajan ja asiakkaan kesken.
Palveluntarjoajan vastuulla on alustan infrastruktuurin turvallisuus, kuten tietoliikenteen salaaminen konesalien välillä ja palvelinalustan tietoturvan ylläpito.
Asiakkaan vastuulle jää palveluiden turvallinen konfigurointi, kuten palomuurisääntöjen hallinta ja oman datan suojaaminen.
Usein puutteet asiakkaan vastuualueilla ovat johtaneet vakaviin tietoturvaloukkauksiin. Esimerkiksi Teslan vuoden 2018 tietovuoto johtui väärin konfiguroiduista pilvipalveluista.
“AI-palveluilla on merkittävä potentiaalinen riski aiheuttaa vastaavanlaisia vuotoja ja jopa moninkertaisesti vakavampia katastrofeja kuin mitä tähän mennessä on koettu."
Kuvitellaan esimerkkinä tilanne, jossa yritys on kouluttanut suuren kielimallin (LLM) omalla, mahdollisesti vuosikymmenten aikana kertyneellä datallaan. Yksi väärin konfiguroitu palvelu voi pahimmillaan avata luvattoman pääsyn tähän malliin. Tällöin ns. ‘mustahattuhakkeri’ voisi yksinkertaisesti kysyä mallilta haluamaansa tietoa ilman, että hänen tarvitsisi erikseen etsiä sitä.
Tämä riski muistuttaa perinteistä infrastruktuurin suojaamista, jossa määritellään tarkasti, kuka saa ja mistä saa pääsyn järjestelmiin. Modernissa tekoälyyn kohdistuvassa hyökkäyksessä tilanne voi kuitenkin olla monimutkaisempi. Vaikka kuka tahansa voisi keskustella mallin kanssa, mustahattuhakkeri voi muotoilla kysymyksensä (promptata) niin taitavasti, että malli paljastaa sellaista tietoa, jonka ei pitäisi olla julkista. Tätä kutsutaan prompt injection -hyökkäykseksi.
Samalla tavalla kuin AI-palveluiden kehitys on madaltanut kynnystä ohjelmistojen kehittämiseen, se on myös helpottanut hakkerointia tahoille, joilla aiemmin ei ollut riittävää tietotaitoa. Prompt injectionin lisäksi tekoälyyn liittyy muita erityisiä tietoturvauhkia, kuten:
Data poisoning: Hyökkääjä manipuloi tarkoituksellisesti tekoälyn koulutusdataa, mikä voi muuttaa mallin toimintaa hyödyttämään hyökkääjää.
Model extraction: Hyökkääjä pyrkii tarkasti kohdennetuilla kysymyksillä kopioimaan mallin toimintalogiikan ja luomaan oman version mallista ja sen ominaisuuksista.
Tietoturvariskien hallintaan suosittelen tutustumaan OWASP:n ylläpitämään materiaaliin, erityisesti vastikään julkaistuun OWASP Top 10 for LLM Applications 2025 -whitepaperiin.
Tietoturvan ja AI:n yhteispelissä hyviä kysymyksiä ovat:
Onko yritykselläsi selvillä, mitä tekoälymalleja on käytössä ja millaista dataa niille on syötetty?
Käyttävätkö organisaation eri tiimit eri malleja – esimerkiksi yksi tiimi OpenAI:n ChatGPT:tä ja toinen Googlen Geminiä?
Onko yrityksessä määritelty selkeät pelisäännöt tekoälyn käyttöön vai onko asia jäänyt kokonaan miettimättä?
Jalat maassa ja järki päässä
Markkinoilla voimakkaasti kuuluva viesti tekoälyn mahdollisuuksista vaatii kuulijalta tässä hetkessä jalat tukevasti maassa -asennetta ja aimo annoksen tervettä kriittisyyttä. Tekoälyn riemuvoiton sanomaa sävyttää koodarin näkökulmasta palveluntuottajien räikeä eturistiriita.
On tärkeää ymmärtää, että AI-palveluiden tuottajat hyötyvät suoraan tulevaisuudesta, jossa koodareita ei enää tarvittaisi. Toimijat kuten Nvidia, OpenAI ja Cognition maalaavat rohkeasti kuvaa tulevaisuudesta, jossa tekoäly hoitaa kaiken ohjelmoinnin ihmisten puolesta – koodaustaidot olisivat tarpeettomia.
Ironista kyllä, AWS re:Invent -tapahtumassa tekoälyn tietoturvaviestintä oli mielestäni päinvastaista. Ihmisosaamisen tarve korostuu, kun AI-ratkaisujen tietoturvavastuu jää loppukädessä ihmisille. Palveluntarjoajat, kuten AWS, panostavat vahvasti shared responsibility model -periaatteella rakennettuihin alustoihin, joiden päälle AI-palveluita kehitetään (esim. AWS Bedrock). Ainakaan vielä emme voi ulkoistaa tietoturvavastuuta tekoälylle, mutta voimme tehostaa työtämme sen avulla.
“Tämä viestien ristiriitaisuus on varmasti ollut osasyynä omaan varauksellisuuteeni AI-ratkaisuja kohtaan. Monet lupaukset kuulostavat liian hyviltä ollakseen totta. Tulevaisuus, jossa ihminen muuttuu enemmän tai vähemmän tarpeettomaksi tai pelkäksi tekoälyn jatkeeksi, on tuntunut vieraalta ja jopa luotaantyöntävältä.”
Tosiasia kuitenkin on, että vaikka AI-työkalut, kuten ChatGPT ja GitHub Copilot, moninkertaistavat koodareiden tuottavuutta, ne eivät ainakaan tällä hetkellä kykene korvaamaan kokeneen koodarin asiantuntijuutta ja syvää osaamista.
Tekoälyn tuottaman koodin käyttäminen suoraan tuotannossa sisältää aina haavoittuvuuden riskin. Ilman asiantuntijan kykyä arvioida kriittisesti AI:n tuottaman koodin laatua, voivat haavoittuvuudet helposti edetä tuotantoon saakka.
Kuten WithSecuren tutkimusjohtaja Mikko Hyppönen on todennut: "If it’s intelligent – it’s vulnerable."
Kuka kantaa vastuun tekoälystä?
Tekoälyteknologiat ja niihin liittyvät abstraktiot kehittyvät tällä hetkellä hurjaa vauhtia. Samalla tekoälypohjaisten palveluiden ja ratkaisujen tuottamisesta tulee päivä päivältä helpompaa, riippumatta kehittäjän teknisestä osaamisesta.
Tämä kehityskaari muistuttaa pilvipalveluiden aikanaan mahdollistamaa murrosta. Pilvipalvelut nopeuttivat kehitystä ja madalsivat kynnystä rakentaa tuotantokelpoista infrastruktuuria ilman suuria rahallisia investointeja. Kenellä tahansa oli mahdollisuus tuoda digitaalinen palvelu julkisesti saataville. Nyt tekoälyteknologiat kiihdyttävät tätä sykliä entisestään, mahdollistaen tehokkaamman työnteon aiempaa vähäisemmällä teknisellä osaamisella.
Kuitenkin ilman riittävää teknistä ymmärrystä on vaikea arvioida tekoälyn tuottamien sovellusten ja tuotteiden tietoturvariskejä ja teknisiä virheitä. Kuka siis kantaa vastuun, kun nopeasti ja helposti tuotettu tekoälypohjainen ratkaisu sisältää riskejä?
Juuri tämä vauhdin kasvu ja kynnyksen madaltuminen herättivät minut pohtimaan:
Synnyttääkö kehityksen nopeutuminen ja työn tuottavuuden kasvu uusia tietoturvariskejä? Ja miten nämä riskit voidaan hallita?
Tekoälyyn liittyvät tietoturvariskit ja niiden hallinta ovat vielä suhteellisen uusia haasteita. OWASP Foundation, joka on pitkään julkaissut Top 10 -listauksia verkkosovellusten tietoturvauhista, julkaisi ensimmäisen Top 10 -listan erityisesti suurille kielimalleille (LLM-applikaatioille) vuonna 2023. Tämä osoittaa, että tekoälyn turvallisuus vaatii nyt entistä enemmän huomiota.
Jokaisen koodarin houkutus
Koodarin työ on jatkuvaa oppimista nopeasti kehittyvien ja laajojen kokonaisuuksien parissa. Kukaan ei voi väittää hallitsevansa kaikkea. Tekoäly tuntuu kuitenkin korostavan alalla jatkuvasti vahvistuvaa puntarointia; tehdäänkö asiat nopeasti vai kerralla kunnolla. Kysymys, joka osaltaan luo houkutuksen oikaista mutkia suoriksi.
Kuten aiemmin mainitsin, olen itsekin ajautunut tilanteisiin, joissa olen kiireen ja rajallisten resurssien vuoksi edennyt projektissa liian nopeasti. Tämä on tekoälyn ja tietoturvan kentällä monelle tuttu inhimillinen tekijä. Kokeneenakin tekijänä olen joutunut kohtaamaan täysin uusia asioita ja todennut, että oma tekninen osaamiseni ei aina riitä arvioimaan kaikkia riskejä.
Ennen tekoälyä ns. ‘koodijumiin’ haettiin ratkaisu kollegoilta tai Stack Overflow’sta, joten on täysin inhimillistä, että AI on jokaiselle koodarille houkutteleva. Kiire, aikataulupaine ja ihmisten vähyys vaikuttavat taustalla. Näiden myötä olen ymmärtänyt vastuun ja oman roolini tässä työssä. Oma virheeni opetti minulle, että osaan nyt olla kriittisempi AI:n näennäisen tehokkuuden hyödyissä. En luota enää sokeasti AI:n tuottamaan koodiin.
AI-koodin hyödyntäminen ei kuitenkaan kerro koodarin laiskuudesta vaan ennemminkin ulkoisen tai itselleni asettaman paineen luomasta halusta olla parempi. Näissä tilanteissa itseäni auttaa se, että nopeaa etenemistä tärkeämpää on luoda koodia, josta voin päivän päätteeksi suoraselkäisesti ottaa vastuuta. En voi pahoitella asiakkaalle, että "sain tekoälyltä vähän huonoa koodia."
Onko mahdollista edetä nopeasti ja silti huomioida tärkeimmät asiat?
Millaisia riskejä tunnistat ja olet valmis ottamaan?
Tietoturva on jokaisen vastuulla
Lopuksi rohkaisen jokaista tekoälyä hyödyntävää tai AI-palveluita tuottavaa tahoa tutustumaan tekoälyratkaisuihin liittyviin tietoturvauhkakuviin, kuten suurten kielimallien (LLM) riskeihin ja niiden ehkäisykeinoihin. Tekoälyn tietoturva on mielestäni yhdistelmä perinteistä pääsyn- ja oikeuksienhallintaa sekä AI-spesifiä uhkien hallintaa.
Mikään ei ole muuttunut shift left -toimintatavassa, jossa tietoturva otetaan huomioon jo ohjelmistokehityksen alkuvaiheessa sen sijaan, että siihen kiinnitettäisiin huomiota vasta julkaisun jälkeen. Tekoäly nopeuttaa ohjelmistokehitystä, mutta sen ei tule tapahtua tietoturvan kustannuksella.
Erkka Korpi, Senior software & cloud engineer & Partner Kipinä
Kirjoittajana on yksi Kipinän kokeneista asiantuntijoista. Erkan suoraselkäinen ja utelias luonne luo intohimon ymmärtää miten asiat todella toimii syvällä pinnan alla. Tietotekniikka on Erkan intohimo niin konsulttina Supercellin tiimissä, kuin vapaa-ajalla: “tykkään mennä sinne todella syvään päätyyn.”