Kąt Andersona

Atakowanie systemów przetwarzania języka naturalnego przy użyciu przykładów przeciwnych

mm
Dodaj Unite.AI do preferowanych źródeł w Google

Badacze z Wielkiej Brytanii i Kanady opracowali serię ataków na systemy przetwarzania języka naturalnego (NLP), które są skuteczne przeciwko szerokiej gamie popularnych frameworków przetwarzania języka, w tym szeroko wdrożonych systemów od Google, Facebook, IBM i Microsoft.

Atak może być potencjalnie wykorzystany do unieruchomienia systemów tłumaczenia maszynowego, powodując, że produkują nonsens lub zmieniają naturę tłumaczenia; do zakłócenia szkolenia modeli NLP; do błędnej klasyfikacji treści toksycznych; do zatrucia wyników wyszukiwania, powodując błędne indeksowanie; do powodowania, że wyszukiwarki nie identyfikują treści szkodliwych lub negatywnych, które są idealnie czytelne dla osoby; oraz nawet do powodowania ataków typu Denial-of-Service (DoS) na frameworki NLP.

Chociaż autorzy ujawnili proponowane słabości w dokumentach różnym nieznanym stronom, których produkty są wymienione w badaniu, uważają, że branża NLP była leniwa w zabezpieczaniu się przed atakami przeciwnymi. W dokumencie stwierdza się:

‘Te ataki wykorzystują funkcje kodowania języka, takie jak niewidoczne znaki i homoglify. Chociaż były one czasami widziane w przeszłości w spamie i oszustwach, projektanci wielu systemów NLP, które są obecnie wdrażane na dużą skalę, wydają się je całkowicie ignorować.’

Kilka ataków zostało przeprowadzonych w “czarnej skrzynce” – przez wywołania API do systemów MLaaS, a nie lokalnie zainstalowanych wersji frameworków NLP. Co do skuteczności systemów, autorzy piszą:

‘Wszystkie eksperymenty zostały przeprowadzone w ustawieniu czarnej skrzynki, w którym dozwolone są nieograniczone oceny modelu, ale dostęp do wag lub stanu ocenianego modelu nie jest dozwolony. To reprezentuje jeden z najmocniejszych modeli zagrożeń, dla których możliwe są ataki, w tym przeciwko komercyjnym ofertom Machine-Learning-as-a-Service (MLaaS). Każdy zbadany model był podatny na ataki perturbacji niezauważalnych.

‘Uważamy, że zastosowanie tych ataków powinno teoretycznie ogólnie dotyczyć każdego modelu NLP opartego na tekście bez odpowiednich obron.’

Dokument dokument nosi tytuł Bad Characters: Imperceptible NLP Attacks i pochodzi od trzech badaczy z trzech wydziałów Uniwersytetu w Cambridge i Uniwersytetu w Edynburgu, oraz badacza z Uniwersytetu w Toronto.

Tytuł dokumentu jest przykładowy: jest wypełniony “niewidocznymi” znakami Unicode, które stanowią podstawę jednej z czterech głównych metod ataku przyjętych przez badaczy.

Even the paper's title has hidden mysteries.

Nawet tytuł dokumentu ma ukryte tajemnice.

Metoda/y

Dokument proponuje trzy podstawowe skuteczne metody ataku: niewidoczne znaki; homoglify; oraz przebudowania. Są to “uniwersalne” metody, które badacze znaleźli, aby posiadać szeroki zasięg przeciwko frameworkom NLP w scenariuszach czarnej skrzynki. Dodatkowa metoda, obejmująca użycie znaku usuń, została przez badaczy uznana za odpowiednią tylko dla niezwykłych potoków NLP, które wykorzystują schowek systemu operacyjnego.

1: Niewidoczne znaki

Ten atak wykorzystuje zakodowane znaki w czcionce, które nie mapują na glif w systemie Unicode. System Unicode został zaprojektowany w celu ustandaryzowania elektronicznego tekstu i obecnie obejmuje 143 859 znaków w wielu językach i grupach symboli. Wiele z tych mapowań nie zawiera widocznego znaku w czcionce (która nie może, naturalnie, zawierać znaków dla każdego możliwego wpisu w Unicode).

From the paper, a hypothetical example of an attack using invisible characters, which split up the words into segments which either mean nothing to a Natural Language Processing system, or, if carefully crafted, can mean something different to an accurate translation. For the casual reader, the original text is correct.

