„Xygeni“ saugumo žodynėlis
Programinės įrangos kūrimo ir teikimo saugumo žodynėlis

Kas yra greita injekcija?

Jei jūsų paklausė, kas yra greitoji injekcija, ir gavote tik pusę atsakymo, štai trumpa jo versija: tai atakos technika, kai į dirbtinio intelekto modelio apdorojamą įvestį įterpiamas kenkėjiškas arba manipuliacinis tekstas, apgaunamas taip, kad jis ignoruotų pradines instrukcijas ir vykdytų užpuoliko instrukcijas. Tai yra pagrindinė greitosios injekcijos reikšmė: tai ne klaida kode, o ataka, kuri užgrobia modelio instrukcijas naudodama įprastą kalbą, o ne tradicinį spragų kodą.

Greito įpurškimo reikšmė paprastais žodžiais #

Žodinis greito injekcijos paaiškinimas padeda jai išlikti:

  • greitai: instrukcijos ir kontekstas, įvedami į dirbtinio intelekto modelį, nesvarbu, ar juos tiesiogiai įveda vartotojas, ar jie automatiškai gaunami iš dokumento, tinklalapio ar API atsakymo.
  • Įpurškimas: įterpiant kažką, ko ten neturėjo būti, pasiskolinta iš tos pačios logikos kaip SQL injekcija, kur nepatikima įvestis traktuojama kaip komanda, o ne kaip paprasti duomenys.

Taigi, kai kas nors klausia, kas yra greita injekcija, paprasčiausias atsakymas yra: tai nutinka, kai dirbtinio intelekto modelis negali atskirti kūrėjo pateiktų instrukcijų nuo instrukcijų, paslėptų apdorojamame turinyje.

Ką tai iš tikrųjų apima? #

Dauguma realių atvejų patenka į šias pagrindines kategorijas:

  • Tiesioginė greita injekcija: užpuolikas įveda kenkėjišką instrukciją tiesiai į pokalbių langą arba įvesties lauką, atvirai prašydamas modelio ignoruoti ankstesnes taisykles („ignoruoti visas ankstesnes instrukcijas ir…“).
  • Netiesioginė greita injekcijaKenkėjiška instrukcija yra paslėpta turinyje, kurį modelis skaito vėliau, pvz., tinklalapyje, PDF faile, el. laiške ar kodo komentare, ir ji suaktyvinama tik tada, kai modelis apdoroja tą turinį, tuo metu nedalyvaujant užpuolikui.
  • „Jailbreak“ stiliaus injekcijaspecifinis injekcijos pobūdis, kai naudojami vaidmenų žaidimai, hipotetinis įrėminimas arba kodavimo gudrybės, siekiant apeiti modelio saugumą guardrails konkrečiai, o ne užgrobti jos užduotį.

Greitas įpurškimas ir atrakinimas: kuo skiriasi? #

Įprastas tolesnis greitosios injekcijos aspektas yra skirtumas nuo apsaugos nuo nulaužimo (angl. jailbreaking). Šie du aspektai sutampa, bet nėra identiški. Apsaugos nuo nulaužimo (angl. jailbreaking) tikslas – apeiti modelio saugos ir... turinys guardrails, priversti jį pasakyti ar sugeneruoti tai, ko jis buvo apmokytas atsisakyti. Greitas įskiepijimas yra platesnis: tai modelio instrukcijų ar užduoties užgrobimas, kuris gali būti susijęs su saugumu arba ne. guardrails visai. Netiesioginė injekcija, paslėpta pagalbos užklausoje, kuri tyliai nurodo klientų aptarnavimo agentui išsiųsti vartotojo duomenis išoriniu adresu, nėra bandymas ką nors atblokuoti; tai tik pačios užduoties peradresavimas.

Kur iš tikrųjų pasirodo greita injekcija #

Supratus greito įpurškimo reikšmę, lengviau pastebėti, kur realiose sistemose slypi rizika:

MCP serveriai ir dirbtinio intelekto kodavimo asistentai – kenkėjiškas komentaras, README arba įrankių rezultatų paketas gali nukreipti agento veiksmus kūrėjo kodo bazėje arba terminale. Tai gali skirtis priklausomai nuo programavimo kalbos, kuria remiantis jis sukurtas, tačiau pagrindinė idėja (redaktorius + kūrimo įrankiai + derinimo priemonė vienoje vietoje) išlieka ta pati.

