JADEPUFFER: pierwszy agent AI, który samodzielnie przeprowadził pełny atak ransomware
Sysdig udokumentował JADEPUFFER - pierwszego agenta AI, który samodzielnie przeprowadził pełny atak ransomware: od włamania po zaszyfrowanie 1342 elementów bazy danych.
Do tej pory oprogramowanie wymuszające okup (ransomware) zawsze miało człowieka gdzieś w tle - przy klawiaturze albo przynajmniej piszącego skrypt. Zespół Sysdig Threat Research Team (TRT) udokumentował to, co ocenia jako pierwszy potwierdzony przypadek agentowego oprogramowania wymuszającego okup: kompletną operację wymuszenia prowadzoną od początku do końca przez duży model językowy (LLM). Operatora nazwano JADEPUFFER i to nie jest clickbait - to raport z działającego ataku.
JADEPUFFER uzyskał wstępny dostęp do dostępnej z internetu instancji Langflow poprzez CVE-2025-3248 i przeprowadził adaptacyjną, w pełni zautomatyzowaną kampanię, ostatecznie przenosząc się na docelowy serwer i uruchamiając destrukcyjny schemat wymuszenia na produkcyjnym serwerze baz danych ofiary. Nikomu nie trzeba było dawać polecenia „zaszyfruj to”. Agent po prostu… to zrobił.

Dziura w Langflow, o której wszyscy wiedzieli od roku
Langflow to popularny framework otwartych źródeł do budowania aplikacji opartych na LLM i agentowych przepływów pracy. CVE-2025-3248 to luka w uwierzytelnianiu w punkcie końcowym walidacji kodu, która pozwala nieuwierzytelnionemu atakującemu wykonać dowolny kod Python na hoście. Ocena krytyczności? CVSS 9.8.
Co gorsza, ta luka nie była żadną tajemnicą. Błąd naprawiono w Langflow 1.3.0 i dodano do listy znanych eksploatowanych podatności CISA w maju 2025 roku, ale mnóstwo serwerów nigdy nie zostało zaktualizowanych. Langflow jest atrakcyjnym punktem wejścia, bo jego serwery często przechowują klucze API dostawców i dane uwierzytelniające do chmury w swoim środowisku, a często są stawiane szybko bez żadnych kontroli sieciowych. Czyli klasyczne połączenie: cenny łup plus nikt nie zadbał o zabezpieczenia.

