Wielomilionowa strategia obrony przedsiębiorstwa często wali się pod ciężarem jednego nieuwierzytelnionego kontenera. Widziałem to na własne oczy w zeszłym kwartale podczas audytu laboratorium badawczego, które spędziło sześć miesięcy na utwardzaniu swoich klastrów Kubernetes, ale zostawiło instancję ComfyUI otwartą na weekendowe demo. Ten jeden wystawiony port 8188 wystarczył, aby obejść każdą politykę sieciową, którą wdrożyli. Botnet NadMesh, odkryty na początku lipca 2026 roku, żyje dokładnie w tej luce między korporacyjnymi standardami bezpieczeństwa a szaleńczym tempem wdrażania AI.
NadMesh to rodzina złośliwego oprogramowania oparta na języku Go, która priorytetowo traktuje tożsamość nad surową mocą obliczeniową. Podczas gdy poprzednie botnety skupiały się na przejmowaniu procesorów graficznych (GPU) do kopania Monero, operatorzy stojący za NadMesh rozumieją, że skradziony sekret AWS jest cenniejszy niż kilka tysięcy haszy na sekundę. XLab firmy QiAnXin opublikował w piątek raport szczegółowo opisujący, jak ten botnet poluje na generatory obrazów, lokalne środowiska uruchomieniowe modeli i kreatory przepływów pracy, które zespoły inżynieryjne stawiają szybko, a zabezpieczają firewallem zbyt późno.
W nowoczesnym wdrażaniu AI istnieje fundamentalny paradoks. Organizacje inwestują ogromne środki w role IAM w chmurze i szyfrowane magazyny danych, a jednocześnie pozwalają programistom na uruchamianie nieuwierzytelnionych narzędzi, takich jak Ollama czy n8n, bezpośrednio w publicznym internecie. NadMesh wykorzystuje ten brak tarcia. Botnet używa żniwiarza Shodan, aby zasilać swoją kolejkę skanowania celami z uruchomionymi usługami ComfyUI, Open WebUI, Langflow i Gradio. Są to narzędzia nowoczesnego stosu AI, które rzadko są fabrycznie zabezpieczone.
Niedawno analizowałem zapis ruchu, w którym programista wdrożył notebook Marimo, aby przetestować nowy model. Zignorował ostrzeżenia bezpieczeństwa, ponieważ potrzebował go tylko na godzinę. W ciągu dwudziestu minut bot NadMesh zeskanował adres IP, zidentyfikował usługę i podjął próbę ataku. Taka prędkość jest możliwa, ponieważ botnet traktuje internet jak bazę danych z możliwością przeszukiwania, a nie jak rozległe terytorium do błądzenia. Podsieci, które dają udane trafienia, są ponownie sprawdzane co pięć minut. Jeśli cel zostanie oznaczony jako niebezpieczny, botnet wraca co piętnaście minut, aby w pierwszej kolejności przeprowadzić skanowanie o wysokim priorytecie portów specyficznych dla AI.
Logika skanowania jest uporczywa. Pełny przegląd przywraca każdy adres IP oznaczony jako niebezpieczny w ciągu ostatnich siedmiu dni z powrotem na górę kolejki. Autor wyraźnie wie, że badacze i honeypoty obserwują sieć. Jeśli cel pochłonie dziesięć prób wdrożenia bez zwrócenia wyniku, botnet automatycznie wpisuje go na czarną listę. Zapobiega to marnowaniu zasobów floty na przynęty. Gdy kolejka wysycha, boty generują losową podsieć /24 i kontynuują polowanie.
Do drugiego tygodnia lipca liczba unikalnych adresów IP źródłowych wypychających NadMesh wzrosła pionowo. XLab odnotował skok z niemal zera do około 139 dziennie. Własny panel kontrolny operatora, przejęty 10 lipca, wykazuje zdobycz w postaci 3 811 unikalnych kluczy AWS. Ta rozbieżność między małą liczbą aktywnych botów a ogromną ilością skradzionych poświadczeń sugeruje wysoce wydajny silnik automatyzacji. Operator nie potrzebuje potężnego botnetu, jeśli każda infekcja przynosi klucz główny do środowiska chmurowego.
Model Context Protocol (MCP) jest głównym wektorem na liście priorytetów kontrolera. MCP to standard, który pozwala modelom AI wywoływać zewnętrzne narzędzia i uzyskiwać dostęp do źródeł danych. Z założenia pierwsza specyfikacja MCP umieściła uwierzytelnianie poza rdzeniem protokołu. Przepływ autoryzacji istnieje od marca 2025 roku, ale specyfikacja opisuje go jako opcjonalny. Wielu programistów pomija go, aby zaoszczędzić czas podczas konfiguracji.
Censys naliczył ponad 21 000 dostępnych usług MCP do maja 2026 roku. Około 90 z nich reklamowało narzędzie o nazwie execute_command. To narzędzie jest dokładnie tym wywołaniem, które znajduje się na szczycie tabeli exploitów NadMesh. Botnet używa JSON-RPC tools/call, aby wyzwolić to polecenie. Z tą aktywnością nie jest powiązany żaden numer CVE, ponieważ oprogramowanie działa dokładnie tak, jak zostało skonfigurowane. Problemem nie jest błąd w kodzie. Problemem jest protokół, który domyślnie pozwala na nieuwierzytelnione wykonywanie poleceń.
Gdy bot skutecznie skompromituje hosta, nie instaluje tylko koparki. Kataloguje on środowisko. Kanał informacyjny za panelem kontrolnym NadMesh pokazuje inwentaryzację modeli DeepSeek, GLM i Kimi. Inwentaryzacje te są często oznaczane identyfikatorem „:cloud”. Wskazuje to, że bot patrzy poza lokalną maszynę i identyfikuje, do których zdalnych usług AI host ma dostęp.
To, co bot wysyła do bazy, to tożsamość organizacji. Wyciąga klucze chmurowe ze zmiennych środowiskowych, wydobywa tokeny kont serwisowych Kubernetes i przeszukuje zawartość ~/.aws/config. Celuje również w pliki .env oraz ~/.docker/config.json. Badacze jasno określają motyw. Operatorowi zależy na poświadczeniach chmurowych i uprawnieniach do klastrów, a nie na samym hoście. W nowoczesnej architekturze host jest towarem jednorazowym, ale poświadczenia zapewniają trwały dostęp do płaszczyzny danych.
Usunięcie NadMesh ze skompromitowanego systemu jest trudne ze względu na redundantne mechanizmy trwałości. Agent utrzymuje trzy oddzielne sposoby na przetrwanie restartu. Jeśli administrator znajdzie i usunie jeden wpis, pozostałe dwa pozostają, aby pobrać świeżą kopię złośliwego oprogramowania. To jak próba ugaszenia pożaru, który ma trzy niezależne źródła paliwa. Każda kompilacja malware przechodzi również przez zaciemnianie Garble i pakowanie UPX z losowym wypełnieniem. Oznacza to, że każdy agent ma unikalny skrót pliku (hash). Zespół ds. bezpieczeństwa nie może polegać na pojedynczym skrócie, aby znaleźć infekcje w swojej sieci.
Obecnie w sieci działa pięć wersji kompilacji botnetu. Najpopularniejszą jest 33.8-GO-TITAN. Operator używa punktu końcowego typu „canary”, aby testować nowe kompilacje na małym wycinku floty przed szerokim wydaniem. Jest to poziom dojrzałości DevOps, który odzwierciedla legalne firmy programistyczne, w które celują. Sukces operatora jest oceniany na podstawie listy dopuszczeń wyników, która wyklucza zbiory z Ollama i AWS. Sugeruje to, że tablica wyników na panelu kontrolnym pokazuje tylko ułamek całej operacji.
Większość ataków NadMesh jest wymierzona w funkcje administracyjne pozostawione jako wywoływalne w publicznym internecie. Obejmuje to otwarte interfejsy API Docker na porcie 2375, konsole skryptowe Jenkins oraz nieuwierzytelnione instancje Redis. Żadna poprawka nie zamknie tych dziur, ponieważ wynikają one z wyborów konfiguracyjnych. Aby zabezpieczyć swoje środowisko, musisz przenieść te usługi za uwierzytelnianie lub całkowicie wycofać je z publicznego internetu. Priorytetowo potraktuj cztery porty, które zadanie ponownego skanowania NadMesh stawia na pierwszym miejscu: 8188 (ComfyUI), 11434 (Ollama), 7860 (Gradio) i 5678 (n8n).
Istnieje również krótka lista podatności wymagających natychmiastowego załatania. CVE-2026-39987 to błąd zdalnego wykonywania kodu przed uwierzytelnieniem w notebookach Marimo. CISA dodała go do katalogu znanych eksploatowanych podatności w kwietniu. Krytyczny jest również CVE-2026-41176, ponieważ pozwala nieuwierzytelnionym rozmówcom przełączyć przełącznik uwierzytelniania na serwerach rclone RC. Ponieważ konfiguracje rclone często zawierają poświadczenia chmurowe, jest to cel o wysokim priorytecie dla NadMesh.
Jeśli znajdziesz wskaźniki kompromitacji, natychmiast odizoluj hosta. Szukaj plików trwałości w /etc/cron.d/.sys_monitor oraz ukrytych plików w /dev/shm/.a lub /tmp/.a. Unieważnienie poświadczeń to jedyna bezpieczna droga naprzód. Jeśli host zostanie skompromitowany, załóż, że każdy klucz AWS, token klastra i plik .env, którego dotknął, jest teraz w rękach operatora. Rotacja kluczy nie wystarczy, jeśli złośliwe oprogramowanie wciąż jest obecne, aby ukraść nowe. Musisz usunąć mechanizmy trwałości przed wydaniem zamienników. Przejrzyj logi pod kątem aktywności z adresu IP 209.99.186[.]235 lub połączeń z domeną cdnorigin[.]net. Celem jest zweryfikowanie, gdzie skradzione tożsamości zostały użyte, gdy były aktywne.
Źródła: NIST Cybersecurity Framework, MITRE ATT&CK (Resource Development, Initial Access), QiAnXin XLab NadMesh Report, Censys MCP Census 2026.
Zastrzeżenie: Niniejszy artykuł służy wyłącznie celom informacyjnym i edukacyjnym i nie zastępuje profesjonalnego audytu cyberbezpieczeństwa ani usługi reagowania na incydenty.



Nasze kompleksowe, szyfrowane rozwiązanie do poczty e-mail i przechowywania danych w chmurze zapewnia najpotężniejsze środki bezpiecznej wymiany danych, zapewniając bezpieczeństwo i prywatność danych.
/ Utwórz bezpłatne konto