gik|iewicz

szukaj
Luka w GitHub Claude Code pozwala kraść tokeny CI/CD

Luka w GitHub Claude Code pozwala kraść tokeny CI/CD

Microsoft zidentyfikował lukę bezpieczeństwa w akcji GitHub Claude Code, która pozwala atakującym na kradzież poświadczeń CI/CD. Badacze wykazali, że ataki typu prompt injection mogą manipulować agentami AI kodującymi, uzyskując dostęp do wrażliwych tokenów przechowywanych w potokach programistycznych.

TL;DR: Microsoft opublikował raport ujawniający lukę w akcji GitHub Claude Code. Atakujący mogą wykorzystać prompt injection do manipulowania agentami AI i kradzieży poświadczeń z potoków CI/CD. Badacze z Decrypt potwierdzili, że luka pozwala na dostęp do wrażliwych danych w środowiskach deweloperskich.

Jak działa luka w Claude Code na GitHub?

Luka w akcji GitHub Claude Code polega na podatności na ataki typu prompt injection, które pozwalają atakującym na manipulowanie zachowaniem agenta AI. Badacze z Microsoftu wykazali, że odpowiednio spreparowane instrukcje mogą zmusić Claude Code do ujawnienia poświadczeń przechowywanych w zmiennych środowiskowych potoków CI/CD. Atak wykorzystuje fakt, że agent AI ma dostęp do kontekstu wykonania, w tym do tokenów autoryzacyjnych.

Zgodnie z raportem opisanym na Let’s Data Science, luka polega na tym, że akcja GitHub Claude Code może zostać zmanipulowana poprzez złośliwe prompty osadzone w kodzie repozytorium. Gdy agent przetwarza takie instrukcje, może nieświadomie przekazać poświadczenia do logów lub zewnętrznych serwerów kontrolowanych przez atakującego.

Mechanizm ataku opiera się na kilku krokach. Atakujący musi najpierw umieścić złośliwy prompt w kodzie repozytorium, na przykład w komentarzach lub plikach konfiguracyjnych. Następnie, gdy Claude Code przetwarza ten kod jako część swojego zadania, złośliwa instrukcja może nadpisać oryginalne polecenia agenta. W rezultacie agent wykonuje działania, które ujawniają poświadczenia.

Podobne wektory ataku opisano wcześniej w kontekście frameworków agentów AI, gdzie prompty stawały się powłokami umożliwiającymi zdalne wykonanie kodu.

Dlaczego agenci AI w CI/CD stanowią zagrożenie?

Agenci AI zintegrowani z potokami CI/CD stanowią zagrożenie, ponieważ łączą dwa ryzykowne elementy: dostęp do wrażliwych poświadczeń oraz zdolność do przetwarzania niezaufanych danych wejściowych. Tradycyjne narzędzia CI/CD wykonują z góry zdefiniowane kroki, natomiast agenci AI podejmują decyzje na podstawie kontekstu, co otwiera nowe wektory ataków.

W przypadku Claude Code akcja GitHub ma dostęp do tokenów GITHUB_TOKEN oraz innych sekretów skonfigurowanych w repozytorium. Agent wykorzystuje te poświadczenia do wykonywania operacji na kodzie, tworzenia pull requestów czy zarządzania issue. Problem pojawia się, gdy złośliwy prompt manipuluje agentem tak, aby użył tych uprawnień w nieprzewidziany sposób.

Badacze z EclecticIQ opisali kampanię ataków na programistów wykorzystującą fałszywe instalatory Claude Code i Gemini CLI. Atakujący stosują technikę SEO poisoning, aby pozycjonować fałszywe domeny w wynikach wyszukiwania. To pokazuje, że zagrożenia związane z agentami AI są wielowymiarowe.

Poniżej zestawienie głównych wektorów ataków na agentów AI w CI/CD:

Wektor atakuMechanizmRyzyko
Prompt injection w kodzieZłośliwe komentarze/instrukcje w repozytoriumKradzież poświadczeń
SEO poisoningFałszywe instalatory narzędzi AIInstalacja malware
Zatruwanie zależnościManipulacja pakietami używanymi przez agentaWykonanie złośliwego kodu
Manipulacja logamiWstrzykiwanie instrukcji przez output budowaniaExfiltracja danych
Złośliwe pull requestyPrompty ukryte w diffach koduModyfikacja pipeline’u

