Bezpieczeństwo aplikacji opartych o LLM

Testy penetracyjne systemów AI i modeli LLM

Model językowy nie odróżnia polecenia od danych. Dlatego testy penetracyjne systemów AI zaczynamy od pytania, czym zasilany jest kontekst — wiadomości klientów i dokumenty z repozytorium to kanały, którymi da się wydać modelowi instrukcję.

Testy prowadzą certyfikowani pentesterzy. Retesty po wdrożeniu zabezpieczeń są bezpłatne.

Zmiana modelu zagrożeń

Dlaczego asystent AI wymaga osobnych testów

W klasycznej aplikacji granica zaufania przebiega tam, gdzie kończy się dane wejściowe użytkownika. W aplikacji opartej o model językowy ta granica się rozmywa: treść dokumentu wciągniętego do kontekstu, opis produktu z bazy wiedzy czy podpis w wiadomości e-mail trafiają do tego samego okna, w którym znajdują się instrukcje systemowe.

Skutki nie są teoretyczne. Asystent z dostępem do narzędzi potrafi wysłać wiadomość, wywołać zapytanie do API lub odczytać plik. Jeżeli instrukcja przemycona w danych zostanie potraktowana jak polecenie użytkownika, napastnik dysponuje uprawnieniami, które Państwo nadali modelowi — a nie tymi, które ma sam napastnik.

Testujemy więc dwie warstwy naraz. Pierwsza to zachowanie modelu: podatność na obejście instrukcji systemowych, ujawnienie treści promptu i wyciek fragmentów kontekstu. Druga to architektura wokół modelu: zakres uprawnień narzędzi, izolacja danych między najemcami w bazie wektorowej oraz to, czy wynik działania modelu jest weryfikowany, zanim zmieni cokolwiek w systemach produkcyjnych.

Obszary testów

Co sprawdzamy w systemie opartym o AI

Zakres opieramy o OWASP Top 10 for LLM Applications, uzupełniając go o ręczne testy logiki integracji.

Prompt injection bezpośredni i pośredni

Obejście instrukcji systemowych zarówno wprost w rozmowie, jak i przez treść dokumentów, stron oraz wiadomości, które model wciąga do kontekstu bez udziału użytkownika.

Wyciek danych z kontekstu

Próba odtworzenia treści instrukcji systemowej, danych innego użytkownika pozostawionych w historii rozmowy oraz fragmentów dokumentów, do których dana rola nie powinna mieć dostępu.

Nadużycia narzędzi agentowych

Sprawdzamy, co model może wykonać za pośrednictwem podpiętych funkcji: wysyłkę wiadomości, zapytania do API, operacje na plikach oraz wywołania płatne, których koszt ponosi Państwa organizacja.

Bezpieczeństwo warstwy RAG

Izolacja danych między klientami w bazie wektorowej, kontrola dostępu do dokumentów źródłowych oraz podatność procesu indeksowania na wprowadzenie spreparowanej treści.

Nadmierne uprawnienia integracji

Analiza tego, jakie konta i tokeny obsługują wywołania modelu. Asystent działający na uprawnieniach administracyjnych zamienia błąd w rozmowie w incydent w środowisku produkcyjnym.

Nadużycie zasobów i koszty

Brak limitów zapytań, kosztowne łańcuchy wywołań uruchamiane pojedynczą wiadomością oraz możliwość wykorzystania Państwa klucza dostawcy modelu przez osoby trzecie.

Zgodność

Systemy AI a obowiązki prawne w Polsce

Wdrożenie asystenta AI nie zwalnia z obowiązków wynikających z RODO — najczęściej je zaostrza.

RODO — minimalizacja i podstawa przetwarzania

Dane trafiające do kontekstu modelu to zwykle dane osobowe, a ich przekazanie zewnętrznemu dostawcy modelu jest powierzeniem przetwarzania. Sprawdzamy, co realnie opuszcza Państwa infrastrukturę, czy jest to zgodne z zawartą umową i czy zakres da się ograniczyć.

Zautomatyzowane decyzje — artykuł 22 RODO

Jeżeli model współdecyduje o sprawach dotyczących osób fizycznych, obowiązują dodatkowe wymogi dotyczące informacji i możliwości interwencji człowieka. Weryfikujemy technicznie, czy przewidziany nadzór człowieka rzeczywiście da się obejść w przepływie aplikacji.

AI Act i klasyfikacja ryzyka

Unijne rozporządzenie o sztucznej inteligencji wiąże obowiązki z klasą ryzyka systemu. Nasze testy dostarczają dowodów technicznych dla wymagań dotyczących odporności i cyberbezpieczeństwa, przydatnych w dokumentacji przygotowywanej na potrzeby zgodności.

ISO 27001 i OWASP Top 10 for LLM

Znaleziska mapujemy na zabezpieczenia z Załącznika A oraz na kategorie OWASP Top 10 for LLM Applications. Dzięki temu wynik jest porównywalny między kolejnymi testami i zrozumiały dla audytora, który nie specjalizuje się w uczeniu maszynowym.

Przebieg

Jak prowadzimy test systemu AI

Zaczynamy od architektury, ponieważ zakres uprawnień modelu decyduje o tym, co w ogóle może pójść nie tak.

  1. 01

    Analiza architektury

    Ustalamy, jakie źródła danych zasilają kontekst, jakie narzędzia są podpięte pod model i na czyich uprawnieniach są wywoływane.

  2. 02

    Mapowanie granic zaufania

    Wskazujemy każdy kanał, którym treść pochodząca z zewnątrz trafia do modelu — od pól formularza po dokumenty indeksowane automatycznie.

  3. 03

    Testy zachowania modelu

    Prowadzimy testy obejścia instrukcji systemowych, ujawnienia promptu oraz wycieku danych z kontekstu, w wariancie bezpośrednim i pośrednim.

  4. 04

    Testy warstwy integracyjnej

    Sprawdzamy, czy przez wywołania narzędzi da się wykonać operację, do której użytkownik rozmawiający z modelem nie ma uprawnień.

  5. 05

    Raport z scenariuszami

    Każde znalezisko opisujemy pełnym przebiegiem rozmowy prowadzącym do nadużycia, aby zespół mógł je odtworzyć i wykorzystać jako test regresyjny.

  6. 06

    Retesty po wdrożeniu zabezpieczeń

    Weryfikujemy skuteczność wprowadzonych filtrów i ograniczeń uprawnień. Retesty są bezpłatne i nielimitowane w ramach projektu.

Najczęstsze pytania

Bezpieczeństwo AI — pytania klientów

Powiązane usługi

Sprawdźmy, co Państwa asystent zrobi na cudze polecenie

Prosimy o kontakt, aby omówić architekturę systemu AI i ustalić zakres testów. Konsultacja wstępna jest bezpłatna.

Prosimy o kontakt