Tietoturvayhtiö Sysdig julkaisi tapaustutkimuksen, jonka tutkijat kuvaavat ensimmäiseksi yksiselitteisesti tunnistetuksi autonomiseksi LLM-agentin hyökkäykseksi. Ketju eteni marimo-notebookin haavoittuvuudesta sisäisen PostgreSQL-tietokannan vuotoon 59 minuutissa, ja kaikissa neljässä pivottivaiheessa päättely tehtiin tekoälyssä, ei ihmisen näppäimistöllä.
Hyökkäysketju neljässä vaiheessa
Lähtölaukaus oli marimo-sovelluksen WebSocket-päätepisteen koodinsuoritushaavoittuvuus CVE-2026-39987. Klo 18:23:44 UTC indonesialaisesta IP-osoitteesta avattiin interaktiivinen shell, ja 30 sekuntia myöhemmin agentti oli kerännyt ympäristötiedostoista AWS-tunnukset. Käsky käskyltä eteneminen tapahtui ilman, että hyökkääjä tiesi etukäteen mitä palvelimelta löytyy.
Tunti AWS-tunnusten kaappauksen jälkeen agentti palasi linjoille ja teki 22 sekunnin purkauksessa 12 GetSecretValue-kutsua. Saaliina oli SSH-yksityisavain, joka avasi pääsyn bastion-palvelimelle. Bastionilta eteenpäin agentti avasi kahdeksan rinnakkaista SSH-istuntoa, ja 113 sekunnin sisällä PostgreSQL-tietokanta oli dumpattu kokonaisuudessaan.
Mistä Sysdig tietää, että takana ei ollut ihmistä
Tutkijat listaavat neljä todistetta. Ensimmäinen on improvisaatio. Hyökkäys dumppasi langflow-tyyppisen tietokantaskeeman, mutta palvelimella ei ollut mitään merkkiä siitä, mikä sovellus tietokannan omisti. Agentti ei seurannut valmista playbookia, vaan päätteli rakenteen vastausten perusteella.
Toinen todiste on kiinankielinen suunnittelukommentti, joka karkasi komentovirtaan: 看还能做什么, eli "katsotaan mitä muuta voidaan tehdä". Sama lause toistui kuudessa eri IP-osoitteessa alle sekunnin viiveellä yhdellä SSH-avaimella, mikä on ihmisen kannalta fyysisesti mahdotonta.
Kolmas todiste on komentojen rakenne. Jokainen rivi sisälsi viisi konetta palvelevaa kuviota: echo-erotinmerkit ulostulon jäsentämiseen, heredoc-paketointi joka pisti kuusi SELECT-kyselyä yhteen kierrokseen, head-N-rajaukset konteksti-ikkunan hallintaan, -P pager=off sivutuksen estoon ja 2>/dev/null virhevirran vaimennukseen. Yksittäin nämä voivat olla hyvin tehtyä skriptiä, mutta yhdessä ne paljastavat kielimallin.
“Yksikin näistä merkeistä voi esiintyä huolella tehdyssä skriptissä. Mutta kun ne kaikki viisi näkyvät yhdessä, tekoäly on selkeä vastaus.”
Neljäs todiste on tulosten kulutus. Agentti poimi aiempien komentojen vastauksista arvoja seuraaviin: PGPASSWORD tuli .pgpass-tiedoston sisällöstä, GetSecretValuelle annettu SecretId nousi 20 sekuntia aikaisemman ListSecrets-vastauksen riviltä, ja kohdehakemisto /home/deploy syntyi aiemmasta ls-listauksesta. Tämä on agentin perustyökiertoa, ei sinänsä todiste hyökkäyksestä, mutta vahvistaa muut signaalit.
Cloudflare Workers egress-poolina
AWS API -kutsut eivät tulleet yhdestä osoitteesta. Sysdig jäljitti 12 kutsua 11 eri Cloudflare Workers -reunasolmun IP-osoitteeseen 22 sekunnin sisällä. Hyökkääjä oli rakentanut egress-poolin, joka hajautti liikenteen ympäri maailmaa edge-verkon kautta. Lähde-IP:hen perustuvat lukot ja per-IP-anomalia-analyysi eivät hälyttäneet, koska kukin yksittäinen osoite näkyi vain hetkellisesti.
Cloudflare Workers on tarkoitettu kehittäjien serverless-funktioiden ajamiseen reunaverkossa, mutta sama jakauma tekee siitä houkuttelevan ohitusreitin geokontrolleille. Sysdigin tapauksessa AWS:n lokeissa hyökkäys näytti hetkittäin liikennevirralta useammasta maasta yhtä aikaa.
Onko suomalainen ohjeistus jo vanhentunut?
Traficom ja Huoltovarmuuskeskus ilmoittivat viime syksynä valmistelevansa opasta tekoälyagenttien turvalliseen käyttöön. Traficomin teknologia- ja strategiajohtaja Kirsi Karlamaa korosti agenttien valtuuksien rajaamista, datan minimointia ja jatkuvaa valvontaa. Pilottikäyttötapauksena on asiakaspalvelu, ja oppaan käsikirjoitus jaettiin sidosryhmille tammikuussa 2026.
Sysdigin tapaus liikkuu eri tasolla. Hyökkäys ei kohdistunut puolustajan omaan agenttiin, vaan tunkeutuja toi agentin mukanaan. Suomalainen opas auttaa rakentamaan agentteja oikein, mutta ei vielä kerro, miten erottaa hyökkäävän agentin jäljet lokivirrasta. SOC-tiimien työkalut on rakennettu komentojonojen ja tunnettujen TTP-allekirjoitusten ympärille, ja juuri ne hajoavat, kun jokainen ajo on hieman erilainen.



