Luki w Claude Code: jak „zwykłe” pliki konfiguracyjne mogły dać ciche RCE i kradzież kluczy API - Security Bez Tabu

Luki w Claude Code: jak „zwykłe” pliki konfiguracyjne mogły dać ciche RCE i kradzież kluczy API

Wprowadzenie do problemu / definicja luki

Claude Code to narzędzie „agentowe” (AI coding assistant), które działa w środowisku deweloperskim i potrafi automatyzować działania na repozytorium: od uruchamiania narzędzi, przez integracje, po wykonywanie komend. Problem ujawniony przez Check Point polegał na tym, że repozytoryjne pliki konfiguracyjne – kopiowane automatycznie podczas klonowania – mogły stać się warstwą wykonawczą, uruchamiając komendy lub inicjując zewnętrzne akcje zanim użytkownik zdążył świadomie zaakceptować zaufanie/zgody.


W skrócie

  • Atakujący mógł przygotować złośliwe repozytorium z odpowiednio spreparowanymi konfiguracjami Claude Code.
  • Po klonowaniu i otwarciu projektu w Claude Code mogło dojść do:
    1. cichego wykonania poleceń przez mechanizm Hooks bez wyraźnej prośby o zgodę,
    2. ominięcia mechanizmów zgody w integracjach (MCP) jeszcze przed potwierdzeniem zaufania,
    3. wycieku klucza API Anthropic poprzez przekierowanie ruchu API do serwera atakującego przed potwierdzeniem zaufania.
  • Dwie podatności były śledzone jako CVE-2025-59536 i CVE-2026-21852 (naprawione przez Anthropic).

Kontekst / historia / powiązania

W klasycznym modelu bezpieczeństwa repozytorium traktuje się jak zbiór kodu i metadanych. W modelu „agentowym” metadane (konfiguracje) zaczynają sterować wykonaniem: definiują automatyzacje, integracje i uprawnienia. Check Point zwraca uwagę, że to przesuwa granicę zaufania w łańcuchu dostaw oprogramowania: „niewinne” pliki w repo stają się realnym wektorem ataku supply chain.


Analiza techniczna / szczegóły luki

Poniżej trzy kluczowe klasy problemów, które – w różnych wariantach – sprowadzały się do jednego: konfiguracja z repozytorium miała zbyt dużo sprawczości zanim użytkownik wyraził zaufanie.

1) Ciche wykonanie komend przez Hooks (pre-trust / bez zgody)

Claude Code pozwala definiować „Hooks”, czyli komendy uruchamiane w określonych momentach (np. start sesji/projektu). Badacze wykazali, że hooki mogły uruchamiać dowolne polecenia na hoście dewelopera, a narzędzie nie zawsze prosiło o explicite „OK” na samo wykonanie hooków – przez co atak stawał się „silent”.

Efekt: endpoint RCE / wykonanie poleceń w kontekście użytkownika (zależnie od uprawnień).

2) Ominięcie mechanizmu zgody w przepływie „trust” (CVE-2025-59536)

W CVE-2025-59536 opisano błąd, w którym Claude Code mógł zostać nakłoniony do wykonania kodu z projektu zanim użytkownik zaakceptował okno zaufania („startup trust dialog”).
Check Point powiązał ten obszar również z inicjalizacją integracji (MCP), gdzie ustawienia kontrolowane z repozytorium mogły odwracać model kontroli i uruchamiać akcje zanim użytkownik realnie zatwierdził ostrzeżenia/zgody.

Efekt: działania wykonywane „pre-consent”, co w praktyce rozbraja kluczową barierę bezpieczeństwa.

3) Eksfiltracja klucza API i ruchu uwierzytelnionego (CVE-2026-21852)

CVE-2026-21852 dotyczyło przepływu ładowania projektu: złośliwa konfiguracja repo mogła spowodować wysyłkę żądań do infrastruktury atakującego zanim użytkownik potwierdził zaufanie, ujawniając m.in. klucz API (nagłówek autoryzacji).