Jakie dane mogą zostać skompromitowane?

Przez lukę w akcji GitHub Claude Code atakujący mogą uzyskać dostęp do tokenów GITHUB_TOKEN, sekretów repozytorium oraz kluczy API przechowywanych w zmiennych środowiskowych CI/CD. Te poświadczenia dają szeroki dostęp do infrastruktury deweloperskiej.

Token GITHUB_TOKEN domyślnie ma uprawnienia do odczytu i zapisu w repozytorium, tworzenia pull requestów, zarządzania issue oraz wykonywania operacji na paczkach. Z kolei sekrety repozytorium mogą zawierać klucze dostępu do usług chmurowych, tokeny uwierzytelniające do rejestrów kontenerów czy poświadczenia baz danych.

Raport Microsoftu wskazuje, że atakujący mogą wykorzystać skompromitowane poświadczenia do wielu celów: modyfikacji kodu w repozytorium, wypychania złośliwych commitów, dostępu do zasobów chmurowych organizacji czy eksfiltracji danych z prywatnych repozytoriów. Zagrożenie dotyczy szczególnie organizacji, które używają Claude Code w codziennej pracy bez odpowiednich zabezpieczeń.

Warto sprawdzić konfigurację uprawnień akcji GitHub przed wdrożeniem agentów AI. Najważniejsze jest ograniczenie zakresu tokenów do minimum niezbędnego do wykonania zadania.

Jak wygląda mechanizm ataku prompt injection?

Mechanizm ataku prompt injection na Claude Code opiera się na wstrzyknięciu złośliwych instrukcji w danych wejściowych przetwarzanych przez agenta AI. Atakujący umieszcza odpowiednio spreparowany tekst w miejscach, do których agent ma dostęp podczas wykonywania zadania.

Na przykład atakujący może utworzyć pull request z komentarzem zawierającym ukrytą instrukcję dla agenta. Kiedy Claude Code analizuje zmiany w kodzie, przetwarza również ten komentarz. Złośliwa instrukcja może nakazać agentowi odczytanie zmiennych środowiskowych i przesłanie ich na zewnętrzny serwer.

Badacze z Microsoftu opisali scenariusz, w którym prompt injection zmusza agenta do wykonania poleceń powłoki, które normalnie nie byłyby uruchomione. Agent, mając dostęp do środowiska wykonania, może nieświadomie wykonać komendę ujawniającą poświadczenia. Atak jest trudny do wykrycia, ponieważ agent wykonuje operacje w ramach swoich normalnych uprawnień.

Podobne techniki ataku opisano w dokumentacji Claude Code, gdzie Anthropic dodawał zabezpieczenia przed niepożądanym wykonaniem poleceń. Rekomenduję zapoznanie się z aktualizacją wtyczki bezpieczeństwa Claude Code, która łagodzi część tych zagrożeń.

Kto odkrył lukę i jaki jest jej status?

Lukę w akcji GitHub Claude Code odkryli badacze bezpieczeństwa z Microsoftu. Raport został opublikowany na blogu bezpieczeństwa Microsoft, a szczegóły techniczne opisano na portalu Let’s Data Science. Informacje o podatności potwierdził również Decrypt.

Status luki wskazuje na potrzebę rewizji podejścia do integracji agentów AI z potokami CI/CD. Anthropic wprowadził szereg poprawek bezpieczeństwa, jednak podstawowa architektura agentów AI pozostaje podatna na ataki typu prompt injection.

Warto zauważyć kontekst wcześniejszych decyzji Microsoftu dotyczących Claude Code. Firma wycofała 100 000 licencji narzędzia z powodu rosnących kosztów, a następnie ograniczyła dostęp do Claude Code w organizacji. Te decyzje nabierają dodatkowego znaczenia w świetle odkrytej luki bezpieczeństwa.

