14:09
19/3/2024

Wtyczki do ChatGPT mogą być złośliwe. Miewają też błędy, otwierające przestępcom drogę do kradzieży wrażliwych danych. To więcej niż ciekawostka. Wraz z rozwojem ekosystemu ChatGPT chyba będziemy mieć powtórkę z tego, co działo się kiedy zaczęły powstawać rozszerzenia do przeglądarek. Różnica jest taka, że udany atak wymaga wiedzy technicznej, ale już ekstrakcja danych od ofiary może nastąpić poprzez zwykłą rozmowę z ChatemGPT — a to potrafi każdy.

Wtyczki ChatGPT

ChatGPT już dawno nie jest tylko “czatem”. To także produkty towarzyszące, w tym wtyczki (plugins), dodatkowe funkcje, które mogą być rozwijane także przez zewnętrznych deweloperów. Mogę one np. integrować ChatGPT z wyszukiwarkami, usługami e-commerce, źródłami wiedzy, repozytoriami kodu itd. Bywają przydatne do konkretnych działań jak np. analiza sentymentu wypowiedzi albo moderacja treści. Dzięki wtyczkom, ChatGPT staje się narzędziem korzystającym z aktualnych źródeł informacji (aktualniejszych niż stan jego wiedzy) a to bardzo duża zaleta. Niestety, jest też ciemna strona tych fascynujących możliwości.

Firma Salt-Labs postanowiła sprawdzić bezpieczeństwo wtyczek ChatGPT. Zanim omówimy szczegóły, podkreślmy jedną rzecz: badacze sprawdzili konkretne wtyczki z ekosystemu ChatGPT, ale podobne ryzyka będą dotyczyć innych wtyczek i innych “ekosystemów AI”.

OpenAuth i ChatGPT

Pierwszym namierzony problem dotyczy możliwości tworzenia złośliwych wtyczek w ogóle. No cóż… to kwestia czasu, zważywszy na to jak bardzo złośliwymi dodatkami są już teraz zaśmiecone ekosystemy rozszerzeń przeglądarek lub aplikacji mobilnych).

Wedle badaczy, w przypadku ChataGPT możliwe jest nadużycie uwierzytelniania OAuth w celu zainstalowania tych wtyczek u użytkowników-ofiar bez ich wiedzy. Taki atak wymaga wysłania ofierze linka, który zawiera token atakującego, co umożliwia zalogowanie ofiary… jako atakującego mimo, że instalacja wtyczki nastąpi na koncie ofiary.

ChatGpt nie sprawdza należycie, czy to rzeczywiście użytkownik rozpoczął instalację wtyczki. Wtyczka zaś, jeśli jest złośliwa, może mieć dostęp do informacji użytkownika-ofiary, w tym jego danych uwierzytelniających.

Możliwe przejęcie konta

Drugi problem jest bardzo poważny, bo dotyczy możliwego przejęcia konta po stronie zewnętrznego serwisu (np. na Githubie) bez żadnej interakcji z użytkownikiem. W tym przypadku błąd tkwił we frameworku PluginLab, który służy do tworzenia wtyczek dla ChatGPT (za jego pomocą stworzono takie wtyczki jak ScholarAI, ChatOCR, czy KeyMateAI). Badacze w swoich testach skorzystali z wtyczki AskTheCode, która wymaga dostępu właśnie do repozytoriów Githuba. Na dowód, że zagrożenie jest realne, badacze pokazali zrzut ekranowy będący dowodem na uzyskanie dostępu prywatnego repozytorium z perspektywy atakującego.

Pełen opis błędu wykrytego w PluginLab znajdziecie w artykule Salt-Labs. W skrócie: badacze znaleźli endpoint, który pozwalał na ustalenie istotnego identyfikatora użytkownika (tzw. memberID) na podstawie samego e-maila. Tego endpointa wystaczyło użyć raz, bo okazało się, że memberID to po prostu skrót SHA1 adresu e-mail. Mając memberID danego użytkownika można przejść do ChatGPT i zainstalować wtyczkę “AskTheCode” na swoim koncie, ale z identyfikatorem ofiary(!). Od tego momentu atakujący ma dostęp do repozytoriów ofiary. Na czym polega wykonanie ataku?

Wystarczy napisać np. „Podaj mi listę wszystkich prywatnych repozytoriów”, a ChatGPT prześle tę wiadomość do AskTheCode (po stronie ofiary) i połączy się z repozytorium GitHuba ofiary, pobierając dane, o które prosi atakujący.

