İmza İhlalini Tespit Etme

İmza İhlalini Tespit Etme

İmza İhlalini Algılama

SignaturesCompromiseDetector bu kılavuzun giriş noktasıdır: imzalı bir belgenin revizyon geçmişini, içeriğin son imzadan sonra eklenip eklenmediğine dair göstergeler için inceler ve bulduklarını bir CompromiseCheckResult olarak raporlar. Bu, bilgi tabanının bu kümesi tarafından kapsanan güvenlik yüzeyidir — imza oluşturmayı veya uygulamayı, ya da belge şifrelemeyi kapsamaz; yalnızca bir belgede zaten mevcut olan imzaları inceler.


Bir İhlal Kontrolü Çalıştırma

SignaturesCompromiseDetector‘ı incelemek istediğiniz belgeyle oluşturun, ardından SignaturesCompromiseDetector.check()‘i çağırın. Kontrol, belgede zaten bulunan her imzayı dolaşır ve son imzalı revizyondan sonra eklenmiş imzasız baytları arar — bu, içeriğin sonradan eklenmiş olabileceğinin bir işaretidir — aynı zamanda daha sonraki, kapsayıcı bir imza tarafından eklenen belge güvenlik deposu ya da arşiv zaman damgası gibi meşru uzun vadeli doğrulama materyallerine tolerans gösterir.


Sonucun Yorumlanması

SignaturesCompromiseDetector.check(), dört özelliğe sahip bir CompromiseCheckResult döndürür:

  • CompromiseCheckResult.has_compromised_signatures — herhangi bir imzanın bir müdahale göstergesi gösterdiği durumda True.
  • CompromiseCheckResult.compromised — CompromiseCheckResult.has_compromised_signatures öğesinin aynasıdır, yalnızca okunabilir bir kolaylık takma adı olarak sağlanır.
  • CompromiseCheckResult.signatures_coverage — algılayıcının belgede incelediği imza sayısı.
  • CompromiseCheckResult.reasons — belgenin ne zaman işaretlendiğini ve neden işaretlendiğini açıklayan kısa dizelerin listesi.

İmzası olmayan bir belge ya da hiç belge bulunmayan bir durum, CompromiseCheckResult.signatures_coverage değeri 0 olacak şekilde, tehlikeye girmemiş olarak raporlanır.


İpuçları ve En İyi Uygulamalar

  • CompromiseCheckResult.compromised ve CompromiseCheckResult.has_compromised_signatures öğelerini birbirinin yerine geçebilen olarak ele alın — her zaman aynı değeri rapor ederler.
  • CompromiseCheckResult.signatures_coverage öğesini, bir False sonucuna güvenmeden önce kontrol edin: 0 kapsama, algılayıcının incelenecek imza bulamadığını, mevcut imzaların sağlam olduğu doğrulanmadığını gösterir.
  • CompromiseCheckResult.has_compromised_signatures True olduğunda CompromiseCheckResult.reasons öğesini okuyun — liste, hangi sezginin tetiklendiğini açıklar; bu, sonucu bir gözden geçiren kişiye günlüğe kaydederken veya sunarken faydalıdır.
  • SignaturesCompromiseDetector değişiklik geçmişini müdahale göstergeleri için inceler; kendisi kriptografik imza bütünlüğünü doğrulamaz, bu yüzden iş akışınızda bu önemli olduğunda belgenin kendi imza-doğrulama sonuçlarıyla eşleştirin.

Sık Karşılaşılan Sorunlar

SorunNedenDüzeltme
CompromiseCheckResult.signatures_coverage, imzalı olduğunu bildiğiniz bir belge için 0SignaturesCompromiseDetector, bir belge olmadan oluşturuldu veya belge nesnesinin erişilebilir imzaları yokÇağırmadan önce, SignaturesCompromiseDetector‘a iletilen belgenin imzalarını gösterdiğinden emin olun
CompromiseCheckResult.reasons, bir açıklama beklediğiniz halde boşCompromiseCheckResult.has_compromised_signatures, bu belge için FalseNedenler yalnızca bir ihlal göstergesi gerçekten bulunduğunda doldurulur; temiz bir sonuçta boş bir liste beklenir
Meşru bir şekilde güncellenmiş PDF (ör. eklenmiş uzun vadeli doğrulama zaman damgası olan) tehlikeli olarak işaretlenirSonradan eklenen öğe, sonraki bir imza tarafından tam olarak kapsanmamış ya da yalnızca doğrulama malzemesi olarak tanınmamıştırGüncellemenin uygun bir kapsayıcı imza veya zaman damgası ile yapıldığını doğruladıktan sonra kontrolü yeniden çalıştırın ve belirli tetikleyici için CompromiseCheckResult.reasons öğesini inceleyin

FAQ

CompromiseCheckResult.compromised aslında neyi kontrol eder?

Bu, CompromiseCheckResult.has_compromised_signatures ile aynı değeri rapor eder: SignaturesCompromiseDetector.check() belgenin imzaları arasında herhangi bir müdahale göstergesi bulup bulmadığı.

0 durumunda bir signatures_coverage, belgenin güvenli olduğu anlamına mı gelir?

Hayır — bu, incelenecek imza bulunmadığı anlamına gelir. SignaturesCompromiseDetector, göremediği imzalar hakkında rapor veremez, bu nedenle 0 kapsamı bir “kontrol edilecek bir şey yok” sonucudur, bütünlüğün teyidi değildir.

SignaturesCompromiseDetector kriptografik bir imza oluşturabilir veya doğrulayabilir mi?

Hayır. Bu sınıf yalnızca bir belgenin mevcut revizyon geçmişini, içeriğin son imzadan sonra eklenip eklenmediğine dair göstergeler için inceler. İmzaların oluşturulması, uygulanması veya kriptografik olarak doğrulanması bu sınıfın kapsamı dışındadır.

İmzadan sonra geçerli bir zaman damgası eklemek her zaman bir güvenlik ihlali tespitine yol açar mı?

Gerekli değil. Algılayıcı, kendisi sonraki bir imza tarafından kapsanan daha sonraki bir eklemeye veya yalnızca yeni içerik yerine doğrulama materyali ekleyen bir eklemeye tolerans gösterecek şekilde tasarlanmıştır. Beklenmeyen bir tespit görürseniz CompromiseCheckResult.reasons kontrol edin.


API Reference Özeti

Sınıf/YöntemAçıklama
SignaturesCompromiseDetectorSon imzadan sonra bir imzalı belgeyi müdahale göstergeleri açısından inceler
SignaturesCompromiseDetector.check()Kontrolü çalıştırır ve bir CompromiseCheckResult döndürür
CompromiseCheckResultBir ihlal kontrolünün sonucu
CompromiseCheckResult.compromisedCompromiseCheckResult.has_compromised_signatures için salt okunur takma ad
CompromiseCheckResult.has_compromised_signaturesBir manipülasyon göstergesinin bulunup bulunmadığı
CompromiseCheckResult.signatures_coverageİncelenen imzaların sayısı
CompromiseCheckResult.reasonsHerhangi bir bulguyu açıklayan kısa dizeler

Ayrıca Bakınız

 Türkçe