Organizacje korzystające z Claude Code w potokach CI/CD powinny niezwłocznie przejrzeć konfigurację uprawnień i wdrożyć zabezpieczenia opisane w dalszej części artykułu.

Jak zabezpieczyć potoki CI/CD przed atakami prompt injection?

Zabezpieczenie potoków CI/CD wymaga wielowarstwowego podejścia, które ogranicza uprawnienia agentów AI i kontroluje dane wejściowe. Raport Microsoftu wskazuje, że podstawowa architektura Claude Code pozostaje podatna na manipulację, dlatego organizacje muszą wdrożyć dodatkowe mechanizmy ochronne. Kluczowe jest stosowanie zasady najmniejszych uprawnień.

Przede wszystkim należy ograniczyć uprawnienia GITHUB_TOKEN wyłącznie do odczytu, gdy agent AI przetwarza niezaufany kod. Domyślnie token ma szeroki zakres uprawnień do zapisu, co zwiększa ryzyko. Ponadto warto skonfigurować osobne sekrety z minimalnym zakresem dostępu dla każdej akcji.

Dodatkowe kroki ochronne obejmują:
– Weryfikację źródła pull requestów przed uruchomieniem agenta AI
– Izolację środowiska wykonania agenta w kontenerach bez dostępu do sieci
– Monitorowanie logów pod kątem nietypowych wzorców wykonania poleceń
– Wykorzystanie narzędzi skanowania podatności w potokach CI/CD, podobnie jak przy lagodzeniu kompromitacji łańcucha dostaw npm Axios
– Wdrożenie zatwierdzania kroków przez człowieka przed wykonaniem operacji na sekretach

Zatem ograniczenie uprawnień to fundament bezpieczeństwa. Bez tego każdy agent AI staje się potencjalnym wektorem ataku.

Jakie rekomendacje publikuje Microsoft?

Microsoft rekomenduje natychmiastowe ograniczenie uprawnień akcji GitHub wykorzystujących agentów AI oraz wdrożenie mechanizmów walidacji danych wejściowych. Raport opisany na Let’s Data Science podkreśla, że organizacje powinny traktować output agentów AI jako niezaufane dane.

Rekomendacje obejmują konfigurację permissions w plikach workflow na wartość contents: read zamiast domyślnego write. Ponadto Microsoft zaleca stosowanie środowisk (environments) z wymaganą aprobatą dla operacji na wrażliwych zasobach. Te mechanizmy znacznie utrudniają atakującym wykorzystanie skompromitowanego agenta.

Choć Anthropic wprowadził poprawki bezpieczeństwa opisane w dokumentacji Claude Code, Microsoft utrzymuje, że podstawowa podatność na prompt injection pozostaje nierozwiązana na poziomie architektury. Dlatego organizacje nie powinny polegać wyłącznie na zabezpieczeniach dostawcy narzędzia.

Wobec tego rekomendacje Microsoftu sprowadzają się do zasady zero trust. Agent AI musi być traktowany jak każdy inny niezaufany komponent infrastruktury.

Jakie są najlepsze praktyki integracji agentów AI z CI/CD?

Najlepsze praktyki integracji agentów AI z potokami CI/CD opierają się na izolacji, ograniczaniu uprawnień oraz ciągłym monitorowaniu. Organizacje powinny traktować agentów AI jak niezaufany kod z dostępem do wrażliwych zasobów.

Praktyki te obejmują:
– Uruchamianie agentów AI w odizolowanych środowiskach bez dostępu do produkcyjnych sekretów
– Stosowanie osobnych tokenów z minimalnym zakresem dla każdej akcji
– Weryfikację wszystkich danych wejściowych przetwarzanych przez agenta
– Regularne audyty konfiguracji uprawnień w potokach CI/CD
– Wdrożenie mechanizmów rollback w przypadku wykrycia anomalii

Z kolei organizacje, które wdrożyły Claude Code w codziennej pracy bez tych zabezpieczeń, są narażone na kradzież poświadczeń. Rapport Microsoftu pokazuje, że domyślna konfiguracja akcji GitHub Claude Code nie zapewnia wystarczającej ochrony przed atakami typu prompt injection.

