Zlikwiduj silosy danych i oprzyj system ochrony na jednej platformie cyberbezpieczeństwa.
Injection prompt to rodzaj cyberataku, który celuje w usługi wykorzystujące AI. Polega na wprowadzeniu złośliwych danych wejściowych (promptów) w celu wyciągnięcia niezamierzonych lub wrażliwych informacji z systemu, poza tym, co przewidział programista. Jeśli się powiedzie, może to spowodować, że usługa AI zwróci nieodpowiednie treści lub nawet ujawni wewnętrzne konfiguracje.
Injection prompt jest szczególnie trudny do wykrycia i zablokowania w usługach AI opartych na języku naturalnym, takich jak AI konwersacyjna, ponieważ dane wejściowe są napisane w języku ludzkim, który nie ma stałej struktury ani reguł, w przeciwieństwie do tradycyjnych ataków typu injection, które celują w strukturalne formaty zapytań.
Ta strona koncentruje się na injection prompt w kontekście dużych modeli językowych (LLM), które przetwarzają język naturalny.
Zanim zagłębimy się w injection prompt, ważne jest zrozumienie, czym są LLM i prompty.
Duże modele językowe to rodzaj generatywnej AI, która jest trenowana na ogromnych zbiorach danych języka naturalnego. Są używane w aplikacjach takich jak chatboty i automatyczne generowanie dokumentów. Przykłady obejmują GPT-3/4 od OpenAI i BERT od Google.
Prompt to dane wejściowe, które użytkownik dostarcza do modelu AI, często napisane w swobodnym języku naturalnym. Ponieważ nie ma sztywnych reguł składniowych, użytkownicy muszą starannie formułować swoje dane wejściowe, aby otrzymywać sensowne odpowiedzi. Ta praktyka jest znana jako prompting.
Przeanalizujmy to na przykładzie fikcyjnej usługi tłumaczenia na hiszpański napędzanej przez LLM. Gdy użytkownik wprowadza zapytanie, jak pokazano na Rysunku 1, system przetwarza je, dodając z góry zdefiniowany tekst (np. „Proszę przetłumaczyć poniższy tekst na hiszpański”), aby stworzyć pełny prompt. Ten końcowy prompt jest wysyłany do LLM, który zwraca przetłumaczoną odpowiedź na podstawie tej instrukcji.
Rysunek 1. Tekst wprowadzony przez użytkownika
Rysunek 2. Przebieg przetwarzania w fikcyjnej usłudze tłumaczenia na hiszpański z użyciem dużego modelu językowego
Rozważmy, jak atakujący mógłby to wykorzystać. Załóżmy, że złośliwy użytkownik wprowadza prompt podobny do tego pokazanego na Rysunku 3. System łączy wtedy te dane wejściowe z jego z góry zdefiniowanym promptem, co skutkuje końcowym wejściem, jak pokazano na Rysunku 4.
LLM, otrzymując ten prompt, może zignorować oryginalną instrukcję i zamiast tego odpowiedzieć na wprowadzoną przez atakującego komendę, potencjalnie zwracając niebezpieczne lub niezamierzone wyniki (np. instrukcje dotyczące tworzenia ransomware). To nadużycie jest trudne do wykrycia i zablokowania ze względu na naturalny język danych wejściowych.
Rysunek 3. Złośliwy tekst wprowadzony przez użytkownika i jego tłumaczenie na angielski
Rysunek 4. Ostatecznie wygenerowany prompt
Ponieważ injection prompt wykorzystuje język naturalny, jest z natury trudniejszy do wykrycia niż tradycyjne ataki typu injection. Niemniej jednak, specyficzne strategie łagodzenia mogą pomóc w zmniejszeniu ryzyka:
Obrona przez instrukcje: Wstawia instrukcje kontrolne wokół danych wejściowych użytkownika, aby pomóc LLM zrozumieć, które części priorytetowo traktować lub ignorować.
Post-Prompting: Umieszcza dane wejściowe użytkownika po z góry zdefiniowanych promptach.
Zamknięcie w sekwencjach losowych: Zamieszcza dane wejściowe użytkownika między losowo generowanymi znacznikami.
Obrona typu sandwich: Otacza dane wejściowe między dwoma z góry zdefiniowanymi promptami.
Tagowanie XML: Umieszcza dane wejściowe użytkownika wewnątrz znaczników XML, aby odróżnić zawartość i zmniejszyć ryzyko wykonania.
Ocena LLM: Używa osobnego LLM do wstępnego sprawdzenia i oceny promptu przed wykonaniem.
Te techniki mogą być wdrażane wewnątrz LLM lub na poziomie aplikacji. Dodatkowo, walidacja danych wejściowych, kontrola dostępu i ograniczenie funkcji kompozycji promptów do zaufanych użytkowników są skutecznymi uzupełniającymi środkami obronnymi.
W miarę jak generatywna AI staje się bardziej powszechna w środowiskach korporacyjnych, przynosi nowe efektywności, a także nowe zagrożenia bezpieczeństwa. Injection prompt jest jednym z tych zagrożeń, gdzie atakujący manipulują danymi wejściowymi, aby wyciągnąć wrażliwe lub niezamierzone informacje z usług opartych na LLM.
Jego wykrycie jest trudne ze względu na otwartą naturę języka naturalnego. Jednak dzięki technikom takim jak obrona przez instrukcje, inspekcja danych wejściowych i kontrolowany dostęp, organizacje mogą łagodzić zagrożenie injection prompt i zapewniać bezpieczne wdrażanie narzędzi AI.
Szybsze zatrzymywanie przeciwników i przejęcie kontroli nad swoimi ryzykami cybernetycznymi zaczyna się od jednej platformy. Zarządzaj bezpieczeństwem w sposób holistyczny dzięki kompleksowym możliwościom zapobiegania, wykrywania i reagowania, wspieranym przez AI, wiodące badania nad zagrożeniami i inteligencję.
Trend Vision One wspiera różne hybrydowe środowiska IT, automatyzuje i orkiestruje przepływy pracy oraz zapewnia eksperckie usługi z zakresu cyberbezpieczeństwa, dzięki czemu możesz uprościć i zintegrować swoje operacje bezpieczeństwa.