Küberturvalisus

Kuidas usaldusväärsest veaseire tööriistast sai värav tehisintellekti agentide kaaperdamiseks

Agentjacking petab tehisintellekti koodiagente käivitama pahatahtlikku koodi võltsitud Sentry veateadete kaudu. Lugege, kuidas see rünnak toimib ja kuidas oma koodi kaitsta.
Kuidas usaldusväärsest veaseire tööriistast sai värav tehisintellekti agentide kaaperdamiseks

Mäletan esimest nädalat, mil integreerisin tehisintellektil põhineva koodiassistendi oma kohalikku arenduskeskkonda. See tundus minu töövoo jaoks jõu kordistajana. Võisin paluda sel refaktoreerida segast funktsiooni või selgitada krüptilist pinu jälitust (stack trace) oma logides. Tootlikkuse kasv oli vahetu. Ma ei peatunud kunagi, et seada kahtluse alla agendi tarbitavate andmete usaldusmudelit. Nagu paljud turvaspetsialistid, eeldasin ka mina, et agent tegutseb liivakastis, mis austab minu masina piire. Tenet Security avastatud Agentjacking tõestab, ka see eeldus on tänapäeva tarkvaraehituses ohtlik spagetus.

Agentjacking on uus rünnakute klass, mis kasutab ära viisi, kuidas tehisintellekti koodiagendid töötlevad välistest teenustest pärinevat teavet. See võimaldab ründajal käivitada arendaja masinas suvalist koodi, söötes pahatahtlikke andmeid tööriistadesse, mida agent usaldab. Selles konkreetses stsenaariumis kasutasid uurijad Sentryt, populaarset veajälgimisplatvormi. Ekspluatatsioon ei nõua Sentry serverite ega arendaja infrastruktuuri sissemurdmist. See tugineb täielikult arhitektuurile, kuidas tehisintellekti agendid tõlgendavad struktureeritud andmeid Model Context Protocoli kaudu.

Agentjackingi taga peituv arhitektuurne viga

Selle haavatavuse keskmes on fundamentaalne paradoks tehisintellekti agendi disainis. Need agendid on loodud olema abivalmid, proaktiivsed ja võimelised tegutsema tehnilise konteksti põhjal. Kui palute tehisintellektil viga parandada, otsib see sageli andmeallikaid, mis annavad vihjeid selle kohta, mis valesti läks. Sentry on üks selline allikas. See kogub rakendustest veateateid ja esitab need arendajatele analüüsimiseks. Selle hõlbustamiseks kasutavad paljud tehisintellekti agendid Model Context Protocoli, et päringuid Sentrysse saata ja hiljutisi veasündmusi kätte saada.

Riski seisukohast on probleem selles, et tehisintellekti agendil puudub viis veateate allika kontrollimiseks. See käsitleb iga Sentry serveri tagastatud sündmust kui usaldusväärset süsteemi väljundit. Ründaja saab seda ära kasutada, saates võltsitud veateate otse ettevõtte Sentry lõpp-punkti. See on võimalik, sest Sentry kasutab andmeallika nime ehk DSN-i, mis on avalik, ainult kirjutatav mandaat. Neid DSN-e võib leida miljonite veebisaitide ja kliendipoolsete rakenduste lähtekoodi sisse ehitatuna. Kuna DSN on mõeldud olema avalik, et kasutajaliidese rakendused saaksid vigadest teatada, võib igaüks, kellel on see string, saata andmeid sellesse Sentry projekti.

Kui tehisintellekti agent teeb protokolli kaudu päringu Sentrysse, saab ta ründaja pahatahtliku veateate koos legitiimsetega. Agent tõlgendab selles võltsitud aruandes olevaid juhiseid kui diagnostilisi samme või lahendusjuhiseid. Seejärel käivitab see need juhised arendaja täielike õigustega. See on CIA triaadi kokkuvarisemine, mis mõjutab konkreetselt süsteemi terviklust ja arendaja andmete konfidentsiaalsust.

Teekonna jälgimine avalikust DSN-ist koodi käivitamiseni