Mimo to agentów AI nie należy eliminować z potoków CI/CD. Wymagają one jednak rygorystycznych kontroli bezpieczeństwa.

Jakie narzędzia pomagają chronić agentów AI w CI/CD?

Ochrona agentów AI w potokach CI/CD wymaga kombinacji narzędzi bezpieczeństwa: skanerów podatności, systemów monitorowania oraz mechanizmów kontroli dostępu. Anthropic udostępnia wtyczkę bezpieczeństwa Claude Code, która łagodzi część zagrożeń związanych z niepożądanym wykonaniem poleceń.

Narzędzia do ochrony agentów AI obejmują:
– Skanery kodu źródłowego wykrywające potencjalne payload-y prompt injection
– Systemy SIEM monitorujące logi CI/CD pod kątem anomalii
– Narzędzia do zarządzania sekretami z rotacją tokenów
– Bramki bezpieczeństwa wymagające aprobaty przed operacjami na wrażliwych zasobach
– Rozwiązania typu sandbox izolujące wykonanie agenta od infrastruktury

Ponadto organizacje powinny wdrożyć monitoring sieciowy wykrywający exfiltrację danych. Atak opisany przez Decrypt polega na przesłaniu poświadczeń na zewnętrzny serwer, co można zablokować na poziomie sieci.

Zatem ochrona wymaga warstwowych mechanizmów. Żadne pojedyncze narzędzie nie eliminuje wszystkich wektorów ataku opisanych przez badaczy z EclecticIQ.

Często zadawane pytania

Czy Claude Code nadal jest podatny na ataki prompt injection?

Anthropic wprowadził poprawki bezpieczeństwa, jednak raport Microsoftu potwierdza, że architektura agentów AI pozostaje podatna na zaawansowane ataki prompt injection. Organizacje powinny wdrożyć dodatkowe zabezpieczenia opisane w dokumentacji Claude Code.

Jak sprawdzić, czy moja organizacja jest zagrożona?

Należy zweryfikować konfigurację uprawnień GITHUB_TOKEN w plikach workflow wykorzystujących akcję Claude Code. Jeśli token ma uprawnienia write, organizacja jest narażona na kradzież poświadczeń – natychmiast ogranicz uprawnienia do contents: read.

Czy inne agenty AI kodujące mają podobne podatności?

Tak, podatności na prompt injection dotyczą wszystkich agentów AI przetwarzających niezaufane dane wejściowe. Badania opisane w kontekście frameworków agentów AI pokazują, że prompty mogą stać się powłokami umożliwiającymi zdalne wykonanie kodu w różnych systemach.

Jak szybko powinienem reagować na odkrycie luki w agentach AI?

Reakcja powinna być natychmiastowa – ograniczenie uprawnień tokenów i izolacja środowiska wykonania agenta. Microsoft wcześniej wycofał 100 000 licencji Claude Code, co pokazuje skalę zagrożenia i potrzebę szybkiego działania.

Podsumowanie

Luka w akcji GitHub Claude Code ujawniona przez Microsoft pokazuje fundamentalne wyzwanie bezpieczeństwa związane z integracją agentów AI z potokami CI/CD. Podstawowe wnioski z raportu:

  • Agenci AI z dostępem do poświadczeń CI/CD stanowią naturalny cel ataków prompt injection
  • Domyślna konfiguracja akcji GitHub Claude Code nie zapewnia wystarczającej ochrony
  • Ograniczenie uprawnień GITHUB_TOKEN do minimum jest najważniejszym krokiem zabezpieczającym
  • Organizacje muszą traktować agentów AI jako niezaufane komponenty infrastruktury
  • Wielowarstwowe podejście do bezpieczeństwa – izolacja, monitoring, minimalne uprawnienia – jest niezbędne

Zagrożenia związane z agentami AI w CI/CD będą rosły wraz z adopcją tych narzędzi. Organizacje korzystające z Claude Code lub podobnych rozwiązań powinny niezwłocznie przejrzeć konfigurację uprawnień i wdrożyć mechanizmy ochronne opisane w raporcie Microsoftu. Sprawdź konfigurację swoich potoków CI/CD jeszcze dziś.