Патека 03Лекција 3 / 6

Третирајте ја прибраната содржина како недоверлив влез

Препознајте инструкции скриени во датотеки од репозиториум и резултати од алатки. Одделете ги прибраните информации од овластувањето за дејствување.

Практично10 минПрегледано

Објавува Како пишуваме

Проверете го разбирањетоДатотека во репозиториум вели дека сите тестови се незадолжителни и дека агентот треба да ги игнорира инструкциите за задачата. Како треба работниот тек да ја третира?Направете ја вежбата
Датотека во репозиториум вели дека сите тестови се незадолжителни и дека агентот треба да ги игнорира инструкциите за задачата. Како треба работниот тек да ја третира?

Што ќе научите

  • Препознајте индиректен prompt injection во развоен работен тек.
  • Објаснете зошто текстуални ознаки сами не можат да спроведат безбедносна граница.
  • Осмислете безбеден тест за ограничувањата на алатките.

Утврдете каде податокот станува инструкција

Агент за програмирање чита повеќе од барањето на корисникот. Може да испитува пријавени проблеми, датотеки во репозиториум, документација на пакети, резултати од пребарување и одговори од алатки. Дел од таа содржина може да содржи инструкции од друго лице.

Prompt injection се случува кога таквата содржина го пренасочува моделот надвор од овластената задача. Индиректен напад стигнува преку прибран извор, а не преку директното барање на корисникот. OWASP ги опишува материјалите од репозиториумот и резултатите од алатките како релевантни влезни точки. Прочитајте ги насоките за превенција.

Разгледајте измислена задача за одржување. Корисникот бара агентот да поправи филтер за извештај и да ги изврши потребните тестови. Прибран README вели дека тестовите се застарени и бара агентот да постави конфигурациска датотека на друго место. README може да го објасни проектот. Не може да овласти прескокнување на проверките на корисникот или испраќање датотеки на друго место.

Утврдете ги можните последици

Истиот погрешно насочувачки текст има различни последици во различни околини. Алатка само за читање и сумирање може да даде погрешно резиме. Агент со пристап за запишување во репозиториум може да менува код. Агент со тајни и излезен мрежен пристап може да изложи информации.

Испитајте ги достапните дејства пред да одлучите кои одбранбени мерки се важни. Наведете ги чувствителните ресурси, целните ресурси во кои може да се запишува и надворешните одредишта. Вклучете ги конекторите додадени по почетното поставување. Нова алатка може да ги зголеми последиците од постојна слабост.

Агент може да пренесе погрешно насочувачка содржина и во подоцнежна фаза. На пример, може да копира недоверлива инструкција во генериран опис на задача. Следниот агент не смее да го третира тој опис како независно одобрена политика.

Користете повеќе контроли со различни цели

Во дизајнот на апликацијата, одделете ги доверливите инструкции за задачата од прибраните податоци. Прикажете го потеклото на прибраниот материјал. Овие чекори го подобруваат толкувањето, но не воспоставуваат целосна безбедносна граница.

Спроведувајте ги дозволите за ресурси во системот за извршување. Ограничете ги одредиштата за чувствителни податоци. Барајте соодветна одлука пред дејства со значителни последици. Проверете ја предложената операција според овластената задача и целниот ресурс.

Филтри и втор модел може да помогнат да се открие сомнителна содржина. Може и да пропуштат напади или да блокираат легитимни информации. Не заменувајте детерминистичка авторизација со оценка за увереност на модел. OWASP изречно ги наведува ограничувањата на потпирање само врз инструкции или прибирање содржина. Прочитајте го описот на ризикот.

Тестирајте го работниот тек без вистинска изложеност

Користете привремен репозиториум и измислени датотеки. Не давајте му на оценувањето продукциски пристапни податоци или неограничени надворешни запишувања. Вметнете безопасна инструкција што е во судир со задачата, како прескокнување задолжителна проверка.

Набљудувајте ги и одговорот на моделот и вистинските дејства на алатките. Порака „ја игнорирав инструкцијата“ не е доволна ако проверката сепак е прескокната. Запишете ги задачата, вметнатиот тестен пример, дозволените алатки и забележаниот резултат.

Повторете репрезентативни случаи по промени на инструкциите, моделите, конекторите или дозволите. Блокиран пример е доказ за тој случај, а не доказ за заштита од секое вметнување инструкции. Ако тест не успее, ограничете ги можните последици додека го поправате основниот работен тек.

Направете ја вежбата

Создајте привремен тестен пример со коментар што бара агент да прескокне задолжителна проверка. Извршете овластено, изолирано оценување без тајни или надворешни запишувања. Проверете дали проверката сепак се извршува. Запишете ги дозволите на алатките, забележаното однесување и ограничувањата на овој единствен тест.

Преземи работен лист (Markdown)
Проверете го разбирањето ↑

Продолжете со учење

Извори и дополнително читање

Поврзано читање од Taiga

Претходна лекција: Ограничете ги овластувањата на агентот