Tivi uutisoi tällä viikolla tapauksesta, jossa rikolliset ottivat haltuunsa yrityksen tekoälypalvelun tilin ja kerryttivät sille suuren laskun. AI Suomi ei päässyt lukemaan Tivin juttua, joten sen yksityiskohtia ei ole tässä vahvistettu. Itse ilmiö on kuitenkin hyvin dokumentoitu.
Mistä LLMjacking tulee
Tietoturvayhtiö Sysdigin tutkimusryhmä otti termin käyttöön toukokuussa 2024. LLM tarkoittaa suurta kielimallia, ja jacking viittaa kaappaamiseen. Hyökkääjä käyttää varastettuja tunnuksia uhrin tekoälypalveluun, ja uhri maksaa.
Sysdigin tutkijan Alessandro Brucaton raportissa hyökkääjät murtautuivat palvelimelle, jolla pyöri Laravel-ohjelmistokehyksen vanha versio (haavoittuvuus CVE-2021-3129). Palvelimelta he saivat AWS-tunnukset, joilla he käyttivät Amazonin Bedrock-palvelussa ajettavaa Anthropicin Claude-mallia. Heidän skriptinsä kokeili tunnuksia kymmeneen palveluun, muun muassa OpenAI:hin, Azureen, Anthropiciin, Mistraliin ja ElevenLabsiin.
Sysdig laski, että jos hyökkääjä käyttää Claude 2 -mallin kiintiöt täyteen neljällä alueella, lasku olisi uhrille yli 46 000 dollaria päivässä. Syyskuussa 2024 julkaistussa jatkoraportissa arvio nousi Claude 3 Opus -mallilla yli 100 000 dollariin päivässä. Luvut ovat pahimman tapauksen laskelmia eivätkä yksittäisen uhrin toteutuneita laskuja.
Liiketoimintamalli on yksinkertainen. Kaapattu pääsy myydään eteenpäin välityspalvelimen kautta, jolloin ostaja ei näe tunnuksia. Sysdigin otoksessa noin 95 prosenttia kehotteista liittyi roolipeleihin. Yhtenä heinäkuun päivänä 2024 kolmen tunnin aikana tuli noin 61 000 pyyntöä.
Hyökkääjät myös peittävät jälkiään. Osa tarkistaa ensin, tallentaako uhri kehotteet lokiin, ja jättää tilin rauhaan, jos tallentaa. Osa poistaa lokituksen kokonaan. Silloin jäljelle jää vain lasku.
Näin avaimet vuotavat
API-avain on salasanan kaltainen merkkijono, jolla ohjelma tunnistautuu palveluun. Tietoturvayhtiö GitGuardianin mukaan julkiseen GitHub:iin päätyi vuonna 2024 yhteensä 23,8 miljoonaa tällaista salaisuutta, 25 prosenttia enemmän kuin vuotta aiemmin. Vuonna 2022 vuotaneista salaisuuksista noin 70 prosenttia toimi yhä.
Yksityinen repo ei sekään ole turvassa, sillä GitGuardian löysi salaisuuksia 35 prosentista yksityisistä repositorioista. Yhtiön toimitusjohtaja Eric Fourrier sanoo raportissa englanniksi, että yksityisiin repositorioihin vuotaneita salaisuuksia on pidettävä vaarantuneina.
Muitakin reittejä on. Avain voi jäädä selaimessa ajettavaan JavaScriptiin tai mobiilisovellukseen, josta kuka tahansa voi lukea sen. Lisäksi .env-tiedostoja jää julkisille palvelimille, avaimia päätyy lokitiedostoihin, ja kuten Laravel-tapaus osoittaa, pelkkä päivittämätön palvelin riittää.
Suomalaiselle startupille, joka rakentaa tuotettaan GPT- tai Claude-rajapinnan päälle, yksi vuotanut avain voi tarkoittaa, että viikonlopun aikana kuluu koko kuukauden budjetti. Pilvipalveluiden jaetun vastuun mallissa tunnusten suojaaminen on asiakkaan tehtävä, joten hyvitystä ei kannata pitää varmana.
Kulukatot ja hälytykset palveluittain
OpenAI:n hallintapaneelissa toiminnot voi jakaa projekteihin ja asettaa kullekin oman budjetin ja hälytysrajat. Anthropicin Consolessa vastaava työkalu on työtila, jolle voi asettaa kulurajan. Kummassakin kannattaa tehdä jokaiselle sovellukselle oma avain, jotta vuoto rajautuu yhteen paikkaan. Molemmat yhtiöt ovat mukana GitHub:n salaisuusskannauksessa, jonka ansiosta julkiseen repoon päätynyt avain voidaan tunnistaa ja mitätöidä.
AWS Bedrockissa vastuu on käyttäjällä. AWS Budgets lähettää hälytyksen, kun raja ylittyy, mutta ei oletuksena katkaise käyttöä. Cost Anomaly Detection huomaa poikkeavan kulutuksen. Sysdig suosittelee ottamaan kehotteiden lokituksen käyttöön, koska CloudTrail ei tallenna kehotteita. Se huomauttaa myös, ettei käytöstä poistettu malli suojaa mitään, koska hyökkääjä voi itse ottaa mallin käyttöön. Organisaatiotason käytännöillä Bedrockin voi estää tileiltä ja alueilta, joilla sitä ei tarvita.
Azuressa budjetit ja hälytykset asetetaan Cost Managementissa. Azure OpenAI -käyttöönottojen minuuttikohtaiset tokenikiintiöt rajoittavat sitä, kuinka nopeasti lasku voi kasvaa. Pysyvät avaimet kannattaa korvata Entra ID -tunnistautumisella ja hallituilla identiteeteillä aina kun mahdollista.