Rünnakuahela mõistmiseks peame vaatama, kuidas andmed liiguvad avalikust internetist arendaja privaatsesse terminali. Protsess algab sellega, et ründaja leiab sihtmärgi Sentry DSN-i. See ei ole keeruline ülesanne. Paljud organisatsioonid paljastavad need võtmed kogemata oma toodangu JavaScripti pakettides või avalikes hoidlates. Kui ründajal on DSN olemas, kasutavad nad standardset POST-päringut, et saata koostatud veasündmus Sentry sisestuspunkti.

See sündmus ei ole lihtne string. Uurijad leidsid, et tehisintellekti agendi lollitamiseks piisab spetsiifilise Markdown-vormingu kasutamisest sõnumiväljades ja kontekstivõtmetes. Ründaja vormindab andmepaketi nii, et see näeks välja täpselt nagu legitiimne Sentry süsteemimall. Kui arendaja palub oma tehisintellekti assistendil lahendada lahendamata Sentry probleeme, tõmbab assistent selle pahatahtliku sündmuse.

Tehisintellekti agent näeb sõnumit, mis tundub tehnilise veana, ja juhiste kogumit selle parandamiseks. Need juhised võivad käskida agendil käivitada skripti keskkonnamuutujate kontrollimiseks või konfiguratsioonifaili värskendamiseks. Kuna agent usub, et loeb usaldusväärset lahendussammu diagnostikatööriistast, käivitab ta käsu. Kulisside taga võib see käsk varastada Giti mandaate, privaatsete hoidlate URL-e või tundlikke keskkonnamuutujaid. Rünnak on varjatud, sest arendaja näeb agenti tegemas täpselt seda, mida ta palus: viga parandamas.

Miks traditsioonilised turvameetmed selle meetodi vastu ebaõnnestuvad

See rünnakupind on eriti problemaatiline, kuna see möödub peaaegu igast kaasaegse turvakihi tasemest. EDR või tulemüür otsib pahatahtlikke allkirju või volitamata ühendusi. Agentjackingi stsenaariumis on ahela iga tegevus volitatud. Sentry serveril on volitus andmeid vastu võtta. Tehisintellekti agendil on volitus Sentryst päringuid teha. Arendaja on volitanud agendi oma masinas koodi käivitama.

Traditsioonilises mõttes pole tuvastatavat pahavara. Pahatahtlik kavatsus on peidetud juhise loogikasse, mitte faili binaarkoodi. Rünnakupinna hindamine paljastab, et tehisintellekti agent ise on kõige nõrgem lüli. See toimib digitaalse Trooja hobusena, tuues usaldamatud andmed avalikust internetist kõrgete õigustega keskkonda. Proaktiivselt rääkides ei tee sellised tööriistad nagu veebirakenduste tulemüürid (WAF) või identiteedi- ja juurdepääsuhaldus (IAM) selle peatamiseks midagi, sest ründaja ei puuduta kunagi ohvri sisemist infrastruktuuri. Nad suhtlevad ainult avaliku sisestuspunktiga, mis on loodud andmete vastuvõtmiseks kogu maailmast.

Tööstuse reageering ja parandamatute vigade reaalsus

Kui Tenet Security neist leidudest Sentryle teatas, oli vastus kõnekas. Sentry tunnistas probleemi, kuid nentis, et see ei ole tehniliselt kaitstav. See on tavaline olukord API-de disaini ja avalike sisestuspunktide maailmas. Kui teenus on loodud vastu võtma andmeid mis tahes kliendilt, ei saa see kergesti eristada tegelikku krahhi pahatahtlikust süstist, ilma et see rikuks oma põhifunktsiooni. Kuigi Sentry on rakendanud globaalse sisufiltri teatud andmepaketi stringide blokeerimiseks, on see reaktiivne meede. Ründajad leiavad tõenäoliselt uusi viise oma Markdowni vormindamiseks, et sellistest filtritest mööda hiilida.

Uurijad testisid seda rünnakut enam kui 100 organisatsiooni vastu ja saavutasid 85% edu. Nad leidsid vähemalt 2388 organisatsiooni, millel on paljastatud ja rünnatavad DSN-id. See viitab sellele, et haavatavus on kogu tööstuses laialt levinud. See ei piirdu ühe tööriista või konkreetse tehisintellekti mudeliga. See on süsteemne probleem selles, kuidas me ehitame autonoomseid agente, mis suhtlevad väliste andmeallikatega. Me anname neile agentidele sisuliselt VIP-pääsme oma kõige tundlikumatesse süsteemidesse, ilma et uksel oleks turvameest ID-sid kontrollimas.

