Logo Zephyrnet

Spiesząc się z tworzeniem aplikacji AI, nie zapominaj o bezpieczeństwie

Data:

Cecha W pośpiechu, aby zrozumieć, zbudować i dostarczyć produkty AI, programistów i analityków danych zachęca się, aby pamiętali o bezpieczeństwie i nie padali ofiarą ataków na łańcuch dostaw.

Istnieje niezliczona ilość modeli, bibliotek, algorytmów, gotowych narzędzi i pakietów, którymi można się bawić, a postęp jest nieubłagany. Wydajność tych systemów to być może inna historia, choć nie można zaprzeczyć, że zawsze jest przynajmniej coś nowego do zabawy.

Nieważne całe to podekscytowanie, szum, ciekawość i strach przed utratą, nie można zapomnieć o bezpieczeństwie. Jeśli to nie jest dla ciebie szok, fantastycznie. Przyda się tu jednak przypomnienie, zwłaszcza że technologie uczenia maszynowego są zwykle opracowywane przez naukowców, a nie inżynierów, przynajmniej na etapie rozwoju, i chociaż ci ludzie znają się na takich rzeczach, jak architektura sieci neuronowych, kwantyzacja i dalej… gen, bezpieczeństwo informacji może, co zrozumiałe, nie być ich mocną stroną.

Tworzenie projektu AI nie różni się zbytnio od tworzenia jakiegokolwiek innego oprogramowania. Zwykle będziesz sklejać biblioteki, pakiety, dane szkoleniowe, modele i niestandardowy kod źródłowy, aby wykonywać zadania wnioskowania. Komponenty kodu dostępne w publicznych repozytoriach mogą zawierać ukryte backdoory lub narzędzia do eksfiltracji danych, a wstępnie utworzone modele i zbiory danych mogą zostać zatrute, powodując nieoczekiwane niewłaściwe zachowanie aplikacji.

W rzeczywistości niektóre modele mogą zawierać złośliwe oprogramowanie wykonany jeśli ich zawartość nie jest bezpiecznie deserializowana. Bezpieczeństwo wtyczek ChatGPT ma również chodź pod ścisła kontrola.

Innymi słowy, ataki na łańcuch dostaw, które widzieliśmy w świecie tworzenia oprogramowania, mogą mieć miejsce w obszarze sztucznej inteligencji. Złe pakiety mogą prowadzić do naruszenia bezpieczeństwa stacji roboczych programistów, co prowadzi do szkodliwych włamań do sieci korporacyjnych, a manipulowanie modelami i zbiorami danych szkoleniowych może spowodować, że aplikacje będą błędnie klasyfikować rzeczy, obrażać użytkowników i tak dalej. Biblioteki i modele wyposażone w backdoory lub zawierające złośliwe oprogramowanie, jeśli zostaną włączone do dostarczonego oprogramowania, mogą narazić użytkowników tych aplikacji również na ataki.

Rozwiążą ciekawy problem matematyczny, a następnie go wdrożą i tyle. Nie jest testowany za pomocą pióra, nie ma czerwonego zespołu AI

W odpowiedzi na to powstają start-upy zajmujące się cyberbezpieczeństwem i sztuczną inteligencją, których celem jest walka z tym zagrożeniem; bez wątpienia uznani gracze również mają na to oko, a przynajmniej mamy taką nadzieję. Projekty uczenia maszynowego powinny być audytowane i kontrolowane, testowane pod kątem bezpieczeństwa i oceniane pod kątem bezpieczeństwa.

„[AI] wyrosła ze środowiska akademickiego. Były to głównie projekty badawcze na uniwersytecie lub małe projekty tworzenia oprogramowania, wydzielone głównie przez naukowców lub duże firmy, które po prostu nie zapewniały odpowiedniego bezpieczeństwa” – Tom Bonner, wiceprezes ds. badań w HiddenLayer, jeden powiedział taki startup skupiający się na bezpieczeństwie Rejestr.

„Rozwiążą ciekawy problem matematyczny za pomocą oprogramowania, a następnie go wdrożą i to wszystko. Nie jest testowany za pomocą pióra, nie ma czerwonego zespołu AI, ocen ryzyka ani bezpiecznego cyklu rozwoju. Nagle sztuczna inteligencja i uczenie maszynowe naprawdę się rozwinęły i wszyscy chcą się tym zająć. Wszyscy pobierają wszystkie popularne pakiety oprogramowania, które wyrosły ze środowiska akademickiego, i oto są pełne luk i dziur”.

