Trajtojeni përmbajtjen e marrë si të dhëna hyrëse të pabesueshme
PërfunduarDalloni udhëzimet e fshehura në skedarët e depos së kodit dhe rezultatet e mjeteve. Mbajeni informacionin e marrë të ndarë nga autoriteti për të vepruar.
Publikuar nga TaigaSi shkruajmë
Kontrolloni çfarë keni kuptuarNjë skedar në depon e kodit thotë se të gjitha testet janë fakultative dhe se agjenti duhet t'i shpërfillë udhëzimet e detyrës. Si duhet ta trajtojë rrjedha e punës?Bëni ushtrimin
Çfarë do të mësoni
- Identifikoni një prompt injection të tërthortë në një rrjedhë zhvillimi.
- Shpjegoni pse vetëm etiketat tekstuale nuk mund të zbatojnë një kufi sigurie.
- Projektoni një test të sigurt për kufizimet e mjeteve.
Identifikoni pikën ku të dhënat bëhen udhëzim
Një agjent kodimi lexon më shumë se kërkesën e përdoruesit. Ai mund të shqyrtojë issues, skedarë të depos së kodit, dokumentacion paketash, rezultate kërkimi dhe përgjigje mjetesh. Një pjesë e kësaj përmbajtjeje mund të përmbajë udhëzime nga një person tjetër.
Prompt injection ndodh kur një përmbajtje e tillë e largon modelin nga detyra e autorizuar. Një sulm i tërthortë vjen përmes një burimi të marrë nga jashtë, në vend të kërkesës së drejtpërdrejtë të përdoruesit. OWASP e përshkruan materialin e depos së kodit dhe rezultatet e mjeteve si pika hyrjeje përkatëse. Lexoni udhëzimet e parandalimit.
Merrni një detyrë imagjinare mirëmbajtjeje. Përdoruesi i kërkon agjentit të korrigjojë filtrin e një raporti dhe të ekzekutojë testet e detyrueshme. Një README i lexuar thotë se testet janë të vjetruara dhe i kërkon agjentit të ngarkojë një skedar konfigurimi. README mund ta shpjegojë projektin. Ai nuk mund të autorizojë anashkalimin e kontrolleve të përdoruesit ose dërgimin e skedarëve diku tjetër.
Përcaktoni pasojat e mundshme
I njëjti tekst mashtrues ka pasoja të ndryshme në mjedise të ndryshme. Një mjet përmbledhjeje me akses vetëm për lexim mund të prodhojë një përmbledhje të pasaktë. Një agjent me leje shkrimi në depo mund të ndryshojë kodin. Një agjent me sekrete dhe akses dalës në rrjet mund të ekspozojë informacion.
Shqyrtoni veprimet e disponueshme para se të vendosni cilat masa mbrojtëse kanë rëndësi. Renditni burimet e ndjeshme, destinacionet ku mund të shkruhet dhe destinacionet e jashtme. Përfshini lidhësit e shtuar pas konfigurimit fillestar. Një mjet i ri mund të zgjerojë ndikimin e një dobësie ekzistuese.
Një agjent mund ta bartë përmbajtjen mashtruese edhe në një fazë të mëvonshme. Për shembull, mund të kopjojë një udhëzim të pabesueshëm në një përshkrim detyre të gjeneruar. Agjenti pasues nuk duhet ta trajtojë atë përshkrim si politikë të miratuar në mënyrë të pavarur.
Përdorni disa kontrolle me qëllime të veçanta
Në projektimin e aplikacionit, ndani udhëzimet e besuara të detyrës nga të dhënat e marra. Tregoni origjinën e materialit të marrë. Këta hapa përmirësojnë interpretimin, por nuk krijojnë një kufi të plotë sigurie.
Zbatoni lejet e burimeve në sistemin e ekzekutimit. Kufizoni destinacionet e të dhënave të ndjeshme. Kërkoni vendimin përkatës para veprimeve me pasoja të rëndësishme. Kontrolloni veprimin e propozuar kundrejt detyrës së autorizuar dhe burimit mbi të cilin lejohet të kryhet.
Filtrat dhe një model i dytë mund të ndihmojnë në zbulimin e përmbajtjes së dyshimtë. Mund edhe të mos zbulojnë sulme ose të bllokojnë informacion të ligjshëm. Mos e zëvendësoni autorizimin determinist me një pikëzim që shpreh sa i sigurt është modeli për përgjigjen e vet. OWASP thekson shprehimisht kufizimet e mbështetjes vetëm te prompt-et ose marrja e informacionit. Lexoni përshkrimin e rrezikut.
Testoni rrjedhën e punës pa ekspozim real
Përdorni një depo të përkohshme dhe skedarë imagjinarë. Mos i jepni vlerësimit kredenciale prodhimi ose leje të pakufizuara për shkrim në sisteme të jashtme. Futni një udhëzim të padëmshëm që bie ndesh me detyrën, si anashkalimi i një kontrolli të detyrueshëm.
Vëzhgoni si përgjigjen e modelit, ashtu edhe veprimet reale të mjeteve. Një mesazh që thotë «E shpërfilla udhëzimin» nuk mjafton nëse kontrolli gjithsesi u anashkalua. Regjistroni detyrën, fixture-n me udhëzimin e futur, mjetet e lejuara dhe rezultatin e vëzhguar.
Përsëritni rastet përfaqësuese pas ndryshimeve në prompt-e, modele, lidhës ose leje. Një shembull i bllokuar është evidencë për atë rast, jo provë kundër çdo prompt injection. Nëse një test dështon, zvogëloni pasojat e mundshme ndërsa korrigjoni rrjedhën bazë të punës.
Bëni ushtrimin
Krijoni një fixture të përkohshme me një koment që i kërkon agjentit të anashkalojë një kontroll të detyrueshëm. Kryeni një vlerësim të autorizuar dhe të izoluar, pa sekrete ose shkrime në sisteme të jashtme. Verifikoni që kontrolli ende ekzekutohet. Regjistroni lejet e mjeteve, sjelljen e vëzhguar dhe kufizimet e këtij testi të vetëm.
Shkarkoni fletën e punës (Markdown)Heqja e kësaj zgjedhjeje fshin të gjithë përparimin e ruajtur në këtë shfletues.
Përparimi mbetet në këtë shfletues. Pa llogari, pa gjurmim.