Etap pierwszy: rozpoznanie i zbieranie kluczy
Operacja JADEPUFFER rozegrała się na dwóch odrębnych celach: dostępnej z internetu instancji Langflow, która zapewniła wstępny dostęp, oraz oddzielnym produkcyjnym serwerze baz danych, który był prawdziwym celem JADEPUFFER.
Po wejściu przez lukę w Langflow agent zaczął działać metodycznie. Zmapował maszynę, a następnie przeszukał ją w poszukiwaniu sekretów: kluczy API do serwisów AI (OpenAI, Anthropic, DeepSeek, Gemini), danych uwierzytelniających do chmury (chińscy dostawcy jak Alibaba i Tencent, obok AWS, Google i Azure), kluczy do portfeli kryptowalutowych i danych logowania do baz danych. Agent zainstalował też wpis crontab na serwerze Langflow, żeby utrzymać trwały dostęp i kontaktować się z infrastrukturą atakującego co 30 minut.
Etap drugi: 31 sekund do przejęcia bazy produkcyjnej
Prawdziwym celem JADEPUFFER był oddzielny, dostępny z internetu serwer produkcyjny z bazą danych MySQL i usługą konfiguracji Alibaba Nacos. Nacos to otwartych źródeł platforma do wykrywania usług i dynamicznej konfiguracji, rozwinięta przez Alibaba i stosowana w mikrousługach tego dostawcy chmury.
Agent przeprowadził wielowektorowy atak na Nacos, wykorzystując podatność CVE-2021-29441 pozwalającą ominąć uwierzytelnienie i fałszując tokeny przy użyciu powszechnie znanych domyślnych kluczy JWT platformy. Jednocześnie LLM użył dostępu root do bazy danych, żeby wstrzyknąć konto administratora z tylnymi drzwiami bezpośrednio do bazy danych Nacos.
Tu pojawia się moment, który robi największe wrażenie na badaczach bezpieczeństwa. Zautomatyzowane zagrożenie wykazało się maszynową prędkością rozwiązywania problemów podczas tej fazy przejęcia. Gdy pierwsza próba wstawienia konta administratora z tylnymi drzwiami nie powiodła się z powodu błędu ścieżki, agent zdiagnozował problem, napisał skrypt korygujący, usunął wadliwy wpis i pomyślnie zalogował się zaledwie 31 sekund później. Człowiek potrzebowałby na to wielokrotnie więcej czasu - i to przy założeniu, że w ogóle poprawnie zidentyfikowałby przyczynę problemu.
Łącznie ponad 600 odrębnych, celowych ładunków wykonanych w skompresowanym oknie czasowym - dowody wskazują na autonomicznego agenta prowadzącego operację, a nie człowieka-operatora lub stały zestaw narzędzi.
Uwaga ⚠️
Jeśli masz Langflow wystawionego na internet w wersji starszej niż 1.3.0 - zaktualizuj go teraz, zanim skończysz czytać ten artykuł. CVE-2025-3248 z oceną 9.8 CVSS jest aktywnie eksploatowane przez wiele różnych grup, a JADEPUFFER to dopiero przykład tego, do czego ta luka może być użyta.
Zaszyfrowane dane, za które i tak nie odzyskasz kluczy
JADEPUFFER zaszyfrował 1342 elementy konfiguracji Nacos przy użyciu funkcji AES_ENCRYPT MySQL, usunął oryginalne tabele konfiguracji i historii, a następnie stworzył tabelę README_RANSOM zawierającą adres Bitcoin i kontakt Proton Mail.
Był jednak pewien szczegół, który sprawia, że całe żądanie okupu jest groteskowe. Agent wygenerował losowy klucz szyfrowania, wydrukował go raz na ekranie i nigdy go nigdzie nie zapisał ani nie wysłał. Nie ma klucza do przekazania. Ofiara nie może odzyskać danych nawet po zapłaceniu okupu. Notatka z żądaniem twierdzi, że użyto AES-256 - Sysdig odnotowuje, że narzędzie domyślnie stosuje słabszy AES-128, choć efekt jest ten sam.
Na domiar złego, adres Bitcoin wskazany w żądaniu - portfel Bitcoin z żądania pokrywa się z przykładowym adresem używanym w dokumentacji deweloperskiej Bitcoin, co może być artefaktem z danych treningowych LLM zamiast prawdziwym adresem atakującego. Innymi słowy: może nikt nawet nie czeka na przelew.
Protip ✅
Nigdy nie trzymaj kluczy API ani poświadczeń chmury bezpośrednio w zmiennych środowiskowych serwerów dostępnych z internetu. Użyj dedykowanego menedżera sekretów. JADEPUFFER pierwszą rzeczą, którą zrobił po wejściu przez lukę w Langflow, było zebranie właśnie tych danych.
Co ten atak mówi o barierze wejścia do cyberprzestępczości
Sysdig w raporcie wskazuje na kluczowy aspekt JADEPUFFER, który wykracza poza samą technikę. Dyrektor ds. badań zagrożeń Sysdig, Michael Clark, wskazał, że ładunki JADEPUFFER były „samonarracyjne” i „zawierały rozumowanie w języku naturalnym, priorytety celów oraz szczegółowe adnotacje, których ludzcy operatorzy zazwyczaj nie piszą, ale które kod generowany przez LLM tworzy odruchowo”.
Żadna z poszczególnych technik nie była nowatorska ani wyszukana. Godne uwagi jest jednak to, że model AI połączył je w kompletną operację oprogramowania wymuszającego okup przeciwko zaniedbanej infrastrukturze wystawionej na internet. Bariera wejścia do przeprowadzenia oprogramowania wymuszającego okup spadła do tego, ile kosztuje uruchomienie agenta - a jeśli ten agent działa na skradzionych poświadczeniach przez LLMjacking, koszt dla atakującego jest bliski zeru.
Żadna z indywidualnych technik w tej operacji nie była nowa. CVE-2025-3248 został załatany ponad rok przed atakiem. Podatność uwierzytelniania Nacos pochodzi z 2021 roku. Domyślny klucz JWT jest publicznie udokumentowany od 2020 roku. JADEPUFFER pokazuje, że agent AI może połączyć te kroki w kompletną operację wymuszenia przeciwko zaniedbanej infrastrukturze - bez konieczności posiadania przez operatora głębokiej wiedzy w jakimkolwiek pojedynczym kroku.
Sysdig zaleca niezwłoczne zaktualizowanie Langflow, zmianę domyślnego klucza JWT Nacos, niewystawianie baz danych na internet z kontem root oraz stosowanie kontroli ruchu wychodzącego, żeby skompromitowany serwer nie mógł samodzielnie łączyć się z zewnętrznymi celami. Ponieważ atakujący mogą teraz uzbrajać nowe podatności w ciągu godzin, Sysdig argumentuje, że monitorowanie złośliwego zachowania w czasie rzeczywistym ma większe znaczenie niż ściganie się z łataniem. Brzmi jak oczywistość - aż do momentu, gdy twoja produkcyjna baza danych trafia do tabeli README_RANSOM.