Ze względu na dokument, hipotetyczny przykład ataku z użyciem niewidocznych znaków, które dzielą słowa na segmenty, które albo nie znaczą nic dla systemu przetwarzania języka naturalnego, albo, jeśli starannie wykonane, mogą oznaczać coś innego niż dokładne tłumaczenie. Dla czytelnika, oryginalny tekst jest poprawny.

Typowo, nie można po prostu użyć jednego z tych nie-znaków, aby utworzyć zerową przestrzeń, ponieważ większość systemów wyświetli “zastępczy” symbol (taki jak kwadrat lub znak zapytania w skośnym pudełku), aby reprezentować nierozpoznany znak.

Jednak, jak zauważa dokument, tylko niewielka garstka czcionek dominuje w obecnej scenie komputerowej, i, niezwykle, one mają tendencję do przestrzegania standardu Unicode.

Dlatego badacze wybrali glify Unifont dla swoich eksperymentów, częściowo ze względu na “solidne pokrycie” Unicode, ale także dlatego, że wygląda to jak wiele innych “standardowych” czcionek, które prawdopodobnie będą dostarczane do systemów NLP. Chociaż niewidoczne znaki wyprodukowane z Unifont nie są renderowane, są one jednak liczone jako widoczne znaki przez testowane systemy NLP.

Aplikacje
Wróć do “wykonanego” tytułu samego dokumentu, możemy zobaczyć, że wykonanie wyszukiwania Google z wybranego tekstu nie daje oczekiwanego wyniku:

To jest efekt po stronie klienta, ale konsekwencje po stronie serwera są nieco poważniejsze. Dokument obserwuje:

‘Chociaż dokument perturbowany może być przeszukany przez crawler wyszukiwarki, terminy użyte do jego indeksowania będą dotknięte perturbacjami, co sprawi, że będzie mniej prawdopodobne, że pojawi się w wynikach wyszukiwania na nieperturbowanych terminach. Jest to możliwe, aby ukryć dokumenty przed wyszukiwarkami “na widoku.”

‘Jako przykład aplikacji, nieuczciwa firma mogłaby maskować negatywną informację w swoich sprawozdaniach finansowych, tak aby specjalistyczne wyszukiwarki używane przez analityków akcji nie znalazły jej.’

Jedynymi scenariuszami, w których atak “niewidocznych znaków” okazał się mniej skuteczny, były ataki na treści toksyczne, rozpoznawanie nazw jednostek (NER) i analizę sentymentu. Autorzy spekulują, że jest to albo dlatego, że modele były szkolone na danych, które również zawierały niewidoczne znaki, albo dlatego, że tokenizator modelu (który dzieli surowy język wejściowy na modułowe składniki) był już skonfigurowany do ignorowania ich.

2: Homoglify

Homoglif to znak, który wygląda jak inny znak – słabość semantyczna, która została wykorzystana w 2000 roku do stworzenia replicy domeny PayPal (PYPL ).

In this hypothetical example from the paper, a homoglyph attack changes the meaning of a translation by substituting visually indistinguishable homoglyphs (outlined in red) for common Latin characters.

W tym hipotetycznym przykładzie z dokumentu, atak homoglify zmienia znaczenie tłumaczenia, zastępując niewidoczalne homoglify (zaznaczone na czerwono) dla wspólnych znaków łacińskich.

Autorzy komentują:

‘Odkryliśmy, że modele machine learning, które przetwarzają tekst dostarczony przez użytkownika, takie jak systemy tłumaczenia neuronowego, są szczególnie podatne na ten styl ataku. Rozważmy na przykład wiodącą usługę Google Translate. W momencie pisania, wprowadzenie ciągu “paypal” w modelu angielsko-rosyjskim daje poprawny wynik “PayPal”, ale zastąpienie znaku łacińskiego a w wejściu znakiem cyrylicy а daje niewłaściwy wynik “папа” (“ojciec” w języku angielskim).’

Badacze obserwują, że chociaż wiele potoków NLP zastępuje znaki spoza ich słownika językowego tokenem <unk> (‘nieznany’), procesy, które wywołują zatruty tekst do potoku, mogą propagować nieznane słowa do oceny przed tym, jak ta środka bezpieczeństwa może zostać uruchomiona. Autorzy stwierdzają, że to “otwiera niespodziewanie duży obszar ataku”.