Pokalbių robotai ir palaikymo agentai – vartotojas įklijuoja įterptą tekstą, kad robotas parodytų savo sistemos raginimą arba atliktų netyčinius veiksmus.

Paieškos papildyta generacija (RAG) pipelines – užkrėstas dokumentas žinių bazėje turi instrukcijas, kurios aktyvuojamos jį radus.

Autonominiai dirbtinio intelekto agentai – agentas, naršantis internete, skaitantis el. laiškus arba skambinantis įrankiais, gali paimti įterptas instrukcijas iš bet kokio turinio, kurį liečia, ir atlikti veiksmus pagal jas turėdamas realius leidimus.

Kodėl greito įpurškimo reikšmė yra ne tik „greitas triukas“ #

Lengva tai atmesti kaip naujovę, sumanų būdą priversti pokalbių robotą pasakyti ką nors kvailo. Tačiau kai dirbtinio intelekto modeliai yra prijungti prie agentų, kurie gali siųsti el. laiškus, vykdyti kodą, atlikti užklausas duomenų bazėms arba diegti paketus, raginimo injekcija nebebėra pokalbių lango įdomybė ir tampa tikra saugumo ribos problema: kas kontroliuoja modelio skaitomą turinį, tinkamomis sąlygomis gali kontroliuoti, ką tas modelis daro toliau. Štai kodėl ši injekcija dabar rodoma kaip atskira kategorija... OWASP 10 geriausių LLM programųir kodėl supratimas, kas yra greitas įpurškimas, dabar laikomas pagrindinėmis žiniomis visiems, kuriantiems ar saugantiems dirbtiniu intelektu pagrįstas sistemas, o ne tik specialiųjų poreikių tenkinimo objektu.

Jei į tai žiūrite konkrečiai iš „AppSec“ ir „DevSecOps“ perspektyvos, t. y. kaip greito įskiepijimo rizika pasireiškia dirbtinio intelekto agentuose, MCP serveriuose ir dirbtinio intelekto sugeneruotame kode, o ne tik ką šis terminas reiškia, tai išsamiau aptarėme čia: Dirbtinio intelekto tiekimo grandinės saugumas.

DUK #

Kas yra greita injekcija vienu sakiniu?

Ar tai ataka, kai kenkėjiškos instrukcijos yra paslėptos dirbtinio intelekto modelio apdorojamame įvesties arba turinio elemente, todėl modelis vykdo užpuoliko, o ne originalias instrukcijas.

Kokia yra paties termino „greita injekcija“ reikšmė?

Jame derinamas „prompt“ (instrukcijos ir kontekstas, pateikiami dirbtinio intelekto modeliui) su „injekcija“ (neleistinų komandų įterpimas į kažką, kas turėtų būti tik duomenys) – ta pati pagrindinė idėja, kuria grindžiamos senesnės atakos, tokios kaip SQL injekcija.

Ar tai tas pats, kas jailbreak'as?

Ne. Atrakinimas konkrečiai skirtas modelio saugumui. guardrails kad jis sukurtų neleistiną turinį. Prompt injekcija yra platesnė sąvoka: ji užgrobia modelio užduotį arba instrukcijas, kurios gali visiškai nesusijusios su saugos filtrais.

Ar greita injekcija gali įvykti be žmogaus užpuoliko įvedimo?

Taip. Tai vadinama netiesiogine greita injekcija: kenkėjiška instrukcija yra dokumente, tinklalapyje ar faile, kurį modelis ar agentas nuskaito vėliau, ir ji automatiškai suaktyvinama tuo metu, kai turinys apdorojamas.

Ar greitam įskiepijimui reikalingas kodavimo pažeidžiamumas?

Ne. Jis išnaudoja tai, kaip modelis interpretuoja natūralią kalbą, o ne programos kodo trūkumą. Būtent dėl ​​to jį sunku ištaisyti naudojant tradicines saugumo priemones.

Pradėti nemokamai

Pradėkite nemokamai.
Nebūtina kreditinės kortelės.

Pradėkite vienu paspaudimu:

Ši informacija bus saugiai saugoma pagal Paslaugų teikimo sąlygos bei Privatumo politika

Programos ekrano kopija