Microsoft Threat Intelligence poinformował 5 listopada 2026 r., że od sierpnia obserwował agentów wykorzystujących framework ARTEX do wyszukiwania ujawnionych poświadczeń w publicznych repozytoriach GitHub. Według Microsoftu prawidłowe dane logowania aplikacji umożliwiły później dostęp do usług chmurowych; w jednym zaobserwowanym przypadku od skanowania GitHuba do wykradzenia danych z Azure Key Vault minęło pięć minut. Powiązane logowania tożsamości aplikacji Microsoft odnotował najwcześniej 28 października.

Jak ARTEX łączył publiczne sekrety z dostępem do chmury

Zapytania opisywane przez Microsoft łączyły nazwy organizacji z hasłami związanymi z sekretami oraz dostawcami usług chmurowych i AI. Po znalezieniu danych uwierzytelniających agenci mieli analizować wyniki i podejmować kolejne działania z użyciem prawidłowych poświadczeń aplikacji. Microsoft opisał logowania tzw. principalów usług, czyli tożsamości używanych przez aplikacje, w dziesiątkach aplikacji i wielu tenantach.

W jednym z opisanych przypadków skompromitowane poświadczenie aplikacji wielodostępnej, przejęte u jej dostawcy, miało umożliwić dostęp do dalszych tenantów. Microsoft wymienił też poszukiwanie kluczy kont magazynowych, danych z ustawień App Service, ciągów połączeń oraz poświadczeń Azure Kubernetes Service. Dalsza aktywność obejmowała między innymi Azure Key Vault, Azure Storage, usługi Azure AI i Azure DevOps. W SharePoint i OneDrive odnotowano pobieranie plików oraz dostęp do elementów skrzynek pocztowych.

To konkretny przykład szerszego ryzyka, które opisaliśmy wcześniej w tekście o autonomicznych agentach AI. Szczegóły kampanii i zalecenia obronne Microsoft opisał w raporcie Microsoft Threat Intelligence.

Usunięcie ujawnionego pliku nie unieważnia poświadczenia. Trzeba je unieważnić lub zmienić, a potem sprawdzić, jak było używane.

Trzy ponowienia żądań API w Azure

Microsoft opisał trzy osobne sekwencje, w których po nieudanym żądaniu następowała zmieniona próba zakończona kodem HTTP 200. Każde pierwsze żądanie zwróciło HTTP 400.

ŻądanieOdstęp do ponowieniaWynik pierwszego żądaniaWynik ponowienia
Metadane Azure Key VaultOkoło 28 sekundHTTP 400HTTP 200
Reguła zapory Azure SQLOkoło 60 sekundHTTP 400HTTP 200
Zapytanie Application InsightsOkoło 80 sekundHTTP 400HTTP 200

W przypadku Key Vault ponowiona operacja używała wersji ARM API 2023-07-01. Odstępy dotyczą oddzielnych żądań, a nie jednego łącznego czasu działania.

Jakie działania obronne zaleca Microsoft

Microsoft zaleca natychmiast unieważnić lub obrócić ujawnione poświadczenia i przeanalizować ich wcześniejsze użycie. Zespoły powinny też usunąć sekrety, certyfikaty lub poświadczenia federacyjne, które mógł dodać napastnik, oraz zmienić sekrety przechowywane w dostępnych dla zaatakowanej aplikacji magazynach Key Vault. Uprawnienia principalów usług warto ograniczyć do minimum potrzebnego do ich zadań.

Do sprawdzenia Microsoft wskazuje między innymi logi logowań principalów usług i logowań nieinteraktywnych, Azure Activity, diagnostykę Key Vault i Storage, dzienniki audytowe Entra ID oraz Microsoft 365. Zaleca również analizować wzorce zachowań, nie tylko adresy IP: na przykład adres logujący się do co najmniej trzech principalów usług z mieszanymi wynikami albo aplikację żądającą tokenów dla różnych usług chmurowych w krótkim czasie. Microsoft zaznacza, że adresy IP i identyfikatory klienta mogą się zmieniać.

Wskazanie adresu 199.19.77[.]84 w regule Conditional Access dla tożsamości obciążeń wymaga licencji Workload ID Premium i dotyczy pojedynczych tenantów, w których zarejestrowano aplikację wielodostępną. Microsoft zaleca blokować dokładny adres, a nie cały ASN. Usunięcie poświadczenia nie unieważnia już wydanych tokenów, które pozostają ważne do upływu terminu ważności.

Osobny przypadek: sekrety w konfiguracji Claude Code

Anglojęzyczny materiał SavvyNik o osobnym przypadku Claude Code i sekretach zapisanych w lokalnych plikach konfiguracyjnych.

Claude Code nie był częścią kampanii ARTEX. W anglojęzycznym materiale SavvyNik omawiał odrębny raport Apiiro: polecenia zatwierdzone opcją „Don't Ask Again” mogły zapisywać hasła i klucze API w lokalnych plikach konfiguracyjnych, które następnie trafiały do publicznych repozytoriów GitHub. SavvyNik przypisał Apiiro odkrycie ponad 1 100 publicznych kopii konfiguracji zawierających co najmniej jeden sekret oraz 2 539 rzeczywistych sekretów w około 2 000 repozytoriów.