15 puan yazan GN⁺ 2025-11-22 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Bağımlılık cooldown’u (dependency cooldown), açık kaynak tedarik zinciri saldırılarının büyük bölümünü hafifletebilen basit ve etkili bir güvenlik tekniğidir
  • Saldırganlar genellikle popüler açık kaynak projeleri ele geçirip kötü amaçlı kod dağıtır, ancak çoğu saldırının maruz kalma süresi bir haftadan kısadır
  • Yeni bir sürüm yayımlandıktan sonra belirli bir süre (ör. 7 gün) bekleyen bir cooldown ayarlanırsa, otomatik güncellemelerden kaynaklanan bulaşma riski büyük ölçüde azaltılabilir
  • Dependabot, Renovate, pnpm gibi araçlar zaten cooldown özelliğini yerleşik olarak destekler; yapılandırması kolaydır ve ek maliyet gerektirmez
  • Cooldown’un paket yöneticisi seviyesinde varsayılan olarak sunulması, tedarik zinciri güvenliğinin güçlenmesine ve gereksiz alarmların azalmasına katkı sağlayabilir

Tedarik zinciri saldırılarının yapısı ve sorunları

  • Çoğu tedarik zinciri saldırısı (supply chain attack) aynı deseni izler
    • Saldırgan, popüler bir açık kaynak projesine kimlik bilgisi hırsızlığı veya CI/CD açığı üzerinden erişim sağlar
    • Kötü amaçlı değişiklikleri dağıtım kanalına (PyPI, npm vb.) yükler
    • Otomatik güncellemeler veya yetersiz sürüm sabitleme nedeniyle kullanıcılar enfekte sürümü kurar
    • Güvenlik sağlayıcıları bunu tespit edip uyarı verir, ardından paket deposu ilgili sürümü kaldırır
  • (1) ile (2) adımları arasındaki süre uzun olabilir, ancak (2) ile (5) arasındaki süreç saatler ya da birkaç gün içinde tamamlandığı için saldırganın etkin olduğu süre kısadır
  • Son 18 aydaki başlıca örneklerde saldırı fırsatı penceresi (window of opportunity)
    • xz-utils: yaklaşık 5 hafta
    • Ultralytics: 12 saat (1. aşama), 1 saat (2. aşama)
    • tj-actions: 3 gün
    • chalk: 12 saatten az
    • Nx: 4 saat
    • rspack: 1 saat
    • num2words: 12 saatten az
    • Kong Ingress Controller: yaklaşık 10 gün
    • web3.js: 5 saat
  • Bunların 8’inde saldırı süresi 1 haftadan kısaydı ve çoğu cooldown ile engellenebilirdi

Cooldown kavramı ve etkisi

  • Cooldown, yeni bir bağımlılık yayımlandıktan sonra belirli bir süre kullanılmasını geciktirme yöntemidir
    • Bu süre içinde güvenlik sağlayıcıları sürümün kötü amaçlı olup olmadığını tespit edebilir
  • Avantajları
    • Ampirik olarak etkilidir ve büyük çaplı saldırıların çoğunu engeller
    • Uygulaması çok basittir ve çoğu araçta ücretsiz olarak yapılandırılabilir
    • Dependabot örneği
      version: 2
      - package-ecosystem: github-actions
        directory: /
        schedule:
          interval: weekly
        cooldown:
          default-days: 7
      
    • Güvenlik sağlayıcılarının olumlu davranmasını teşvik eder: aşırı alarm veya tanıtım yerine hızlı tespiti önceliklendirmelerini sağlar

Sonuç ve öneriler

  • 10 saldırının 8’i 1 hafta veya daha kısa sürdü; 7 günlük cooldown bunların çoğunu engelleyebilir
  • 14 günlük cooldown uygulanırsa xz-utils dışındaki tüm örnekler savunulabilir
  • Cooldown mükemmel bir çözüm değildir, ancak maruz kalma riskini %80–90 azaltan basit bir yöntemdir
  • Dependabot ve Renovate’e ek olarak, paket yöneticilerinin de cooldown’u yerleşik olarak desteklemesi için geliştirme yapılmalıdır
  • Tedarik zinciri güvenliği yalnızca teknik bir sorun değil, toplumsal güven yapısının da bir meselesidir; ancak cooldown pratik bir hafifletme yöntemi olarak yararlıdır

Henüz yorum yok.

Henüz yorum yok.