Mimari, derin savunma prensibi etrafında şekillenir ve bu, sadece erişim kontrollerine dayanmak yerine kriptografik güvenceleri kullanır.
Alım Katmanı: Mikro servisler, bölgesel Apache Kafka kümelerine yapılandırılmış denetim olaylarını gönderir. TLS 1.3 ve mTLS kimlik doğrulaması ile yapılandırılmıştır. Kafka Connect bu olayları, Amazon S3 Nesne Kilit Modu veya Azure Değişmez Blob Depolama gibi WORM (Yazılır Bir Kez, Okunur Birçok Kez) nesne depolama alanına toplar. Bu yapılandırma, tanımlı bir saklama süresi boyunca silinmeyi veya değiştirilmesini fiziksel olarak engeller ve kök kimlik bilgileri ifşa olsa bile devam eder.
Bütünlük Katmanı: Her günlük partisi bir Merkle ağacı içinde hash'lenir ve kök, bir Donanım Güvenlik Modülü (HSM) veya AWS Nitro Enclaves gibi bulut yerel enclave'ler tarafından imzalanır. Bu imzalanmış kökler, çapraz bulut noterlik katmanı oluşturmak için periyodik olarak ikincil değişmez defterlere (örneğin, GCP Cloud Storage kovaları ile saklama kilitleri) yayınlanır. Bu, tek bir bulut sağlayıcısının ihlali durumunda, güven zincirinin tamamını geçersiz kılmamasını garanti eder.
Sorgu Katmanı: Sıcak meta veriler (zaman damgaları, hizmet kimlikleri, ilişkilendirme kimlikleri) ClickHouse veya Apache Druid gibi kolonlu OLAP depolarında dizinlenir, tam şifreli yükler ise soğuk S3 Glacier veya Azure Archive depolarında bulunur. Adli sorgular öncelikle OLAP dizinine başvurarak zaman aralıklarını belirler, ardından HashiCorp Vault tarafından yönetilen anahtarlar kullanılarak belirli şifreli blokları getirir.
PCI-DSS Seviye 1 verileri işleyen global bir ödeme işlemcisi, kötü niyetli kişilerin IAM kimlik bilgilerini zehirlenmiş bir CI/CD eserine dayalı olarak ele geçirdiği bir ihlal yaşadı. Acil tehdit veri sızdırma iken, kritik risk kanıtların yok edilmesi oldu—saldırganlar, yan hareket yollarını örtbas etmek için AWS CloudTrail günlüklerini silmeye çalıştılar.
Eski mimari, merkezi PostgreSQL denetim tablolarına, yumuşak silme bayraklarına ve standart S3 kovalarına dayanıyordu. Bu, ihlal edilen kimlik bilgilerinin s3:DeleteObject izinlerine sahip olması nedeniyle başarısız oldu; bu da, uyum penceresi içinde günlüklerin temizlenmesine olanak tanıdı.
Çözüm A: Veritabanı Tetikleyicileri ile RLS
Bu yaklaşım, silme işlemlerini bir arşiv tablosuna yönlendiren PostgreSQL tetikleyicilerini uyguladı ve Satır Düzey Güvenliği (RLS) uygulandı. Artıları, altyapıda minimum değişiklik ve ilişkisel sorgular için ACID uyumluluğuydı. Eksileri ciddiydi: bir veritabanı süper kullanıcısı tetikleyicileri devre dışı bırakabilir veya arşivlenmiş satırları değiştirebilir ve çözüm, bütünlüğün kriptografik kanıtına sahip değildi, bu da onu yargı işlemlerinde geçersiz kılıyordu.
Çözüm B: İzinli Blok Zinciri
Bu öneri, dağıtılmış defterin değişmezliğinden yararlanmak için Hyperledger Fabric içinde hash işaretçilerini saklamayı önerdi. Artıları, doğasında gelen müdahale direnci ve merkeziyetsiz güven idi. Eksileri korkutucuydu: işlem gecikmesi ortalama beş saniye, yüksek frekanslı ticaret günlükleri için alt saniye gereksinimini ihlal ediyordu ve petabayt ölçeğindeki ham veri için zincir içi depolama maliyetleri ekonomik olarak sürdürülebilir değildi.
Çözüm C: Hibrid WORM ile Merkle Onayı
Bu seçilen çözüm, kök hesap sahipleri için bile silmeyi fiziksel olarak engelleyen Amazon S3 Nesne Kilit Modu ile yedi yıllık bir saklama süresi sağladı. Apache Kafka, alt saniye üretici onayını korumak için olayları bölgesel olarak yastıkladı. Merkle ağaçları, her dakika hesaplandı ve AWS Nitro Enclaves tarafından imzalandı; bu, özel anahtarların hipervizöre erişim dışı kalmasını sağladı. Bu imzalanmış kökler, çok bulutlu bir noterlik katmanı oluşturmak için Azure değişmez kovalarına yedeklendi. Sonuç başarılıydı: saldırgan uygulama verilerini sildi, ancak denetim yolu sağlam kaldı. Adli ekipler, ClickHouse kullanarak saldırı penceresini saniyeler içinde belirledi, değişmez günlükleri S3'ten aldı ve çapraz bulut köklerine karşı Merkle kanıtlarını doğrulayarak mahkemeye kabul edilebilir delil sağladı.
HSM içindeki imzalama anahtarlarını, tarihsel günlüklerin kriptografik güven zincirini bozmadan nasıl döndürürsünüz?
Anahtar döngüsü genellikle basit bir geçiş olarak kabul edilir, ancak müdahaleye karşı kanıtlı sistemlerde, basit bir döngü, önceki imzaların geçersiz hale gelmesi riskini taşır. Çözüm, master anahtar için örtüşen sertifika zincirleri ile Shamir'ın Gizli Paylaşımı uygulamasını kullanır. Döngü gerçekleştiğinde, yeni anahtar, eski genel anahtarın hash'ini ve bir zaman damgasını içeren bir "döngü olayı" imzalar. Bu olay, geçişten önce günlük zincirine eklenir. Tarihsel doğrulama, imzalama sırasında geçerli olan anahtarı kullanırken, döngü olayı kendisi hem eski hem de yeni anahtarlar tarafından imzalanır (çift imzalı geçiş). HashiCorp Vault, bu yaşam döngüsünü otomatik döngü politikaları ile PKI gizli motorları kullanarak yönetir ve sertifikaları adli araçlara erişilebilir bir kamu JWKS son noktasına yayınlar.
Müdahale kanıtı elde etmek için bir blok zincirinin neden gereksiz olduğunu ve bu senaryo için onu uygun hale getirmeyen belirli verim sınırlarını belirtin?
Adaylar genellikle değişmezliği blok zinciri ile karıştırır. Blok zinciri, merkezi bir otorite olmaksızın karşılıklı olarak güvenmeyen taraflar için Bizans Genel Probleme çözüm getirir. Bir kurumsal denetim sisteminde, varlık kendisi güven bağlamıdır; tehdit modeli içeriden bir ihlal, arası işbirliği değil. Bu nedenle, sadece ekleme WORM depolaması ve Merkle ağaç doğrulaması, konsensüs yükü olmadan yeterli değişmezlik sağlar. Hyperledger Fabric, küresel olarak dakikada yaklaşık 3,000 işlem gerçekleşirken, tek bir Kafka bölümü 10 MB/s (milyonlarca küçük denetim olayı) işleyebilir. Daha kritik bir şekilde, blok zinciri kesinlik gecikmesi (saniyelerden dakikalara) gerçek zamanlı şüpheli erişim kalıpları için alt saniye yazma gereksinimini ihlal eder.
Tüm şifreli, zincirlenmiş günlükler üzerinde sorgu performansını nasıl korursunuz, çünkü her adli soruşturma için tüm veri kümesini şifre çözmeniz mümkün değildir?
Her sorgu için tam tablo şifre çözümü yapmak, hesaplama açısından yasaklayıcıdır. Mimari, zarf şifrelemesi ve hiyerarşik anahtar türetme ile çalışır. Metadata—zaman damgaları, hizmet kimlikleri ve kullanıcı bağlamları gibi—ayrıca şifrelenir ve düz metin (veya sorguya özgü bir anahtar ile şifreli) olarak ClickHouse içinde dizinlenir. Ağır yük, kendi DEK'si ile soğuk depolamada şifreli kalır. Bir analist "2 AM ile 3 AM arasında tüm yönetici işlemlerini" sorguladığında, ClickHouse nesne işaretçilerini geri döner. Yalnızca bu özel nesneler Glacier'dan alınır, TTL ile önbellekte saklanan anahtarlar kullanılarak şifreleri çözülür ve sunulur. Bu meta veri dizinleme deseni, sorgu sürelerini saatlerden birkaç saniyeye indirirken, dinamik olarak dinlenme sırasında uçtan uca şifrelemeyi korur.