Narzędzia sztucznej inteligencji mają przyspieszać pracę programistów, ale czasami mogą stworzyć zupełnie nowe problemy z bezpieczeństwem. Przekonali się o tym użytkownicy Claude Code od Anthropic. Badacze odkryli tysiące poufnych danych, które trafiły do publicznych repozytoriów GitHub. Wśród nich znalazły się hasła do baz danych, klucze API, tokeny usług chmurowych oraz dane dostępowe SSH.
Problem jest szczególnie niepokojący, ponieważ nie wynika z bezpośredniego włamania. Wystarczyło skorzystać z jednej z funkcji ułatwiających codzienną pracę z asystentem AI.
Claude Code zapisuje hasła w plikach konfiguracyjnych
Źródłem problemu jest sposób zapisywania uprawnień do wykonywania poleceń w terminalu. Kiedy programista wybiera opcję „Yes, and don’t ask again”, Claude Code zapamiętuje zgodę na ponowne uruchamianie określonego polecenia bez dodatkowego pytania.
Reguła trafia do pliku .claude/settings.local.json. Problem pojawia się wtedy, gdy zatwierdzona komenda zawiera hasło lub token API. Claude Code może zapisać całe polecenie wraz z poufnymi danymi w zwykłym tekście.
Plik powinien pozostać lokalnie na komputerze użytkownika. Anthropic zabezpiecza go poprzez globalną konfigurację wykluczeń Git. Nie oznacza to jednak pełnej ochrony. Zabezpieczenie nie zawsze działa po sklonowaniu projektu na innym komputerze, przeniesieniu katalogu lub zmianie sposobu zarządzania repozytorium. W rezultacie plik może trafić do publicznego GitHuba.
Ponad 2500 ujawnionych sekretów
Skala problemu jest większa, niż mogłoby się wydawać. Analiza publicznych repozytoriów wykazała ponad 104 tys. kopii pliku .claude/settings.local.json. W 1122 z nich znaleziono łącznie 1379 poufnych danych.
To jednak nie koniec. Po uwzględnieniu historii Git, dodatkowych plików konfiguracyjnych oraz zapisanych rozmów z agentami liczba wzrosła do 2539 różnych sekretów w 1994 repozytoriach.
Ujawnione informacje obejmują między innymi hasła do baz danych, klucze usług chmurowych, tokeny API i prywatne dane dostępowe. Badacze nie sprawdzali, czy wszystkie znalezione poświadczenia nadal są aktywne. Nie można więc zakładać, że każde z nich umożliwia obecnie dostęp do chronionych zasobów.
Popularne skanery również nie wykryły zagrożenia
Dodatkowym problemem okazuje się skuteczność narzędzi bezpieczeństwa. Popularne rozwiązania Gitleaks i TruffleHog nie wykryły 215 spośród 1122 plików zawierających sekrety.
Szczególnie trudne do rozpoznania są hasła umieszczone bezpośrednio w zwykłych poleceniach terminala. Nie zawsze przypominają one typowe klucze API, dlatego mogą ominąć standardowe mechanizmy wykrywania.
Anthropic dostrzega problem. Boris Cherny, szef Claude Code, poinformował, że firma analizuje możliwe zabezpieczenia, w tym wbudowane skanowanie poufnych danych oraz zmiany w systemie uprawnień.
Co powinni zrobić użytkownicy Claude Code?
Programiści korzystający z Claude Code powinni sprawdzić, czy plik .claude/settings.local.json nie został dodany do publicznego repozytorium. Warto również przejrzeć historię commitów i zweryfikować, czy poufne informacje nie pozostały w starszych wersjach projektu.
Samo usunięcie pliku nie rozwiązuje problemu. Dane mogą nadal znajdować się w historii Git oraz kopiach repozytorium. Jeśli hasło lub klucz zostały ujawnione, należy je niezwłocznie unieważnić i wygenerować nowe.
Przypadek Claude Code pokazuje, że nawet narzędzia AI tworzone z myślą o produktywności mogą nieświadomie zwiększać ryzyko wycieku danych. Automatyzacja pracy programisty nie powinna oznaczać rezygnacji z podstawowych zasad bezpieczeństwa.

