Güvenlikle İlgili En İyi Uygulamalar
Hassas belgeler ve blok zinciri işlemlerini ele alırken güvenlik çok önemlidir. Bu kılavuz, üretim ortamlarında Chaindoc'u dağıtmak ve sürdürmek için gerekli temel güvenlik uygulamalarını özetlemektedir.
Kimlik Doğrulama ve Yetkilendirme
Çok Faktörlü Kimlik Doğrulama (MFA)
Tüm kullanıcı hesapları için, özellikle yöneticiler ve yükseltilmiş ayrıcalıklara sahip kullanıcılar için MFA'yı her zaman etkinleştirin. Chaindoc şunları destekler:
- Doğrulayıcı uygulamalar aracılığıyla zaman tabanlı tek kullanımlık şifreler (TOTP)
- SMS tabanlı doğrulama (daha az güvenli, yalnızca gerekli olduğunda kullanın)
- Donanım güvenlik anahtarları (FIDO2/WebAuthn)
- Desteklenen cihazlarda biyometrik kimlik doğrulama
Güçlü Şifre Politikaları
Güçlü şifre gereksinimlerini uygulayın:
- Karmaşıklık gereksinimleri ile en az 12 karakter
- Hassas hesaplar için şifrelerin 90 günde bir sona ermesi
- Şifrelerin tekrar kullanılmasının önlenmesi (son 10 şifre)
- 5 başarısız giriş denemesinden sonra kilitleme
- Oluşturma sırasında şifre gücü ölçer
Rol Tabanlı Erişim Kontrolü (RBAC)
Kullanıcılara yalnızca ihtiyaç duydukları izinleri atayarak en az ayrıcalık ilkesini uygulayın:
- Net roller tanımlayın: Görüntüleyen, Düzenleyen, Yönetici, Denetçi
- Belge erişimi için ayrıntılı izinler kullanın
- Kullanıcı rollerini düzenli olarak denetleyin ve gereksiz erişimleri kaldırın
- Geçici sözleşmeli çalışanlar için zamana dayalı erişim uygulayın.
- Kritik işlemler için ayrı görevler (ör. onay iş akışları)
Veri Şifreleme
Dinlenme Halinde Şifreleme
Tüm hassas veriler depolandığında şifrelenmelidir:
- Belge depolama için AES-256 şifreleme kullanın
- Veritabanı yedeklemelerini ayrı anahtarlarla şifreleyin
- Şifreleme anahtarlarını özel bir anahtar yönetim hizmetinde (KMS) saklayın.
- Şifreleme anahtarlarını üç ayda bir değiştirin.
- Tüm sunucularda ve iş istasyonlarında tam disk şifrelemesini etkinleştirin.
Aktarım Sırasında Şifreleme
İletim sırasında verileri koruyun:
- Tüm bağlantılar için TLS 1.3'ü uygulayın
- Güçlü şifreleme paketleri kullanın (zayıf şifrelemeleri devre dışı bırakın)
- Mobil uygulamalar için sertifika sabitleme uygulayın
- HSTS'yi (HTTP Strict Transport Security) etkinleştirin.
- Blockchain işlemleri için şifreli kanallar kullanın.
Blockchain Güvenliği
Özel Anahtar Yönetimi
Blockchain özel anahtarları en kritik güvenlik varlıklarıdır:
- Özel anahtarları asla düz metin veya kod depolarında saklamayın.
- Üretim anahtarları için donanım güvenlik modülleri (HSM'ler) kullanın.
- Yüksek değerli işlemler için çoklu imza cüzdanları uygulayın
- Güvenli çevrimdışı depolama ile önemli yedekleme prosedürleri oluşturun
- Farklı ortamlar için ayrı anahtarlar kullanın (dev, staging, prod)
Akıllı Sözleşme Güvenliği
Özel akıllı sözleşmeler kullanıyorsanız:
- Dağıtımdan önce kapsamlı güvenlik denetimleri gerçekleştirin.
- Yerleşik kalıpları kullanın ve deneysel kodlardan kaçının
- Acil durum durdurmaları için devre kesiciler uygulayın
- Ana ağa dağıtımdan önce test ağlarında kapsamlı testler yapın.
- Olağandışı işlem modellerini izleyin
Blockchain Denetim İzleri
Değiştirilemez denetim günlüğü için blok zincirinden yararlanın:
- Tüm belge durum değişikliklerini zincir üzerinde kaydedin
- Doğrulama için hassas işlemleri hashleyin
- Uyumluluk için zaman damgası kanıtları uygulayın
- Zincir üzerindeki veri bütünlüğünü düzenli olarak kontrol edin.
- Blockchain işlem makbuzlarını arşivleyin
API Güvenliği
API Kimlik Doğrulama
Tüm API uç noktalarını güvenli hale getirin:
- Kimlik doğrulama için OAuth 2.0 veya JWT belirteçlerini kullanın
- Token süresinin dolmasını uygulayın (erişim tokenleri için 15-60 dakika)
- API anahtarlarını düzenli olarak değiştirin (en az 90 günde bir).
- Farklı hizmetler için ayrı API anahtarları kullanın.
- API anahtarlarını asla istemci tarafı kodunda ifşa etmeyin.
Hız Sınırlama ve DDoS Koruması
Kötüye kullanımı ve hizmet kesintilerini önleyin:
- API anahtarı ve IP adresi başına hız sınırlaması uygulayın
- Başarısız istekler için üstel geri çekilme kullanın
- Web Uygulaması Güvenlik Duvarı (WAF) dağıtın
- CDN/bulut sağlayıcı düzeyinde DDoS korumasını etkinleştirin
- Anormal trafik modellerini izleyin
Giriş Doğrulama ve Temizleme
Enjeksiyon saldırılarına karşı koruma sağlayın:
- Tüm giriş verilerini katı şemalara göre doğrulayın
- Kullanıcı tarafından sağlanan içeriği depolamadan/görüntülemeden önce temizleyin.
- SQL enjeksiyonunu önlemek için parametreli sorgular kullanın.
- İçerik Güvenliği Politikası (CSP) başlıklarını uygulayın
- Tüm bağlamlarda (HTML, JavaScript, URL'ler) çıktıyı kaçırın.
Altyapı Güvenliği
Ağ Segmentasyonu
Önemli bileşenleri ayırın:
- Üretim, hazırlık ve geliştirme ortamlarını ayırın.
- Hassas hizmetler için VPC'leri ve özel alt ağları kullanın.
- Veritabanı erişimini yalnızca uygulama sunucularıyla sınırlandırın
- Varsayılan olarak reddetme ilkeleriyle güvenlik duvarı kuralları uygulayın
- Yönetimsel erişim için atlama ana bilgisayarları/bastion sunucuları kullanın.
Yama Yönetimi
Sistemleri güncel tutun:
- Güvenlik yamalarını yayınlandıktan sonra 48 saat içinde uygulayın.
- Kırılmayan değişiklikler için bağımlılık güncellemelerini otomatikleştirin
- Konteyner görüntülerini ve temel işletim sistemini düzenli olarak güncelleyin.
- Kullanılan tüm teknolojiler için güvenlik uyarılarına abone olun.
- Üretim dağıtımından önce test yamalarını hazırlık aşamasında test edin
Konteyner ve Orkestrasyon Güvenliği
Konteynerize dağıtımlar kullanılıyorsa:
- Minimum temel görüntü kullanın (Alpine, Distroless)
- Dağıtımdan önce görüntüleri güvenlik açıkları açısından tarayın
- Konteynerleri root olmayan kullanıcılar olarak çalıştırın
- Pod güvenlik politikaları/standartlarını uygulayın
- Gizli bilgi yönetimini kullanın (ortam değişkenlerini değil)
- Podlar arası trafiği kısıtlamak için ağ ilkelerini etkinleştirin
Uyum ve Denetim
Yasal Uygunluk
İlgili düzenlemelere uyulduğundan emin olun:
- GDPR: Silme ve veri taşınabilirliği hakkını uygulayın
- HIPAA: Sağlık verileri için denetim günlüğü ve erişim denetimlerini etkinleştirin.
- SOC 2: Güvenlik kontrollerini belgelendirin ve yıllık denetimler gerçekleştirin
- ISO 27001: Bilgi güvenliği yönetim sistemini uygulayın
- Sektöre özgü düzenlemeler (ör. finansal hizmetler, hukuk)
Denetim Günlüğü
Güvenlik ve uyumluluk için kapsamlı günlükler tutun:
- Tüm kimlik doğrulama girişimlerini (başarılı ve başarısız) günlüğe kaydedin.
- Belge erişimlerini, değişiklikleri ve silme işlemlerini kaydedin.
- Yönetimsel işlemleri ve yapılandırma değişikliklerini takip edin
- Günlükleri, kurcalanmaya karşı korumalı, merkezi bir sistemde saklayın.
- Günlükleri en az 1 yıl (veya yasal gerekliliklere göre) saklayın.
- Şüpheli etkinlikler için günlük izleme ve uyarı sistemi uygulayın.
Düzenli Güvenlik Denetimleri
Periyodik güvenlik değerlendirmeleri yapın:
- Üç ayda bir güvenlik açığı taraması yapın.
- Üçüncü taraflarca yıllık sızma testleri gerçekleştirin.
- Erişim denetimlerini ve kullanıcı izinlerini aylık olarak gözden geçirin.
- Blockchain işlemlerini anormallikler açısından denetleyin
- Yedekleme ve felaket kurtarma prosedürlerini üç ayda bir test edin.
İzleme ve Olaylara Müdahale
Güvenlik İzleme
Gerçek zamanlı güvenlik izleme uygulayın:
- SIEM (Güvenlik Bilgisi ve Olay Yönetimi) sistemini devreye alın
- Başarısız oturum açma girişimleri ve ayrıcalık yükseltme için uyarılar ayarlayın.
- Olağandışı veri erişim modellerini izleyin
- API kullanımındaki anormallikleri takip edin
- Saldırı tespit/önleme sistemleri (IDS/IPS) kullanın.
Olay Müdahale Planı
Güvenlik olaylarına hazırlıklı olun:
- Olay müdahale prosedürlerini belgelendirin
- Eskalasyon yollarını ve iletişim bilgilerini tanımlayın.
- Yaygın güvenlik senaryoları için çalışma kitapları oluşturun
- Üç ayda bir masaüstü tatbikatları yapın.
- İhlaller için iletişim protokolleri oluşturun
- Adli analiz yeteneklerini koruyun
Yedekleme ve Felaket Kurtarma
İş sürekliliğini sağlayın:
- Otomatik günlük yedeklemeler uygulayın
- Yedeklemeleri coğrafi olarak dağıtılmış konumlarda saklayın
- Tüm yedekleme verilerini şifreleyin
- Geri yükleme prosedürlerini aylık olarak test edin.
- Fidye yazılımlarına karşı koruma için çevrimdışı yedeklemeler yapın.
- Belge Kurtarma Süresi Hedefi (RTO) ve Kurtarma Noktası Hedefi (RPO)
Geliştirme Güvenliği
Güvenli Geliştirme Yaşam Döngüsü
Güvenliği geliştirmeye entegre edin:
- Güvenlik odaklı kod incelemeleri gerçekleştirin
- Statik uygulama güvenliği testi (SAST) araçlarını kullanın.
- CI/CD boru hattında bağımlılık taraması uygulayın
- Tüm geliştiriciler için güvenlik eğitimi zorunlu kılın
- Asla gizli bilgileri sürüm kontrolüne kaydetmeyin.
- Hassas veri sızıntılarını önlemek için önceden taahhüt kancaları kullanın
Üçüncü Taraf Bağımlılıkları
Harici kütüphane risklerini yönetin:
- Bağımlılıkları düzenli olarak en son güvenli sürümlerine güncelleyin
- Dependabot, Snyk veya npm audit gibi araçları kullanın.
- Kullanılan paketler için güvenlik uyarılarını inceleyin.
- Bağımlılık sayısını en aza indirin
- Paketin bütünlüğünü ve bakımcının itibarını doğrulayın.
- Kritik bağımlılıkları satıcıya devretmeyi düşünün
Kullanıcı Eğitimi ve Bilinçlendirme
Güvenlik herkesin sorumluluğundadır:
- Tüm kullanıcılar için güvenlik bilinci eğitimi düzenleyin.
- Kimlik avı ve sosyal mühendislik eğitimi verin.
- Açık güvenlik politikaları ve yönergeleri oluşturun
- Güvenlik endişeleri için raporlama mekanizmaları oluşturun.
- Güvenlik açıklarının sorumlu bir şekilde ifşa edilmesini ödüllendirin
- Güvenlik belgelerini güncel tutun
Güvenlik Kontrol Listesi
Üretime geçmeden önce bu kontrol listesini kullanın:
- ✓ Tüm kullanıcı hesapları için MFA etkinleştirildi
- ✓ Güçlü şifre politikaları uygulanır
- ✓ En az ayrıcalık ile RBAC uygulandı
- ✓ Tüm veriler depolandığı ve aktarıldığı sırada şifrelenir
- ✓ Tüm uç noktalarda TLS 1.3 uygulanır
- ✓ Özel anahtarlar HSM veya güvenli kasada saklanır
- ✓ API hız sınırlaması yapılandırıldı
- ✓ WAF ve DDoS koruması etkinleştirildi
- ✓ Giriş doğrulama ve temizleme uygulandı
- ✓ Ağ segmentasyonu doğru şekilde yapılandırılmış
- ✓ Tüm sistemler yamalı ve güncel
- ✓ Kapsamlı denetim günlüğü etkinleştirildi
- ✓ Güvenlik izleme ve uyarı sistemi aktif
- ✓ Olay müdahale planı belgelenmiş ve test edilmiştir
- ✓ Otomatik yedeklemeler yapılandırıldı ve test edildi
- ✓ CI/CD boru hattında güvenlik taraması
- ✓ Uyumluluk gereklilikleri belgelenmiş ve karşılanmış
Ek Kaynaklar
Chaindoc güvenliği hakkında daha fazla bilgi için:
- OWASP En Önemli 10 Web Uygulaması Güvenlik Riski
- NIST Siber Güvenlik Çerçevesi
- CIS Güvenlik Ölçütleri
- Blockchain Güvenliği En İyi Uygulamaları (Consensys)
- Bulut Güvenliği Birliği Yönergeleri
Güvenlik sorunları veya sorularınız için security@chaindoc.com adresinden güvenlik ekibimizle iletişime geçin veya sorumlu açıklama programımız aracılığıyla güvenlik açıklarını bildirin.