Agent AI Hermes samodzielnie atakuje ministerstwo – przełom w cyberwojnie

Cyberprzestępcy coraz częściej przekazują rutynowe zadania agentom sztucznej inteligencji. I robią to bez nadzoru. Dowód? Operacja wymierzona w Ministerstwo Finansów Tajlandii, którą udało się przechwycić dzięki pozostawionym przez atakujących otwartym katalogom na serwerze. Badacze z Hunt.io oraz dziennikarz Bob Diachenko ujawnili szczegóły działań agenta AI o nazwie Hermes oraz nieznanego wcześniej implantu Hades. Atak odsłania nowy model prowadzenia cyberoperacji – w pełni autonomiczny, z minimalnym udziałem człowieka.

Jak agent AI Hermes przejął kontrolę nad siecią ministerstwa

Od 9 do 13 lipca 2026 roku na jednym z serwerów w Hongkongu (IP: 43.246.208[.]207) pojawiły się trzy otwarte katalogi. Łącznie zawierały 585 plików o objętości 470 MB – kod ataku, skradzione dane uwierzytelniające i, co najważniejsze, logi działania agenta AI. Serwer należał do operatora, który używał go jako platformy stagingowej do przygotowania i koordynacji ataku.

Hermes to otwartoźródłowy agent AI opublikowany w lutym 2026 roku. W lipcu projekt zdobył już ponad 140 000 gwiazdek na GitHubie. Działa jako trwały demon, gromadząc pamięć między sesjami. Kluczowa funkcja – tryb YOLO – pozwala pominąć wszelkie prośby o zatwierdzenie potencjalnie niebezpiecznych poleceń. I właśnie w tym trybie agent został uruchomiony przeciwko tajskiemu ministerstwu.

Samodzielne rozpoznanie i eskalacja uprawnień

Logi z katalogów ujawniają, że Hermes bez interwencji człowieka wykonywał następujące zadania:

  • Skanował hosty w sieci ministerstwa w poszukiwaniu podatności na eskalację uprawnień
  • Uruchamiał narzędzie LinPEAS do automatycznej analizy konfiguracji Linuksa
  • Przeglądał pliki i katalogi, w tym zawartość katalogu webowego Biura Stałego Sekretarza Finansów
  • Wyszukiwał binaria z ustawionym bitem SUID/SGID
  • Usiłował wykonać polecenia, które generowały więcej danych, niż serwer był w stanie przetworzyć – co skutkowało błędami przerwania potoku

Agent nie tylko zbierał informacje, ale także kopiował pliki – w logach odnotowano rekurencyjne przeszukiwanie katalogów zawierających dokumenty Office, formularze ocen i akta osobowe sięgające 2012 roku. Nie ma jednak dowodów na eksfiltrację tych danych.

Niestandardowe exploity na miarę kampanii

Do ataku wykorzystano trzy podatności z 2026 roku, które agent miał za zadanie sprawdzić:

  • DirtyClone (CVE-2026-43503) – lokalna eskalacja uprawnień w jądrze Linuksa
  • Copy Fail (CVE-2026-31431) – podatność w module algif_aead umożliwiająca nadpisanie binariów uprzywilejowanych
  • Dirty Frag (CVE-2026-43284/CVE-2026-43500) – błąd w mechanizmie podstron pozwalający na uzyskanie dostępu root

To pokazuje, że operator starannie dobrał zestaw exploitów do konkretnego środowiska – co potwierdza tezę o długotrwałym przygotowaniu operacji.

Implant Hades – nowe narzędzie w arsenale atakujących

W katalogu z 10 lipca odkryto 62 pliki – skompilowane binaria dla Windows i Linuksa. Większość nosiła nazwy podszywające się pod legalne procesy systemowe: ctfmon, csrss, conhost, MicrosoftEdgeUpdate po stronie Windows, a po linuxowej – kworker, multipathd, accounts-daemon. Część plików nosiła jednak jawną nazwę projektu: hades_linux_amd64 i hades_windows_amd64.

Analiza statyczna i dynamiczna dwóch próbek – jednej dla Windows i jednej dla Linuksa – potwierdziła, że pochodzą one z tego samego kodu źródłowego. Hades komunikuje się przez HTTPS, używając ścieżek URI imitujących zasoby statyczne:

  • /assets/app.min.js – logowanie (check-in)
  • /assets/vendor.js – pobieranie zadań od C2
  • /assets/main.js – przesyłanie wyników

Dane są szyfrowane algorytmem AES-256-GCM z kluczem hardkodowanym dla każdej kompilacji. Implant zawiera mechanizmy operacyjne – datę wygaśnięcia (HADES_KILLDATE) oraz harmonogram pracy, który usypia beacon poza skonfigurowanym oknem, aby uniknąć wykrycia.

Różnice między wersjami

Wersja Windows oferuje dodatkowe funkcje: wykonanie zrzutu ekranu przy użyciu GDI oraz refleksyjne ładowanie PE przez proces hollowing do svchost.exe. Natomiast wersja Linuxowa wykorzystuje standardowy PTY do interaktywnej powłoki. Obie wspierają SOCKS proxy oraz transfer plików z możliwością wznawiania. Persystencję zapewniono przez klucz Rejestru i zadanie zaplanowane (Windows) oraz cron (Linux).

W kodzie znajdują się hardkodowane adresy C2 – jeszcze bardziej łączą one infrastrukturę ataku: plik Windows (dwm_33b7.exe) komunikował się z serwerem stagingowym na porcie 443, a wersja Linux (multipathd_04d0) z innym hostem w Malezji na porcie 12443. To potwierdza, że atakujący kontrolowali co najmniej cztery serwery w różnych lokalizacjach.

