Anthropics Claude Code är ett verktyg som låter utvecklare köra AI-genererade skalkommandon i sina projekt. När en användare klickar på ”Ja, och fråga inte igen” sparas godkännandet i en lokal fil som heter .claude/settings.local.json. Filen innehåller det exakta kommandot, som kan innehålla databaslösenord, API-token eller andra inloggningsuppgifter. Enligt Anthropics dokumentation läggs filen till i en global .gitignore-fil, så den ska stanna på utvecklarens dator.
Forskare på Apiiro upptäckte att posten i .gitignore inte gäller för själva kodförrådet. Om en mapp med inställningsfilen senare blir ett Git-kodförråd, eller om Claude Code själv checkar in filen, kan känsliga uppgifter laddas upp till GitHub. Apiiros genomsökning av offentliga GitHub-kodförråd hittade över 100 000 förekomster av filen, och omkring 1 100 av dem innehöll faktiska hemligheter. Uppgifterna kom från 63 olika organisationer och omfattade offentliga API-token, databaslösenord och privata nycklar.
När en fil väl är offentlig försvinner den inte från förgreningar eller cachade kopior bara för att den tas bort från huvudkodförrådet. Det innebär att alla som klonar kodförrådet eller bläddrar i dess historik fortfarande kan se de läckta inloggningsuppgifterna. Forskarna varnade för att läckan kan ge angripare åtkomst till databaser, molntjänster eller interna system om de exponerade nycklarna fortfarande är aktiva.
Därför är läckan viktig
För utvecklare visar upptäckten hur viktigt det är att kontrollera vilka filer som versionshanteras innan kod checkas in. Det räcker inte att enbart förlita sig på en global .gitignore-fil; varje kodförråd bör ha en egen .gitignore som utesluter .claude/settings.local.json. Organisationer bör också byta ut alla inloggningsuppgifter som kan ha exponerats och söka igenom sina kodförråd efter liknande filer.
Varför det spelar roll
Utvecklare kan oavsiktligt exponera inloggningsuppgifter när de använder Claude Code, vilket kan leda till obehörig åtkomst till tjänster. Organisationer måste granska sina kodförråd och behandla inställningsfilen som känslig, lägga till den i varje projekts .gitignore och byta ut eventuella läckta nycklar.