3: Przebudowania

Unicode pozwala na języki, które są pisane od lewej do prawej, z obsługą przez algorytm Bidirectional (BIDI) Unicode. Mieszanie znaków od prawej do lewej i od lewej do prawej w jednej ciągu jest zatem mylące, i Unicode zezwala na przesłonięcie BIDI przez specjalne znaki kontrolne. Pozwalają one na niemal dowolne renderowanie dla ustalonego porządku kodowania.

In another theoretical example from the paper, a translation mechanism is caused to put all the letters of the translated text in the wrong order, because it is obeying the wrong right-to-left/left-to-right encoding, due to a part of the adversarial source text (circled) commanding it to do so.

W innym teoretycznym przykładzie z dokumentu, mechanizm tłumaczenia jest zmuszony do umieszczenia wszystkich liter tekstu tłumaczonego w niewłaściwej kolejności, ponieważ jest ono posłuszne niewłaściwemu kodowaniu od prawej do lewej/od lewej do prawej, ze względu na część tekstu źródłowego (zaznaczonego) nakazującego mu to.

Autorzy stwierdzają, że w momencie pisania dokumentu, metoda była skuteczna przeciwko implementacji Unicode w przeglądarce Chromium, źródle dla przeglądarki Google Chrome, przeglądarce Microsoft Edge i wielu innych forków.

Również: Usunięcia

Włączone tutaj, aby wyniki graficzne były wyraźne, atak “usunięć” obejmuje włączenie znaku, który reprezentuje backspace lub inny tekst-efektujący kontrolę/komendę, który jest skutecznie wdrożony przez system czytania języka w stylu podobnym do makra tekstu.

Autorzy obserwują:

‘Niewielka liczba znaków kontrolnych w Unicode może powodować usunięcie sąsiadującego tekstu. Najprostszym przykładem są znaki backspace (BS) i delete (DEL). Jest również znak carriage return (CR), który powoduje, że algorytm renderowania tekstu zwraca się do początku linii i nadpisuje jej zawartość.

‘Na przykład, zakodowany tekst, który reprezentuje “Hello CRGoodbye World” jest renderowany jako “Goodbye World”.’

Jak wcześniej stwierdzono, ten atak wymaga nieprawdopodobnego poziomu dostępu, aby działać, i byłby w pełni skuteczny tylko z tekstem skopiowanym i wklejonym za pomocą schowka – niezwykłego potoku NLP.

Badacze przetestowali go jednak, i okazał się porównywalny do swoich współpracowników. Ataki przy użyciu pierwszych trzech metod mogą być wdrożone po prostu przez przesłanie dokumentów lub stron internetowych (w przypadku ataku na wyszukiwarki i/lub potoki NLP do przerabiania).

In a deletions attack, the crafted characters effectively erase what precedes them, or else force single-line text into a second paragraph, in both cases without making this obvious to the casual reader.

W ataku usunięć, spreparowane znaki skutecznie kasują to, co poprzedza je, lub zmuszają tekst jednowierszowy do drugiego akapitu, w obu przypadkach nie czyniąc tego oczywistym dla czytelnika.

Skuteczność wobec obecnych systemów NLP

Badacze przeprowadzili szereg niecelowych i celowych ataków na pięć popularnych modeli zamkniętych od Facebook, IBM, Microsoft, Google i HuggingFace, a także trzech modeli open source.

Przetestowali również “atаки sponge” przeciwko modelom. Atak sponge jest skutecznie atakiem DoS na systemy NLP, w którym tekst wejściowy “nie jest obliczalny” i powoduje, że szkolenie jest krytycznie spowolnione – proces, który powinien być zwykle uniemożliwiony przez przetwarzanie danych.

Pięć zadań NLP oceniono: tłumaczenie maszynowe, wykrywanie treści toksycznych, klasyfikacja implikacji tekstowych, rozpoznawanie nazw jednostek i analiza sentymentu.

