At Rest şifreleme
Dinlenme Şifrelemesinde
1) Neden ihtiyaç duyulduğu ve tam olarak neyi koruduğumuz
Tanımı. Dinlenme sırasında şifreleme, medyaya (diskler, anlık görüntüler, yedeklemeler, nesneler, günlükler, bellek dökümleri) yazılan verilerin korunmasıdır, böylece fiziksel ortama veya "ham" depolamaya yetkisiz erişim içeriği ortaya çıkarmaz.
Neleri kapsıyoruz:- Blok/dosya birimleri, nesne depoları, veritabanları, kuyruklar/mağaralar, önbellek dökümleri, günlükler/yollar, yedeklemeler, dışa aktarma/içe aktarma, VM/konteyner anlık görüntüleri, çekirdek/süreç dökümleri, takas/takas.
- Çoklu kiralama senaryoları: müşteriler/projeler/ortamlar arasında izolasyon.
Tam olarak ele almadıklarımız: bellekteki oturumların çalınması, canlı bir sürece yönelik saldırılar, uygulama güvenlik açıkları, kimlik bilgilerinin tehlikeye atılması. Bu, uçuş sırasında şifreleme, güçlü kimlik doğrulama/yetkilendirme, hakların en aza indirilmesi ve izlenmesini gerektirir (ilgili makalelere bakın: "Kimlik doğrulama ve yetkilendirme", "Talepleri imzalama ve doğrulama").
2) Tehdit modeli ve kontrol hedefleri
Tipik riskler:- Medya kaybı/hırsızlığı (disk, teyp, USB, geliştirici cihazı).
- Yedeklere/anlık görüntülere/günlüklere yetkisiz erişim.
- Platform/hipervizör/depolama düğümü düzeyinde ayrıcalıkların kötüye kullanılması.
- Yapılandırma hataları için kiracıları geçiyor.
- "Dağınık" geçici dosyalar ve eserler ve görüntülere düşen çöplükler.
1. Ortam üzerindeki verilerin gizliliği.
2. Kiracıların/ortamların kriptografik izolasyonu.
3. Anahtar yönetilebilirliği (oluşturma, depolama, döndürme, iptal etme).
4. Denetlenebilirlik (anahtarı kimin ve ne zaman kullandığı).
5. Olay durumunda operasyonel risklerin minimize edilmesi.
3) Mimarlık temelleri
Varsayılan olarak her şeyi şifreleriz. Risk düzeyinde istisnalar olmadan devre dışı bırakmaya izin verilmez.
Anahtar hiyerarşisi (zarf şifreleme). Kök/KEK - DEK (veri şifreleme anahtarları) - veritabanı nesneleri/dosyaları/sayfaları.
Güven kaynağı olarak KMS/HSM. KEK üretimi ve KMS/HSM'de depolama, anahtar sarma/dağıtım işlemleri burada gerçekleştirilir.
Kiracı başına/veri kümesi başına anahtarlar. İzolasyon ve rotasyon gereksinimleri için granülerlik.
Görev ayrımı. Kiracı anahtar sahipleri ≠ platform komutları; Minimum ayrıcalıklar (PoLP).
Kripto çeviklik. Algoritmaları/anahtar uzunluklarını güvenli bir şekilde taşıma becerisi.
Süreç olarak rotasyon, olay değil. Anahtarlar ve veriler "haddeleme" değişimini desteklemelidir.
4) Şifreleme algoritmaları ve modları
Nesneler/dosyalar/kayıtlar için: AES-256-GCM veya AES-256-SIV (kimlik doğrulama ile AEAD).
Blok cihazlar/hacimler için: AES-XTS-256/512 (blok permütasyonlarına karşı koruma; AEAD değil - bütünlüğün önemli olduğu MAC ile dosya formatları üzerinden kullanın).
- TDE (Şeffaf Veri Şifreleme) движка: Oracle TDE, SQL Server TDE, MySQL/InnoDB TDE и пр.
- Alan/satır kriptografisi (FPE/deterministik şifreleme) - şifreli alanlarda arama yetenekleri/sevinçleri için; tedbirli bir şekilde uygulayın.
- Anahtar üretimi ve depolama: KEK - KMS/HSM'de; DEK - kısa ömürlü uygulamaların belleğinde, depolama sırasında - sadece sarılmış.
5) Anahtar hiyerarşisi ve KMS/HSM
Seviyeler:1. Kök anahtar (yasal, HSM/KMS'de). HSM/KMS çevresini terk etmez.
2. KEK (Anahtar Şifreleme Anahtarı). Proje/çevre/kiracı için. DEK yaşam döngüsünü yönetir.
3. DEK (Data Encryption Key - Veri Şifreleme Anahtarı). Nesne/dosya/tablo/segment başına. Kısa ömürlü, durmadan dönen.
Uygulamalar:- Tüm sarma/dağıtım işlemleri denetim ile KMS API üzerinden yapılır.
- Politikacılar: Anahtarı "kullanabilen" ≠ anahtarı "kontrol edebilen".
- Anahtar coğrafi dağıtım: bölgeler arası pin-to-region + dual-control.
- Yüksek riskli operasyonlar için "iki kontrol" modeli (iki operatör) mümkündür.
- Güçlü bir seviyeyi izole etmek için - kiracı başına ayrı anahtar halkaları.
6) Rotasyon, geri çağırma ve uyumluluk
DEK döndürme: saydam ve sabit (nesne/sayfa düzeyinde yuvarlanan yeniden şifreleme).
KEK rotasyonu: periyodik (örneğin, her 6-12 ayda bir) + tehlikeye girdiğinden şüphelenilirse anında geri çağırma.
Erişimin iptali: KMS politikaları aracılığıyla; unwrap işlemlerini engelleme = verilerin anında "kripto-yok edilebilirliği".
Denetim günlükleri: kim, ne zaman, hangi haklarla anahtarları kullandı; Ayrı ayrı saklayın ve ayrıca şifreleyin.
Düzenlemeler ve standartlar: Endüstri gereksinimlerine odaklanıyoruz (örneğin, GDPR/PCI izinleri/yerel düzenleyiciler), sertifikalı şifreleme modülleri kullanıyoruz (örneğin, sertifikasyon seviyelerine uygunluk).
7) Depolama türüne göre desenler
7. 1 Blok/dosya birimleri ve VM/kapsayıcılar
KMS üzerinden tam disk şifreleme (XTS) + anahtar yönetimi (montaj sırasında birim başlatma).
Takas, çökme dökümleri, tmp dizinleri, konteyner kaplama katmanları/AMI görüntülerini koruyun.
Anlık görüntüler/snapshot'lar - her zaman ayrı DEK'lerle şifrelenir.
7. 2 Nesne depolama
Zarf şifreleme: Nesne başına benzersiz DEK; Üstbilgiler/meta veriler - PII sızıntısı yok.
Kiracılar ve ortamlar tarafından KMS anahtarına erişimi denetleyin.
Sunucu tarafı şifreleme (kendi KMS'si olan SSE) veya istemci tarafı (CSE) - güven modeline göre seçim yapın.
7. 3 Veritabanları
Mümkünse TDE'yi etkinleştirin; Veritabanı anahtarlarını eklenti/uzantı yoluyla KMS'ye bağlayın.
Özellikle hassas alanlar için - veritabanına girmeden önce uygulama şifreleme (AEAD).
Günlükleri/işlem günlüklerini, arşiv günlüklerini, dökümleri yeniden düzenleyin - ayrı ayrı şifreleyin, anahtarlar - ayrı.
7. 4 Günlükler/İzler/Metrikler
Günlük formatı - varsayılan olarak hassas veriler olmadan (sanitasyon).
Günlük arşivleri - ayrı anahtarlar ve kısa TTL depolama.
Okuma günlüklerine erişim - A&A ve denetime sahip bir proxy hizmeti aracılığıyla.
7. 5 Yedeklemeler ve çevrimdışı medya
Teybe/buluta yazmadan önce daima istemcide şifreleyin.
Anahtarları ayrı olarak saklayın (bant dışı), ayrı kontrollü emanet.
Acil durumlarda, ana erişimi geri yüklemek için sırrı bölmek (örneğin, m-of-n).
8) Çok kiracı
Kiracı anahtarı: Kiracı başına KEK + veri kümesi başına DEK.
Politika yalıtımı: KMS ad alanları, IAM sınırları, bireysel IDP rolleri.
Müşterinin isteği üzerine kaldırma: "kripto-silme" - kiracının KEK'sini geri çekin ve DEK'yi yok edin.
Müşteri raporlaması: uyumluluk artifaktları, anahtar erişim günlükleri, rotasyon onayı.
9) Performans ve çalışma
Donanım hızlandırmaları (AES-NI/x86, ARMv8 Crypto Extensions).
Sıcak yol profili oluşturma: G/Ç sınırlarında şifreleyin, gereksiz yere çift şifrelemeden kaçının.
KMS oturum havuzları, bellekte önbelleğe alma sarılı DEK'ler (TTL ve damper koruması ile).
SLO/metrikler: açma gecikmesi, "yeniden şifrelenmiş" nesnelerin oranı, KMS hataları, yedekleme şifreleme hızı.
10) Referans runbook
Adım 0 - Veri envanteri. Tüm depoları ve sızıntı yollarını (tmp, dökümü, ihracat, analiz kovaları) kataloglayın.
Adım 1 - anahtar hiyerarşisi tasarımı. KEK/DEK seviyelerini, granülariteyi, bölgeleri, rolleri belirliyoruz.
Adım 2 - modları/kütüphaneleri seçin. Onaylanmış algoritmalar, kripto kütüphaneleri, sürüm politikaları.
Adım 3 - KMS/HSM ile entegrasyon. Üretim/sarma/denetim, IAM politikaları, coğrafi sabitleme.
Adım 4 - yazma başına şifreleme. Varsayılan olarak, arka plan yeniden şifrelemesi yoluyla mevcut verilerin taşınmasını etkinleştirin.
Adım 5 - rotasyon ve acil durum senaryoları. Yönetmelikler, testler "anahtar uzlaşma", "KMS mevcut değil".
Adım 6 - izleme ve denetim. Panolar, uyarılar, düzenli uyumluluk raporları.
Adım 7 - eğitim ve "güvenli kodlama. "Mühendisler için kılavuzlar, sırları günlüklerde/çöplüklerde gösterme yasağı.
11) Test ve doğrulama
Kripto birim testleri: AEAD'in doğruluğu (etiket kontrolü), bir bayt değiştirildiğinde başarısızlığın doğrulanması.
Hata testleri: KMS'yi devre dışı bırakma, eski anahtar sürümleri, KEK iptalini zorladı.
Kırmızı/Mavi testler: "Ham" diski/anlık görüntüyü/yedeklemeyi okumaya çalışır.
Uyumluluk kontrolü: algoritmaların/anahtar uzunluklarının geçişi (kripto çeviklik).
Kütüphane onayı: yalnızca doğrulanmış kripto modüllerini kullanın; Commit versiyonları.
12) Sık yapılan hatalar ve bunlardan nasıl kaçınılacağı
Anlamsız çift şifreleme. Ekstra gecikme ve karmaşıklık. İstenilen granülariteyi ve izolasyonu sağlayan bir katman tutun.
Anahtarları verilerin yanında sakla. Anahtarlar farklı bir erişim modeli altında her zaman ayrıdır.
Unutulmuş eserler. Şifrelenmemiş geçici dosyalar, CSV dışa aktarma, destek dökümü. CI/CD ve Veri Kaybı Önleme izleme etkinleştirin.
Rotasyon eksikliği. Boru hattının/cron'un rotasyon kısmını manuel bir prosedür değil yapın.
Hassas verilerle günlükler. Günlük formatı ve otomatik dezenfektanlar için bir sözleşme girin.
13) Mini tarifler (pseudocode)
Zarf-nesne şifreleme:
1) Request unwrap DEK from KMS by tenant KEK id dek = kms. unwrap(kek_id, wrapped_dek)
2) Generate fresh nonce/iv, encrypt payload (AEAD)
ciphertext, tag = aead_encrypt(dek, iv=random(), aad=metadata, plaintext=data)
3) Delete DEK from memory (zeroize), save {ciphertext, iv, tag, wrapped_dek}
Kesinti olmadan KEK rotasyonu:
For each object:
new_wrapped_dek = kms. rewrap(old_wrapped_dek, old_kek_id -> new_kek_id)
store(new_wrapped_dek)
We do not touch the data: we turn over only DEK
"Kripto silme" veri kümesi:
kms. disable_key (tenant_kek_id) # Deny unwrap kms. schedule_destroy (tenant_kek_id, hold_period_days=7) # Optional hold
14) Kontrol listeleri
Üretime başlamadan önce:- Varsayılan şifreleme tüm depolama türlerinde etkindir.
- Anahtar hiyerarşi tanımlanmış ve uygulanmıştır; Roller ve IAM politikaları yapılandırılmıştır.
- KMS/HSM entegre, anahtar işlemleri denetim etkin.
- DEK/KEK rotasyonu otomatiktir; uzlaşma senaryoları işe yaradı.
- Yedeklemeler, anlık görüntüler, günlükler ve dökümler - şifrelenmiş; Anahtarlar ayrı depolanır.
- KMS hataları, AEAD etiket sapmaları, şifrelenmemiş yapayların oranı için yapılandırılmış uyarılar.
- KMS kullanılamaması ve anahtar iptal testleri geçti.
- Önemli kullanım ve erişim girişimleri hakkında aylık rapor.
- Kripto-çeviklik planı ve ağrısız algoritma geçişi için pencere.
- Ham medyadan veri çıkarmak için Periyodik Kırmızı takım.
15) SORU-CEVAP (SSS)
S: Tam disk şifrelemesi yeterli mi?
C: Fiziksel riskler için - evet, ancak kiracıların izolasyonu ve esnek rotasyon için DEK- on-object/set ile daha iyi zarf.
S: KEK tehlikeye girdiğinde ne yapmalı?
C: KEK'i hemen KMS'ye geri çağırın, yenilerini yeniden yayınlayın, tüm DEK'leri yeniden paketleyin, günlükleri kontrol edin ve RCA'yı çalıştırın.
S: Aradığımız alanları nasıl şifreleriz?
C: Deterministik şemaları veya FPE'leri yalnızca titiz risk değerlendirmesinde (örüntü lekleri) kullanın. Hassas alanların dizine eklenmiş bir açık görünüm gerektirmeyecek şekilde sorgular tasarlamak daha iyidir.
S: Anahtarlar için ayrı bir komuta ihtiyacım var mı?
C: Kripto/KMS Operatörü, ayrı hak ve prosedürlere sahip bir rol olarak önerilir.
- "Anahtar Yönetimi ve Rotasyon"
- "S2S Kimlik Doğrulama"
- "İstekleri İmzala ve Doğrula"
- "OAuth2/OpenID Çekirdeğe Bağla"
- "Webhook teslimat garantisi"