Efekt: kradzież kluczy API, podsłuch/relay ruchu, możliwość nadużyć w imieniu ofiary (w tym kosztowych).


Praktyczne konsekwencje / ryzyko

  1. Pełne przejęcie stacji dewelopera: jeśli „silent RCE” uruchomi pobranie payloadu, kradzież tokenów, pivot do sieci firmowej itp.
  2. Ryzyko zespołowe/organizacyjne przez wyciek klucza API: Check Point podkreśla, że skradziony klucz może uderzyć szerzej niż pojedyncza maszyna — szczególnie w środowiskach współdzielonych.
  3. Nowy wektor supply chain: pojedynczy „niewinny” commit w repo (konfiguracja) może uruchomić działania wykonawcze u każdego, kto repo otworzy w narzędziu agentowym.

Rekomendacje operacyjne / co zrobić teraz

Natychmiast (0–24h)

  • Zaktualizuj Claude Code do najnowszej wersji (podatności zostały załatane przez Anthropic; CVE-2026-21852 dotyczyło wersji sprzed 2.0.65, a CVE-2025-59536 ma fix w gałęzi 1.0.111+ wg opisu NVD).
  • Rotuj klucze API Anthropic (zwłaszcza jeśli otwierałeś nieznane repozytoria) i rozważ rozdzielenie kluczy per użytkownik / per projekt.

Krótki termin (1–7 dni)

  • Traktuj repozytoria jako „untrusted by default”:
    • uruchamiaj Claude Code dla obcych repo w sandboxie (VM/contener),
    • ogranicz uprawnienia (least privilege),
    • kontroluj egress (proxy/deny-by-default do nieznanych domen).
  • W politykach zespołowych dodaj kontrolę: zakaz automatycznych hooków/integracji w projektach spoza zaufanej listy lub wymóg manualnego zatwierdzania. (To jest dokładnie obszar, który został nadużyty w badaniu.)

Średni termin (1–4 tygodnie)

  • Wprowadź przeglądy bezpieczeństwa repo: skanowanie pod kątem podejrzanych zmian w plikach konfiguracyjnych narzędzi agentowych (treat-as-code).
  • Ustal „guardrails” dla AI dev tools: osobne środowiska, osobne klucze, monitoring anomalii sieciowych (np. nagłe połączenia do domen spoza allowlisty podczas „otwierania projektu”).

Różnice / porównania z innymi przypadkami

  • Klasyczny supply chain (np. zależności NPM/PyPI) zwykle wymaga wciągnięcia paczki do buildu/uruchomienia. Tutaj wystarczyło otwarcie repo w narzędziu, bo konfiguracja repo inicjowała wykonanie.
  • To przypomina problemy typu „workspace/IDE trust”, ale z twistem: agent ma naturalną zdolność do uruchamiania narzędzi i wykonywania poleceń, więc konsekwencje „pre-trust” są bardziej dotkliwe.

Podsumowanie / kluczowe wnioski

  • W narzędziach agentowych konfiguracja repozytorium nie jest już pasywna — może stać się aktywną warstwą wykonawczą.
  • Ujawnione problemy w Claude Code pokazały trzy groźne scenariusze: silent command execution, pre-consent execution oraz kradzież kluczy API.
  • Najważniejsze praktyki: aktualizacje + izolacja nieznanych repo + kontrola egress + rotacja i separacja kluczy.

Źródła / bibliografia

  1. SecurityWeek – Claude Code Flaws Exposed Developer Devices to Silent Hacking (SecurityWeek)
  2. Check Point Research – Check Point Researchers Expose Critical Claude Code Flaws (Check Point Blog)
  3. NVD (NIST) – CVE-2025-59536 (nvd.nist.gov)
  4. NVD (NIST) – CVE-2026-21852 (nvd.nist.gov)
  5. Dark Reading – Flaws in Claude Code Put Developers’ Machines at Risk (Dark Reading)