Geri Dön

Apiiro, GitHub'daki Claude Code izin dosyalarında 2.539 gizli bilgi buldu
SiTech AI Team2 dk okuma

Apiiro, GitHub'daki Claude Code izin dosyalarında 2.539 gizli bilgi buldu

Apiiro'nun çalışmasına göre 1.994 genel GitHub deposunda 2.539 gerçek gizli bilgi bulundu; bunlar çoğunlukla geliştiricilerin komut onaylamasıyla oluşturulan .claude/settings.local.json dosyalarındaydı.

Apiiro araştırmacıları, 1.994 genel GitHub deposunda 2.539 gerçek gizli bilgi buldu; bunların çoğu .claude/settings.local.json adlı Claude Code izin dosyalarında saklanıyordu. Bu dosyalar, bir kullanıcı bir komut için 'Yes, and don't ask again' seçeneğini seçtiğinde oluşturulabilir. Apiiro, 63 kuruluşun etkilendiğini ve bunlardan birinin anahtarının kullanımda olduğunu doğruladığını belirtiyor.

Gizli bilgiler dosyalara nasıl giriyor

Claude Code kabuk komutlarını çalıştırmadan önce sorar. Bir geliştirici 'Yes, and don't ask again' seçeneğini seçerse, onaylanan tam komutu proje klasöründeki .claude/settings.local.json dosyasına kaydeder. Bu komut yerel yapılandırmadan kopyalanmış bir veritabanı parolası, bulut anahtarı, API belirteci veya SSH girişi içerebileceğinden gizli bilgi dosyaya yazılır. Claude Code dosyayı geliştiricinin genel git ignore listesine ekler, ancak deponun kendi .gitignore dosyasına eklemez; bu nedenle sonraki bir commit onu içerebilir. Apiiro'nun izlediği gerçek gizli bilgi bulunan 1.105 depodan 539'unda Claude'un ortak yazar olduğu bir commit dosyayı değiştirdi.

Ölçek ve etki

GitHub'da .claude/settings.local.json dosyasının 103.617 depoda 104.185 genel kopyası vardı. Apiiro bu dosyaların 1.122'sinde gerçek gizli bilgi buldu; bunlar 1.379 ayrı gizli bilgi içeriyordu. Bunlardan 379'u veritabanı parolası ve 122'si Supabase service-role anahtarıydı. Apiiro ayrıca git geçmişi, paylaşılan ayar dosyaları ve ajan sohbet kayıtlarında 1.160 gizli bilgi daha buldu. Toplamda Apiiro, 1.994 depoda 2.539 ayrı gerçek gizli bilgi saydı. Etkilenen durumlar arasında bir veritabanı satıcısının bulut API anahtarı, bir üretim Azure Postgres parolası, bir Square üretim belirteci, OpenAI biçimli bir API anahtarı, bir npm belirteci ve bir tıbbi kayıtlar veritabanının sahibinin parolası yer alıyor. Apiiro ayrıca izin listelerinde 43 SSH kimlik bilgisi buldu; bunlar arasında sshpass komutlarındaki root parolaları da vardı. Genel tarama araçları gizli bilgilerin çoğunu kaçırdı: gitleaks 1.122 dosyanın 564'ünü, TruffleHog 643'ünü işaretledi; 215'i hiçbirinde işaretlenmedi. Bunların çoğu PGPASSWORD=, sshpass -p, mysql -p veya bearer başlıkları içindeki parolalardı.

Kullanıcılar ne yapmalı

Apiiro, geliştiricilere dosyayı git rm --cached .claude/settings.local.json ile izlemeyi bırakmalarını ve izleniyorsa deponun kendi .gitignore dosyasına eklemelerini tavsiye ediyor. Dosyanın şimdiye kadar tuttuğu her kimlik bilgisini yenilemeliler; çünkü silme işlemi onu geçmişten, fork'lardan veya klonlardan kaldırmaz. Dosya hiç commit edilmemiş olsa bile kullanıcılar onu açıp gizli bilgi içeren her kuralı silmelidir. Geliştiriciler komutlara gizli bilgileri yazmak yerine $DB_URL gibi değişkenlere başvurmalı ve tam komutlar yerine Bash(npm run:*) gibi kalıpları onaylamalıdır. Güvenlik ekipleri ajan klasörlerini ve bellek dosyalarını gizli bilgi taşıyan olarak ele almalı, bunları pre-commit ve CI taramasına eklemeli ve herkese açık ana bilgisayarlarla eşleşen kimlik bilgilerini önce sıralamalıdır.

Kaynak: apiiro.com

SiTech

SiTech — AI destekli web geliştirme

Hızlı ve modern web siteleri kuruyor, AI'yı gerçek iş akışlarına taşıyoruz. Projeniz veya sorunuz mu var? Yardımcı olmaktan mutluluk duyarız.