Eksperymenty zostały przeprowadzone na nieokreślonej liczbie procesorów GPU Tesla P100, każdy z procesorem Intel Xeon Silver 4110, działającym pod Ubuntu. Aby nie naruszyć warunków korzystania z API, eksperymenty zostały powtarzane jednolicie z budżetem perturbacji od zera (niezmieniony tekst źródłowy) do pięciu (maksymalne zakłócenie). Badacze twierdzą, że wyniki, które uzyskali, mogą być przekroczone, gdyby dozwolono na większą liczbę iteracji.

Results from applying adversarial examples against Facebook's Fairseq EN-FR model.

Wyniki zastosowania przykładów przeciwnych przeciwko modelowi Facebook Fairseq EN-FR.

Results from attacks against IBM's toxic content classifier and Google's Perspective API.

Wyniki ataków na klasyfikator treści toksycznych IBM i interfejs API Perspective Google.

Two attacks against Facebook's Fairseq: 'untargeted' aims to disrupt, whilst 'targeted' aims to change the meaning of translated language.

Dwa ataki na model Fairseq Facebook: “niecelowy” ma na celu zakłócenie, podczas gdy “celowy” ma na celu zmianę znaczenia języka tłumaczonego.

Badacze przetestowali również swój system przeciwko wcześniejszym frameworkom, które nie były w stanie wygenerować “czytelnych przez człowieka” perturbujących tekstów w ten sam sposób, i stwierdzili, że system jest w dużej mierze porównywalny z nimi, a często znacznie lepszy, przy zachowaniu ogromnej przewagi w zakresie stealth.

Średnia skuteczność we wszystkich metodach, wektorach ataku i celach waha się wokół 80%, przy bardzo niewielkiej liczbie iteracji.

Komentując wyniki, badacze mówią:

‘Być może najbardziej niepokojącym aspektem naszych ataków perturbacji niezauważalnych jest ich szerokie zastosowanie: wszystkie systemy NLP, które przetestowaliśmy, są podatne. W istocie, każdy model machine learning, który pobiera tekst dostarczony przez użytkownika jako dane wejściowe, jest teoretycznie podatny na ten atak.

‘Wnioski dotyczące ataków mogą się różnić od jednej aplikacji do drugiej i od jednego modelu do drugiego, ale wszystkie modele oparte na tekście są oparte na zakodowanym tekście, a wszystkie teksty są podatne na ataki kodowania, chyba że kodowanie jest odpowiednio ograniczone.’

Optyczne rozpoznawanie znaków?

Te ataki zależą od tego, co można uznać za “słabości” w Unicode, i zostałyby unieważnione w potoku NLP, który rastrowałby cały tekst wejściowy i używałby optycznego rozpoznawania znaków jako środka sanitarnego. W tym przypadku ten sam niezły semantyczny sens widoczny dla ludzi czytających te perturbacje zostałby przekazany systemowi NLP.

Jednakże, gdy badacze wdrożyli potok OCR, aby przetestować tę teorię, stwierdzili, że wyniki BLEU (Bilingual Evaluation Understudy) spadły o 6,2% w stosunku do dokładności bazowej, i sugerują, że ulepszone technologie OCR prawdopodobnie będą konieczne, aby naprawić to.

Proponują również, że znaki kontrolne BIDI powinny być usuwane z wejścia domyślnie, niezwykłe homoglify powinny być mapowane i indeksowane (co określają jako “trudne zadanie”), a tokenizatory i inne mechanizmy pobierania powinny być uzbrojone przeciwko niewidocznym znakom.

W podsumowaniu, grupa badawcza nakłania sektor NLP do zwiększenia czujności wobec możliwości ataków przeciwnych, które są obecnie przedmiotem zainteresowania w badaniach nad widzeniem komputerowym.

‘[My] zalecają, aby wszystkie firmy budujące i wdrażające systemy NLP oparte na tekście wdrożyły takie obrony, jeśli chcą, aby ich aplikacje były odporne na aktorów atakujących.’

 

 

* Moja konwersja odniesień wewnętrznych do linków hiperłączy

18:08 14 grudnia 2021 – usunięto powtórne wspomnienie o IBM, przeniesiono link wewnętrzny z cytatu – MA

Pisarz specjalizujący się w dziedzinie machine learning, specjalista w dziedzinie syntezowania obrazów ludzi. Były szef działu treści badawczych w Metaphysic.ai, do czasu jego rozwiązania i połączenia z DNEG's Brahma.ai.
Portfolio site: martinanderson.ai
Contact: martin@martinanderson.ai