Tehisintellekti agendi integreerimise riskide maandamine

Vastumeetmena peavad organisatsioonid ümber mõtlema, kuidas nad lubavad tehisintellekti agentidel kolmandate osapoolte teenustega suhelda. Kui parandamine kõrvale jätta, on kõige tõhusam kaitse üleminek nullusalduse (zero trust) mudelile tehisintellekti kontekstis. See, et andmed pärinevad ametlikust API-st, ei tähenda, et neid andmeid on ohutu käivitada.

Arendajad peaksid olema ettevaatlikud iga tehisintellekti agendi suhtes, mis küsib luba suvalise koodi käivitamiseks ilma manuaalse järelevalveta. Kui kasutate selliseid tööriistu nagu Claude Code või Cursor, peate säilitama kõrge tervisliku paranoia taseme. Vaadake agendi pakutud käsud üle enne sisestusklahvi vajutamist. Kui agent soovitab Sentry vea lahendust, mis hõlmab kesta (shell) skripti käivitamist, mida te ise ei kirjutanud, peatuge ja kontrollige viga kõigepealt Sentry töölaual.

Organisatsioonide jaoks on prioriteet auditeerida avalikku koodi paljastatud DSN-ide suhtes. Kuigi Sentry DSN-id on ainult kirjutatavad, kujutavad need selgelt missioonikriitilist riski, kui mängu tulevad tehisintellekti agendid. Nende võtmete käsitlemine sama hoolikalt kui privaatse API-võtme puhul on vajalik samm. Sellest tulenevalt peaksid turvameeskonnad uuendama oma ohumudeleid, et kaasata tehisintellekti agendid kui potentsiaalsed väliste andmete käivitusvektorid.

Peamised järeldused tehisintellekti turvaliseks kasutuselevõtuks

Oma arenduskeskkonna kaitsmiseks Agentjackingi ja sarnaste süstimisrünnakute eest kaaluge järgmisi samme:

  1. Auditeerige kõiki avalikke hoidlaid ja kasutajaliidese juurutusi paljastatud Sentry DSN-ide suhtes ning vahetage välja kõik tavatekstina leitud võtmed.
  2. Konfigureerige tehisintellekti koodiagendid nõudma selget manuaalset heakskiitu iga kesta käsu või failisüsteemi muudatuse jaoks.
  3. Keelake Sentry andmete või muu välise konteksti automaatne sisselugemine tehisintellekti tööriistades, välja arvatud juhul, kui tegelete aktiivselt teadaoleva probleemi silumisega.
  4. Harige arendajaid käsu- ja andmesüstimise riskide osas usaldusväärsete kolmandate osapoolte integratsioonide kaudu.
  5. Rakendage tehisintellekti agentidele granulaarsed õigused, et tagada, et nad ei pääseks ligi tundlikele failidele nagu .env või .git/config ilma konkreetse põhjuseta.

Oleme kiire tehisintellekti kasutuselevõtu perioodis, kus arenduse kiirus ületab sageli turvaraamistike arengut. Agentjacking on meeldetuletus, et iga uus integratsioon loob ründajale uue tee. Agendid, keda usaldame oma elu lihtsamaks tegema, on vaid nii turvalised kui andmed, millega me neid toidame.

Allikad: Tenet Security Research Blog, Sentry Official Documentation, Model Context Protocol Specification, NIST AI Risk Management Framework.

Hoiatus: See artikkel on mõeldud ainult informatiivsel ja hariduslikul eesmärgil ning ei asenda professionaalset küberjulgeoleku auditit ega intsidentidele reageerimise teenust.

bg
bg
bg

Kohtumiseni teisel poolel.

Meie läbivalt krüpteeritud e-posti ja pilvesalvestuse lahendus pakub kõige võimsamaid vahendeid turvaliseks andmevahetuseks, tagades teie andmete turvalisuse ja privaatsuse.

/ Tasuta konto loomin