Claude Code'un 'Don't Ask Again' Özelliği 1.122 Depoda Gizli Anahtar Sızıntısına Yol Açtı

Claude Code'un 'Don't Ask Again' Özelliği 1.122 Depoda Gizli Anahtar Sızıntısına Yol Açtı
audio-thumbnail
Claude Code'un 'Don't Ask Again' Özelliği 1.122 Depoda Gizli Anahtar Sızıntısına Yol Açtı
0:00
/0

Claude Code'un 'Don't Ask Again' Özelliği 1.122 Depoda Gizli Anahtar Sızıntısına Yol Açtı

GitHub, geliştiricilerin kodlarını paylaşmak, işbirliği yapmak ve projelerini yönetmek için kullandığı en büyük açık kaynak platformlarından biridir. Ancak bu platformun güvenliği, özellikle geliştiricilerin kendi bilgilerini, API anahtarlarını ve parolalarını yanlışlıkla paylaştığı durumlarda sorgulanmaya devam ediyor. Sonuçta, bir kerede yapılan bir hata, yüzlerce projede devasa bir güvenlik çapına dönüşebilir.

Apiiro, bir yazılım güvenliği şirketi, Anthropic'ın Claude Code AI geliştirme yardımcı sistemindeki "Don't Ask Again" (Bir daha sorma) özelliğinin, 1.122 GitHub deposunda gizli anahtar sızıntısına neden olduğunu ortaya koydu. Bu sızıntı, geliştiricilerin AI asistanına vermiş olduğu komutlar içindeki hassas bilgilerin, kendi bilgisayarlarında oluşturulan bir ayar dosyasına kaydedilmesi ve bu dosyanın GitHub'a paylaşılmasıyla meydana geldi.

Sızıntının Temel Mekanizması

Claude Code, geliştiricilerin bir komutu çalıştırmak istediklerinde, sistem ona "Bu komutu çalıştır, bir daha sorma" diye sorar. Eğer kullanıcı "Evet, bir daha sorma" seçeneğini seçerse, AI asistanı, o komutun tamamını, kelimeleri birbirine yapıştırılmış haliyle, bir yapılandırma dosyasına kaydeder. Bu dosya .claude/settings.local.json olarak adlandırılır ve bu dosya varsayılan olarak gitignored değil, yani bir sonraki commit ile birlikte GitHub'a yüklenebilir.

Bu durum, geliştiricinin kendi komut satırında yazdığı bir API anahtarı, veritabanı şifresi veya diğer kritik kimlik bilgilerini doğrudan açık kaynak bir depoya taşıyabilir. Apiiro, bu durumu şu şekilde özetliyor:

"Bir geliştirici, bir komut içinde bir API anahtarı veya şifre yazdığında, 'Don't Ask Again' seçeneğini tıkladığında, bu anahtar, .claude/settings.local.json dosyasına kaydedilir ve bu dosya, GitHub'a yüklenir."

Sızıntının Boyutu ve Etki

Apiiro, 104.185 adet açık kaynak .claude/settings.local.json dosyasını 103.617 GitHub deposunda taramıştır. Bu taramada, 1.122 depoda en az bir gizli anahtar bulunduğunu belirledi. Toplamda 1.379 farklı gizli anahtar sızdırılmıştır. Bu sızıntının etkisi aşağıdaki gibi detaylandırılmıştır:

  • 379 veritabanı şifresi
  • 43 SSH kullanıcı adı ve şifre (genellikle genel sunuculara erişim için)
  • 42 GitHub, GitLab ve npm için erişim token'ları
  • 23 AWS kimlik bilgileri

Bazı bu anahtarların şu an aktif olduğunu doğrulamak mümkün olmasa da, en az birinin canlı bir proje üzerinde kullanıldığı doğrulandı. Bu, riskin sadece teorik seviyede kalmadığı, aynı zamanda gerçek üretim ortamlarında da aktif tehdit haline geldiğini gösteriyor.

Tarama ve Algılama Zorlukları

Gizli anahtarların sızıntısının tespit edilmesi, hem geliştiricilerin hem de güvenlik sistemlerinin başarısız olduğu bir durumda gerçekleşti. Apiiro, bu sızıntıyı tespit ederken şu bulguları elde etti:

  • Trufflehog (bir gizli anahtar tarama aracı) 2.539 gizli anahtardan sadece 643'ünü tespit etti.
  • gitleaks aracı ise 564 tespit etti.
  • 215 gizli anahtar, her iki aracı tarafından da tespit edilemedi.

Bu, mevcut güvenlik araçlarının bu tür sızıntılara karşı yetersiz olduğunu gösteriyor. Özellikle de geliştiricilerin kendi komut satırında gizli bilgileri kullanarak bir kez "don't ask again" seçeneğini seçtikten sonra, bu bilgilerin otomatik olarak bir dosyaya kaydedilmesi, sızıntıyı büyük ölçüde kolaylaştırıyor.

Geliştiricilerin Hafızasında Kalan Bir Uyarı

Bu sızıntı, geliştiricilerin "don't ask again" seçeneğini kullanırken dikkatli olmaları gerektiğini hatırlatıyor. Bu özellik, kullanıcının kolaylık sağlamasını ama aynı zamanda güvenlik risklerini artırıyor. Özellikle:

  • AI araçları, geliştiricinin yaptığı her komutu kaydediyor.
  • Bu komutlar, gizli bilgiler içerebiliyor.
  • Bu bilgiler, varsayılan olarak gitignored olmayan bir dosyada kaydediliyor.
  • Bu dosya, proje klasöründe tutuluyor ve commit edilirken GitHub'a yükleniyor.

Apiiro, bu durumu şöyle tanımlıyor:

"Claude Code, yalnızca bir AI kodlama aracı değil, aynı zamanda bir gizli anahtar kayıt cihazı haline geldi. Bir kez onayladığınız komut, artık her yerde yer alıyor."

Organizasyonlara Etki

Bu sızıntı, sadece bireysel geliştiricileri değil, aynı zamanda şirketleri de etkiledi. 63 farklı organizasyon, özellikle yazılım şirketleri, bu sızıntının etkisinde kaldı. Bu, büyük şirketlerin bile AI araçları kullanırken güvenlik ilkelerini ihmal ettiğini gösteriyor.

Apiiro, Anthropic'e yönelik dört ayrı güvenlik raporu gönderildiğini ancak bunların hepsinin bir bot tarafından kapatıldığı ve herhangi bir yanıtlamanın yapılmadığına dikkat çekti. En son rapor, 8 Kasım 2026 tarihinde kapatıldı. Ayrıca, Ağustos 2025'ten itibaren yapılan önceki raporlar da "planlanmadı" olarak kapandı. Bu, Anthropic'in güvenlik sorunlarına karşı aktif bir müdahale göstermediğini gösteriyor.

Sızıntının Yaratığı Riskler

Bu sızıntı, sadece bir güvenlik açığı değil, aynı zamanda kullanıcı davranışını ve sistem tasarımını sorgulayan bir durum. Örneğin:

  • MITRE ATT&CK eylem zincirinde bu sızıntı, "sistemdeki bilgiye erişim" ve "kimlik bilgilerini sızdırma" adımlarına yer veriyor.
  • PCI DSS 4.0, HIPAA, DORA, NIS2 ve NYDFS gibi kurallar, bu tür sızıntıların işsizlik riski oluşturabileceğini belirtiyor.
  • Geliştiricilerin kendileri, AI araçlarını kullanırken hassas bilgileri bir kez bile yazmaması gerekiyor.

Korunma Yöntemleri ve Öneriler

Bu tür sızıntılardan korunmak için geliştiricilerin ve kurumların aşağıdaki adımları atması gerekiyor:

  1. .claude/settings.local.json dosyasını .gitignore dosyasına eklemek.
  2. AI araçlarını kullanırken gizli bilgileri komut satırında yazmamak.
  3. Kendi dosyalarını yerel olarak test etmek ve sızıntı riskini azaltmak.
  4. gitleaks ve Trufflehog gibi araçları devamlı kullanmak.
  5. Sistemsel güvenlik ayarlarını ve AI araçlarının izinlerini düzenli olarak gözden geçirmek.

Sonuç

Claude Code'un "Don't Ask Again" özelliği, geliştiricilerin kolaylık sağladığı için yaygın olarak kullanılıyor. Ancak bu kolaylık, gizli anahtarların açık kaynak depolarda sızmasına neden oluyor. Apiiro'nun tespit ettiği 1.122 depoda sızan 1.379 gizli anahtar, bu tür sızıntının boyutunu ve etkisini net bir şekilde gösteriyor.

Bu olay, AI araçlarının güvenliği konusunda daha fazla bilinç ve denetim gerektiğini, hem geliştiricilerin hem de şirketlerin gizli bilgileri kontrol altında tutmaları gerektiğini hatırlatıyor. AI, bir geliştiricinin en büyük yardımcısı olabilir, ama aynı zamanda en büyük tehdidi de olabilir.

Güvenlik, her zaman bir seçimdir.
Ve bu seçim, bir tek tıklamayla bile değişebilir.