Łańcuch dostaw sztucznej inteligencji ma wiele punktów wejścia dla przestępców, którzy mogą wykorzystać m.in typosquatting Argumentuje się, że ma to na celu nakłonienie programistów do korzystania ze złośliwych kopii skądinąd legalnych bibliotek, co umożliwi oszustom kradzież wrażliwych danych i danych uwierzytelniających firmowych, porywanie serwerów, na których działa kod i nie tylko. Zabezpieczenia łańcucha dostaw oprogramowania należy zastosować także przy opracowywaniu systemów uczenia maszynowego.

„Jeśli pomyślisz o wykresie kołowym przedstawiającym, jak możesz zostać zhakowany po otwarciu działu sztucznej inteligencji w swojej firmie lub organizacji” – powiedział Dan McInerney, główny badacz bezpieczeństwa sztucznej inteligencji w Protect AI Rejestr, „mała część tego ciasta będzie stanowić ataki oparte na danych wejściowych modelu, o czym wszyscy mówią. Ogromna część będzie atakować łańcuch dostaw – narzędzia, których użyjesz do samodzielnego zbudowania modelu.

Ataki wejściowe są ciekawe sposoby za pomocą których ludzie mogą złamać oprogramowanie AI.

Aby zilustrować potencjalne niebezpieczeństwo, HiddenLayer w zeszłym tygodniu podświetlony jest głęboko przekonany, że istnieje problem bezpieczeństwa związany z usługą internetową udostępnianą przez Hugging Face, która konwertuje modele w niebezpiecznym formacie Pickle na bezpieczniejszy Bezpieczniki, również opracowany przez Hugging Face.

Modele Pickle mogą zawierać złośliwe oprogramowanie i inny dowolny kod, który może zostać po cichu i nieoczekiwanie wykonany po deserializacji, co nie jest dobre. Safetensors stworzono jako bezpieczniejszą alternatywę: modele korzystające z tego formatu nie powinny uruchamiać osadzonego kodu po deserializacji. Dla tych, którzy nie wiedzą, Hugging Face udostępnia setki tysięcy modeli sieci neuronowych, zbiorów danych i fragmentów kodu, które programiści mogą pobrać i wykorzystać za pomocą kilku kliknięć lub poleceń.

Konwerter Safetensors działa w infrastrukturze Hugging Face i może zostać poinstruowany, aby przekonwertować model PyTorch Pickle hostowany przez Hugging Face na kopię w formacie Safetensors. Jednak według HiddenLayer sam proces konwersji online jest podatny na wykonanie dowolnego kodu.

Badacze z HiddenLayer powiedzieli, że odkryli, że mogą przesłać żądanie konwersji dla złośliwego modelu Pickle zawierającego dowolny kod, a podczas procesu transformacji kod ten zostanie wykonany w systemach Hugging Face, umożliwiając komuś rozpoczęcie majsterkowania z botem konwertującym i jego użytkownikami. Jeśli użytkownik przekonwertuje złośliwy model, jego token Przytulającej Twarzy może zostać wyekstrahowany przez ukryty kod i „w efekcie możemy ukraść jego token Przytulającej Twarzy, naruszyć bezpieczeństwo jego repozytorium i wyświetlić wszystkie prywatne repozytoria, zbiory danych i modele, które posiada ten użytkownik dostęp do” – argumentował HiddenLayer.

Ponadto powiedziano nam, że dostęp do danych uwierzytelniających bota konwertującego może zostać uzyskany i ujawniony poprzez kod ukryty w modelu Pickle, co pozwala komuś udawać bota i otwierać żądania ściągnięcia w celu wprowadzenia zmian w innych repozytoriach. Zmiany te, jeśli zostaną zaakceptowane, mogą wprowadzić złośliwą zawartość. Poprosiliśmy Hugging Face o odpowiedź na ustalenia HiddenLayer.