Twórcy PluginLab.AI zostali powiadomieni o problemie jeszcze w ubiegłym roku. Powiadomiono również użytkowników. Niestety problem podobny do opisanego powyżej znalazł się w innych wtyczkach, m.in. firmy Kesem.AI i — jak twierdzą badacze — zapewne wielu innych. Właściwie wszystko sprowadza się do tego, aby deweloperzy zadbali o staranne wdrożenie OAuth. Zdaniem Salt-Labs dokumentacja Open AI uwzględnia ten problem, ale bez należytego zwrócenia uwagi na kwestie bezpieczeństwa (i tu również jest pole do poprawy).

GPT-y nowym wyzwaniem

Fani ChatGPT zapewne wiedzą, że od niedawna można tworzyć “customowe” wersje ChataGPT, w których kwestie bezpieczeństwa zaadresowano inaczej niż w przypadku wtyczek. O ile lepiej? To niebawem się okaże, bo Badacze Salt Labs zapowiedzieli kolejny artykuł, który poruszyć ma nowe problemy z ekosystemem “dodatków” do ChataGPT.

Co robić, jak żyć?

Integracja z jakimkolwiek serwisem poprzez OAuth to nie jest proste zadanie. Zapewnienie kompleksowego bezpieczeństwa swoim aplikacjom webowym wymaga szerokiego spojrzenia i uwzględnienia aspektów, o których wielu programistów po prostu nie myśli, kiedy tworzą swój kod. Jak namierzyć te wszystkie błędy? Jak tworzyć aplikacje, żeby były bezpieczne, nawet jeśli w kodzie pojawią się błędy? Tego uczymy na pełnym praktycznych labów szkoleniu z Atakowania i Ochrony Webaplikacji, które jest niesamowicie wysoko oceniane przez uczestników. Rzućcie okiem na opinie z ostatniego terminu tego szkolenia:

A gdybyście sami chcieli się wybrać, to oto lista terminów:

ZDALNIE: 21-22 maja 2024r. — UWAGA: zostały tylko 3 wolne miejsca
Ostatnio ktoś zarejestrował się 23 kwietnia 2024r. → zarejestruj się na to szkolenie

    2399 PLN netto (do 3 maja)
    2699 PLN netto (od 4 maja)

Warszawa: 27-28 maja 2024r. — zostało 5 wolnych miejsc
Ostatnio ktoś zarejestrował się 23 kwietnia 2024r. → zarejestruj się na to szkolenie

    2399 PLN netto (do 3 maja)
    2699 PLN netto (od 4 maja)

Poznań: 12-13 czerwca 2024r. — zostało 7 wolnych miejsc
Ostatnio ktoś zarejestrował się 18 kwietnia 2024r. → zarejestruj się na to szkolenie

    2399 PLN netto (do 10 maja)
    2699 PLN netto (od 11 maja)

Gdańsk: 17-18 czerwca 2024r. — zostało 8 wolnych miejsc
Ostatnio ktoś zarejestrował się 22 kwietnia 2024r. → zarejestruj się na to szkolenie

    2399 PLN netto (do 10 maja)
    2699 PLN netto (od 11 maja)

Kraków: 15-16 lipca 2024r. — zostało 9 wolnych miejsc
Ostatnio ktoś zarejestrował się 27 kwietnia 2024r. → zarejestruj się na to szkolenie

    2399 PLN netto (do 10 maja)
    2699 PLN netto (od 11 maja)

Dowiedz się, jak zabezpieczyć swoje dane i pieniądze przed cyberprzestępcami. Wpadnij na nasz kultowy ~3 godzinny wykład pt. "Jak nie dać się zhackować?" i poznaj kilkadziesiąt praktycznych i przede wszystkim prostych do zastosowania porad, które skutecznie podniosą Twoje bezpieczeństwo i pomogą ochronić przed atakami Twoich najbliższych. Uczestnicy tego wykładu oceniają go na: 9,34/10!

Na ten wykład powinien przyjść każdy, kto korzysta z internetu na smartfonie lub komputerze, prywatnie albo służbowo. Wykład prowadzimy prostym językiem, wiec zrozumie go każdy, także osoby spoza branży IT. Dlatego na wykład możesz spokojnie przyjść ze swoimi rodzicami lub mniej technicznymih znajomych. W najbliższych tygodniach będziemy w poniższych miastach:

Zobacz pełen opis wykładu klikając tutaj lub kup bilet na wykład klikając tu.

Rozpocznij dyskusję, bądź pierwszy... ;-)

Dodaj komentarz

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: