FixVibe
Covered by FixVibehigh

API Anahtar Sızıntısı: Modern Web Uygulamalarında Riskler ve İyileştirmeler

Ön uç kodundaki veya depo geçmişindeki sabit kodlanmış sırlar, saldırganların hizmetleri taklit etmesine, özel verilere erişmesine ve maliyete maruz kalmasına olanak tanır. Bu makalede gizli sızıntı riskleri ile temizleme ve önleme için gerekli adımlar ele alınmaktadır.

CWE-798

Etki

API anahtarları, belirteçleri veya kimlik bilgileri gibi sırların sızdırılması, hassas verilere yetkisiz erişime, hizmet kimliğine bürünmeye ve [S1] kaynağının kötüye kullanılması nedeniyle önemli mali kayba yol açabilir. Bir sır, genel bir depoya aktarıldığında veya bir ön uç uygulamasına paketlendiğinde, bunun tehlikeye atılmış [S1] olduğu düşünülmelidir.

Temel Neden

Temel neden, hassas kimlik bilgilerinin doğrudan kaynak koduna veya daha sonra sürüm kontrolüne aktarılan veya [S1] istemcisine sunulan yapılandırma dosyalarına dahil edilmesidir. Geliştiriciler genellikle geliştirme sırasında kolaylık sağlamak için anahtarları sabit kodlarlar veya yanlışlıkla .env dosyalarını [S1] taahhütlerine eklerler.

Beton Düzeltmeleri

  • Ehliyeti Korunan Sırları Döndürün: Bir sır sızdırılırsa derhal iptal edilmeli ve değiştirilmelidir. Sırrı kodun geçerli sürümünden kaldırmak yeterli değildir çünkü sürüm kontrol geçmişinde [S1][S2] kalır.
  • Ortam Değişkenlerini Kullanın: Sırları sabit kodlamak yerine ortam değişkenlerinde saklayın. [S1]'nin yanlışlıkla işlenmesini önlemek için .env dosyalarının .gitignore'ye eklendiğinden emin olun.
  • Gizli Dizi Yönetimini Uygulayın: [S1] çalışma zamanında kimlik bilgilerini uygulama ortamına eklemek için özel gizli yönetim araçlarını veya kasa hizmetlerini kullanın.
  • Depo Geçmişini Temizleme: Git'e bir sır aktarıldıysa, [S2] depo geçmişindeki tüm dallardan ve etiketlerden hassas verileri kalıcı olarak kaldırmak için git-filter-repo veya BFG Repo-Cleaner gibi araçları kullanın.

FixVibe bunu nasıl test ediyor?

FixVibe artık bunu canlı taramalara dahil ediyor. Pasif secrets.js-bundle-sweep, aynı kaynaklı JavaScript paketlerini indirir ve bilinen API anahtarı, belirteci ve kimlik bilgisi modellerini entropi ve yer tutucu kapılarla eşleştirir. İlgili canlı kontroller, tarayıcı depolama alanını, kaynak haritalarını, kimlik doğrulama ve BaaS istemci paketlerini ve GitHub depo kaynak modellerini denetler. Git geçmişinin yeniden yazılması bir iyileştirme adımı olmaya devam ediyor; FixVibe'nin canlı yayını, gönderilen varlıklarda, tarayıcı depolama alanında ve mevcut repo içeriklerinde bulunan sırlara odaklanıyor.