„Jak na ironię, usługa konwersji mająca na celu konwersję na Safetensory sama w sobie była strasznie niepewna” – powiedział nam Bonner z HiddenLayer. „Biorąc pod uwagę poziom dostępu, jaki bot konwersji miał do repozytoriów, w rzeczywistości możliwa była kradzież tokena, którego używał do przesyłania zmian za pośrednictwem innych repozytoriów.

„Więc teoretycznie osoba atakująca mogła wprowadzić dowolną zmianę do dowolnego repozytorium i sprawić, by wyglądało to tak, jakby pochodziła z Hugging Face, a aktualizacja zabezpieczeń mogła go oszukać, aby ją zaakceptował. Ludzie po prostu mieliby w swoich repozytoriach modele z backdoorem lub modele niezabezpieczone i nie wiedzieliby o tym.”

To coś więcej niż teoretyczne zagrożenie: sklep Devops JFrog powiedział, że znalazł złośliwy kod ukryty w 100 modelach hostowanych na Hugging Face.

Tak naprawdę istnieją różne sposoby ukrywania szkodliwych ładunków kodu w modelach, które – w zależności od formatu pliku – są wykonywane podczas ładowania i analizowania sieci neuronowych, umożliwiając złoczyńcom uzyskanie dostępu do ludzkich maszyn. Modele PyTorch i Tensorflow Keras „stanowią największe potencjalne ryzyko wykonania złośliwego kodu, ponieważ są to popularne typy modeli ze znanymi, opublikowanymi technikami wykonywania kodu” – zauważył JFrog.

Niepewne rekomendacje

Programiści korzystający z asystentów sugerujących kod do tworzenia aplikacji również muszą zachować ostrożność, ostrzegł Bonner, w przeciwnym razie mogą włączyć niezabezpieczony kod. Na przykład GitHub Copilot został przeszkolony w zakresie repozytoriów open source i co najmniej 350,000 XNUMX z nich jest potencjalnie podatnych na ataki stary problem bezpieczeństwa z udziałem Pythona i archiwów tar.

Pythona plik tar moduł, jak sama nazwa wskazuje, pomaga programom rozpakowywać archiwa tar. Możliwe jest utworzenie pliku .tar w taki sposób, że gdy plik z archiwum zostanie wyodrębniony przez moduł Pythona, będzie on próbował zastąpić dowolny plik w systemie plików użytkownika. Można to wykorzystać do usunięcia ustawień, zamiany skryptów i spowodowania innych szkód.

Wadę wykryto w 2007 r podświetlony ponownie w 2022 r., co skłoniło ludzi do rozpoczęcia łatania projektów, aby uniknąć takiego wykorzystania. Bonner ubolewał, że te aktualizacje zabezpieczeń mogły nie przedostać się do zbiorów danych używanych do uczenia dużych modeli językowych programowania. „Jeśli więc poprosisz LLM, aby teraz rozpakował plik tar, prawdopodobnie wyplunie ci [stary] podatny na ataki kod”.

Bonner nalegał, aby społeczność sztucznej inteligencji zaczęła wdrażać praktyki bezpieczeństwa łańcucha dostaw, takie jak wymaganie od programistów cyfrowego udowadniania, że ​​są tym, za kogo się podają, podczas wprowadzania zmian w publicznych repozytoriach kodu, co upewniłoby ludzi, że nowe wersje rzeczy zostały stworzone przez legalnych programistów i nie były to zmiany złośliwe. Wymagałoby to od programistów zabezpieczenia wszystkiego, czego używają do uwierzytelniania, aby ktoś inny nie mógł się pod nimi podszywać.

Wszyscy programiści, duzi i mali, powinni przeprowadzać oceny bezpieczeństwa i sprawdzać narzędzia, których używają, a także testować pióro swojego oprogramowania przed jego wdrożeniem.

Próby zwiększenia bezpieczeństwa w łańcuchu dostaw sztucznej inteligencji są trudne, a przy tak dużej liczbie narzędzi i modeli, które powstają i są wydawane na rynek, trudno dotrzymać kroku.

McInerney z Protect AI podkreślił „w takim stanie, w jakim się teraz znajdujemy. Wszędzie rośnie mnóstwo nisko wiszących owoców. Po prostu nie ma wystarczającej siły roboczej, aby to wszystko obejrzeć, ponieważ wszystko dzieje się tak szybko. ®

spot_img

Akademickie VC

Kawiarnia

Najnowsza inteligencja

spot_img