Haberler Security

Her GitHub Yöneticisinin Açması Gereken 6 Güvenlik Ayarı

GitHub maintainer 6 security settings

GitHub Security ekibinden Joseph Katsioloudes, GitHub yöneticilerin bu hafta içinde kesinlikle etkinleştirmesi gereken 6 ücretsiz güvenlik ayarını paylaştı. Hepsi birlikte “Protect Your Project” guided workflow’u ile 10-15 dakikada yapılabiliyor. Ayrıca hepsi projeleri anlamlı ölçüde daha zor saldırılabilir hale getiriyor.

1. SECURITY.md dosyası ekle

SECURITY.md dosyası, zafiyet bildirimcileri için özel bir iletişim kanalı sağlıyor. Bu dosya olmadığında güvenlik araştırmacıları ya public issue açmak ya da kişisel iletişim bilgilerinizi aramak zorunda kalıyor. İkisi de kötü çözümler.

Nasıl açılır:

  • Settings → Security and quality
  • “Set up a security policy” seçin
  • SECURITY.md içine şunları yazın: iletişim e-postası veya kanalı, kapsamdaki zafiyet türleri, raportörlerden beklentiler
  • Şablon için systemd projesinin policy’sine bakabilirsiniz

Katsioloudes’un ifadesiyle: “Ten minutes, tops.” Yani en fazla 10 dakika.

2. Private Vulnerability Reporting’i aç

Bu ayar repository’de gizli advisory dosyalamayı etkinleştiriyor. Yani zafiyet raporları herkese açık olmadan triage edilebiliyor. Sorumlu ifşa iş akışları için kritik.

Nasıl açılır:

  • Settings → Security and quality
  • “Enable vulnerability reporting” bölümünü bul
  • Checkbox’ı işaretle

1-2 dakika. Katsioloudes’un vurgusu: “Bu gece tek bir şey yapacaksanız, ilk ikisini birlikte yapın.”

3. Push Protection’lı Secret Scanning

Secret scanning, anahtarların, token’ların ve credential’ların repository’ye commit edilmesini otomatik olarak engelliyor. Push protection ile birleştirildiğinde secret’lar lokal ortamdan hiç çıkmıyor.

Rakamlar korkutucu:

  • 2025’te GitHub’da 28.65 milyon secret public olarak sızdırıldı (%34 yıllık artış)
  • Ortalama data breach maliyeti global $4.44 milyon, ABD’de $10.22 milyon
  • AI destekli commit’ler secret’ları yaklaşık 2x baseline oranıyla sızdırıyor

Nasıl açılır:

  • Settings → Security and quality
  • “View detected secrets” bulun
  • Secret scanning’i etkinleştirin
  • Push protection’ı aktif edin

4. Dependabot ve Dependency Review

Dependabot üçüncü taraf paket bağımlılıklarını bilinen zafiyetler için sürekli izliyor. Dependency Review ise pull request incelemesi sırasında güvenlik bilgisini gösteriyor. Projelerinizde onlarca ya da yüzlerce dış paket varsa (ki genelde var), bu ayar kritik.

Nasıl açılır:

  • Settings → Security and quality
  • “View Dependabot alerts” tıklayın
  • Dependabot alert’lerini etkinleştirin
  • Dependency Review özelliğini de aktifleştirin

Pratik yararı: opak dependency diff’lerini iki dakikalık güvenlik incelemesine dönüştürüyor.

5. Code Scanning’i aç

Code Scanning, CodeQL motoru üzerinden static analysis çalıştırarak tehlikeli kod pattern’lerini tespit ediyor: SQL injection, command injection, güvensiz deserialization, riskli GitHub Actions workflow’ları. Open source için 2019’dan beri ücretsiz.

Nasıl açılır:

  • Settings → Security and quality
  • “Set up code scanning” seçin
  • Default setup’ı seçin (yapılandırma gerektirmez)
  • CodeQL projenizin diline uygun query pack’i otomatik seçer

Katsioloudes: “Default setup dilinize göre doğru query pack’i seçer ve her pull request’te çalışır.”

6. Default branch için Branch Protection

Bu ayar main branch’e merge etmeden önce pull request ve en az bir onay talep ediyor. Direct push’ları engelliyor. Kompromize kimlik bilgileri, katkıcı hataları ve kazara production push’larına karşı koruma sağlıyor.

Nasıl açılır:

  • Settings → Branch protection rules
  • Default branch’i seçin (genelde main/master)
  • “Require a pull request before merging” aktif edin
  • Minimum reviewers’ı 1 yapın
  • Protection’ı aktive edin

Katsioloudes’un kritik cümlesi: “Aynı zamanda diğer beş ayarın gerçekten diş göstermesini sağlayan da bu, çünkü artık Dependabot alert’leri ve code scanning bulguları bir merge’i bloklayabilir; hiç açmadığınız bir tab’ta durup kalmaz.”

Protect Your Project rehberli akış

GitHub Security Lab, tüm bu ayarları tek bir wizard üzerinden yapmanızı sağlıyor: securitylab.github.com/protect-your-project.html. Signup gerektirmiyor, tek repository için 10-15 dakikada tamamlanıyor.

Katsioloudes gerçekçi bir sınır çiziyor: “Bu altı ayar projenizi hackable olmayan yapmıyor. Hiçbir şey yapmıyor.” Ancak yaptıkları şey de önemsiz değil: yaygın saldırı vektörlerine karşı “kolay kapıları kapatıyor”. Public repository’lere karşı ölçekli exploit edilen zafiyetlerin önemli kısmını devre dışı bırakıyor.

Ek olarak: projenizi güvenli hale getirmek downstream kullanıcılarınızı ve tüm ekosistemin bağımlılık zincirini de koruyor. Yani sadece kendi projeniz için değil, sizi kullanan diğerleri için de bir güvenlik yatırımı yapmış oluyorsunuz.

Bu liste özellikle küçük ve orta ölçekli maintainer’lar için önemli bir kontrol listesi. Enterprise ekipler zaten bu ayarların çoğunu policy ile zorluyor, ama community ve hobbi projelerde bu ayarların çoğu varsayılan olarak kapalı geliyor ve sık sık atlanıyor. AI destekli commit’lerin secret sızdırma oranının iki katı olması gerçeği ise ayrıca dikkat çekici bir istatistik. Bir haftalık takvim bloklayıp bu altı ayarı geçmek, herhangi bir maintainer için değeri kadar düşük efor gerektiren nadir yatırımlardan biri.

Kaynak: https://github.blog/security/6-security-settings-every-github-maintainer-should-enable-this-week/

Yazar Hakkında

Kerem Şuğle

Solution Architect, VMware vExpert ve Microsoft sertifikalı altyapı uzmanı. VMware vSphere/vSAN/VCF, Azure, AWS, Google Cloud, enterprise sanallaştırma ve yapay zeka konularında 15+ yıl deneyim. AI/cloud dönüşümü, sovereign cloud, enterprise güvenlik ve modern altyapı mimarisi alanlarında yazıyor.

Leave a Comment