Eksploatacja Hadoop, GlassFish i skradzione sesje

Operator nie ograniczył się do jednego wektora ataku. W katalogach znaleziono narzędzia celujące w kilka systemów wewnętrznych ministerstwa:

Atak na HiveServer2

Głównym celem był klaster Apache Hadoop. W katalogu z 13 lipca znajdował się skrypt hive_rce_py2.py, który otwierał surowy socket do wewnętrznego hosta na porcie 10000 i uwierzytelniał się przez SASL PLAIN z domyślnymi danymi. Domyślny tryb uwierzytelniania HiveServer2 to NONE – akceptuje każde poświadczenie. Skrypt rejestrował złośliwą funkcję Java (UDF) zapakowaną w HiveCmd.jar, która po wykonaniu poleceń przez Hive SQL odsyłała wyniki przez WebHDFS na drugi wewnętrzny host.

Dodatkowo znaleziono plik ambari_cmd.json, który nazywał konkretny wewnętrzny DataNode po nazwie hosta – to dowód, że atakujący mieli szczegółową mapę sieci ministerstwa.

GlassFish i webshella

W katalogu z 9 lipca znajdowały się skrypty Node.js (oznaczone prefiksem gf_) do ataku na konsolę administracyjną serwera aplikacji GlassFish. Używały one Puppeteer do uruchomienia headless Chrome przez SOCKS5 proxy, logowały się domyślnymi danymi i wdrażały plik WAR. Jeden z nich, gf_redeploy.js, usuwał istniejącą aplikację shell i wgrywał w jej miejsce itcenter-docs.war – podszywający się pod dokumentację IT. Kod shellowy w obu wersjach był identyczny i pozwalał na wykonanie dowolnych poleceń przez parametr x.

Dodatkowo na serwerze WWW ministerstwa umieszczono webshella PHP udającego plik cache’a systemd: /storage/Counter/nine/.journald-cache.php. Skrypt obsługiwał wykonywanie poleceń, pobieranie plików i rekurencyjne przeszukiwanie.

Skradzione sesje i testowanie haseł

W katalogach znaleziono pliki cookie z sesjami do panelu administracyjnego komitetu ICT ministerstwa (PHPSESSID, XSRF-TOKEN, wartości Laravel). Nie potwierdzono, czy te sesje były uwierzytelnione. Osobny plik alf_cookie.txt zawierał sesję do platformy Alfresco. Skrypty Perl i Python testowały logowanie do serwerów pocztowych ministerstwa przy użyciu haseł zbudowanych na podstawie wewnętrznych skrótów.

Znaleziono także kod eksploitów do znanych podatności: CVE-2021-4034 (PwnKit), CVE-2021-3156 (sudo) oraz CVE-2017-7269 (IIS WebDAV) – wszystkie gotowe do użycia.

Wnioski i środki zaradcze

Atak na tajskie ministerstwo pokazuje, że autonomiczne agenty AI nie są już futurystyczną koncepcją, ale realnym narzędziem atakujących. Hermes działał bez nadzoru przez kilka dni, samodzielnie mapując sieć i wybierając cele. Operator jedynie dostarczył narzędzia i obserwował wyniki.

Specjaliści z Hunt.io podkreślają, że kluczowe znaczenie ma znalezienie otwartych katalogów, które ujawniły całą operację. Bez tego zdarzenie pozostałoby niewykryte. Wskazują również na konkretne punkty, w których obrona mogłaby powstrzymać atak:

  • Sprawdzenie trybu uwierzytelniania HiveServer2 – domyślny NONE należy zmienić
  • Wymuszenie listy blokowanej UDF w HiveServer2 (dokładnie dlatego istnieje, że Hive może wykonywać dowolny kod Java)
  • Regularne skanowanie katalogów webowych w poszukiwaniu plików PHP z wiodącą kropką
  • Aktualizacja sudo do wersji 1.9.5p2 lub nowszej oraz sprawdzenie wersji polkita
  • Wyłączenie WebDAV na IIS 6.0 lub całkowita migracja z tej platformy
  • Monitorowanie ruchu z serwerów WWW do wewnętrznych portów usług (10000, 50070)
  • Zmiana domyślnych haseł na konsolach administracyjnych GlassFish

Atakujący pozostawił po sobie jednak wiele śladów. Unikalny odcisk palca HTTP agenta Hermes (nagłówek Server: HermesWebUI oraz konkretna polityka CSP) pozwala na masowe wyszukiwanie odsłoniętych paneli. W bazie Hunt.io znaleziono prawie 5900 takich zdarzeń w ciągu ostatniego miesiąca. To oznacza, że wiele instancji Hermesa jest skonfigurowanych niebezpiecznie, a ich logi dostępne publicznie.

Infrastruktura powiązana z atakiem – serwery w Hongkongu, Malezji i drugi węzeł w Hongkongu, a także chińskojęzyczne elementy konfiguracji (hasło „Leishen” – „bóg piorunów”) – wskazują na operatora posługującego się językiem chińskim. Badacze oceniają to powiązanie z niską lub średnią pewnością, ale nie wykluczają dalszych powiązań.

To, co dziś jest incydentem w Tajlandii, jutro może powtórzyć się w każdym kraju. Agent AI wykonujący za człowieka najtrudniejszą część pracy – rozpoznanie, eskalację uprawnień, a w przyszłości być może także samo wnikanie – zmienia reguły gry w cyberbezpieczeństwie. Operator nie musi już spędzać godzin na ręcznym skanowaniu. Hermes zrobił to za niego, nie prosząc o pozwolenie.

Źródło