Dependabot alerts — temel akış
Dependabot alerts — core workflow
Bu derste neler öğreneceksin
- Dependabot alerts'ın nasıl tetiklendiğini ve CVE'lerle ilişkisini anlamak
- Alert önceliklendirme kriterlerini (CVSS, scope, reachability) bilmek
- Dependabot'u etkinleştirme ve yapılandırma adımlarını öğrenmek
- Alert kapatma seçeneklerini ve audit kaydını kavramak
Dependabot alerts nasıl çalışır?
Dependabot, reponun bağımlılık manifestini (package.json, requirements.txt, pom.xml vb.) GitHub Advisory Database (GHSA) ile karşılaştırır. Bilinen bir güvenlik açığı bulunduğunda alert oluşturur.
Dependency manifest
↓
GitHub Advisory Database (GHSA) + NVD karşılaştırma
↓
CVE var mı?
↓ Evet ↓ Hayır
Alert oluştur Temiz
Tetikleyici olaylar:
- Yeni CVE yayınlandı — mevcut bağımlılık etkileniyor
- Manifest güncellendi — yeni bağımlılık eklendi, CVE’si var
- Günlük tarama — GitHub periyodik olarak yeniden değerlendirir
CVSS skoru ve önceliklendirme
Dependabot alert’ları CVSS (Common Vulnerability Scoring System) tabanlı severity ile gelir:
| CVSS | Severity | Sınavda öncelik |
|---|---|---|
| 9.0–10.0 | Critical | Acil — hemen |
| 7.0–8.9 | High | Kısa vadeli |
| 4.0–6.9 | Medium | Planlanmış |
| 0.1–3.9 | Low | Backlog |
Desteklenen ekosistemler
Dependabot şu paket yöneticilerini destekler:
- npm / yarn / pnpm
- pip / poetry / conda
- Maven / Gradle
- RubyGems
- NuGet
- Cargo (Rust)
- Composer (PHP)
- Go modules
Etkinleştirme
Repository:
Repo → Settings → Security → Enable Dependabot alerts
Organization (toplu):
Org → Settings → Security → Dependabot alerts → Enable all
Alert yönetimi
Alert durumları:
- Open — aktif güvenlik açığı
- Dismissed — kasıtlı kapatıldı (sebep zorunlu)
- Fixed — bağımlılık güncellemesiyle giderildi, PR birleştirildi
Dismiss sebepleri:
tolerable_risk— risk kabul edildino_bandwidth— şimdi düzeltilemezinaccurate— false positive (CVE bu kütüphane versiyonunu etkilemiyor)not_used— güvenlik açıklı kod path’i kullanılmıyor
Sırada ne var?
Dependabot security updates — güvenlik açıklarını otomatik olarak kapatan PR’ları nasıl açarsın?