Sertifika sabitleme nedir?

Sertifika Sabitleme, güvenli oturum oluşturulurken yalnızca yetkili veya sabitlenmiş sertifikaların kabul edildiği bir güvenlik tekniğidir. Farklı bir sertifika kullanarak güvenli oturum oluşturma girişimleri reddedilir.

Sertifika sabitleme geçmişi

Sertifika sabitleme başlangıçta OrtaDaki Adam (MITM) saldırılarını engellemenin bir aracı olarak geliştirilmiştir. Sertifika sabitleme ilk olarak 2011'de DigiNotar Sertifika Yetkilisi (CA) güvenliğinin aşılmasına bağlı olarak popüler hale geldi ve burada bir saldırgan Google dahil olmak üzere birçok yüksek profilli web sitesi için joker karakter sertifikaları oluşturabildi. Chrome, Google'ın web siteleri için geçerli sertifikaları "sabitlemek" için güncelleştirildi ve farklı bir sertifika sunulduğunda herhangi bir bağlantıyı reddeder. Bir saldırgan ca'yı sahte sertifika verme konusunda ikna etmenin bir yolunu bulsa bile Chrome tarafından geçersiz olarak tanınabilir ve bağlantı reddedilir.

Chrome ve Firefox gibi web tarayıcıları bu tekniği uygulayan ilk uygulamalar arasında yer alsa da, kullanım örnekleri aralığı hızla genişledi. Nesnelerin İnterneti (IoT) cihazları, iOS ve Android mobil uygulamaları ve farklı yazılım uygulamaları koleksiyonu, OrtaDaki Adam saldırılarına karşı savunmak için bu tekniği kullanmaya başladı.

Birkaç yıl boyunca sertifika sabitleme iyi bir güvenlik uygulaması olarak kabul edildi. Genel Ortak Anahtar Altyapısı (PKI) ortamı üzerinde gözetim, genel olarak güvenilen CA'ların verme uygulamalarına saydamlık ile iyileştirildi.

Uygulamanızda sertifika sabitlemeyi adresleme

Genellikle bir uygulama, Yetkili sertifikaların listesini veya Konu Ayırt Edici Adları, parmak izleri, seri numaraları ve ortak anahtarlar gibi sertifikaların özelliklerini içerir. Uygulamalar tek tek yaprak veya son varlık sertifikalarına, alt CA sertifikalarına ve hatta Kök CA sertifikalarına sabitlenebilir.

Uygulamanız kabul edilebilir CA'ların listesini açıkça belirtiyorsa, Sertifika Yetkilileri değiştiğinde veya süresi dolduğunda sabitlenmiş sertifikaları düzenli aralıklarla güncelleştirmeniz gerekebilir. Sertifika sabitlemeyi algılamak için aşağıdaki adımların izlenmesini öneririz:

  • Uygulama geliştiricisiyseniz, kaynak kodunuzda değişen veya süresi dolan CA için aşağıdaki başvurulardan herhangi birini arayın. Eşleşme varsa, uygulamayı eksik CA'ları içerecek şekilde güncelleştirin.

    • Sertifika parmak izleri
    • Konu Ayırt Edici Adları
    • Ortak Adlar
    • Seri numaraları
    • Ortak anahtarlar
    • Diğer sertifika özellikleri
  • Özel istemci uygulamanız Azure API'leri veya diğer Azure hizmetleriyle tümleştirilirse ve sertifika sabitleme kullanıp kullanmaydığınızdan emin değilseniz uygulama satıcısına başvurun.

Sertifika sabitleme sınırlamaları

Sertifika sabitleme uygulaması, kabul edilemez sertifika çevikliği maliyetleri taşıdığından büyük ölçüde tartışmalı hale gelmiştir. Belirli bir uygulama olan HTTP Ortak Anahtar Sabitlemesi (HPKP) tamamen kullanım dışı bırakıldı

Sertifika sabitlemenin nasıl gerçekleştirildiğini gösteren tek bir web standardı olmadığından, kullanımını algılama konusunda doğrudan rehberlik sunamayız. Sertifika sabitlemeye karşı öneride bulunmayın, ancak müşteriler bu uygulamayı kullanmayı tercih ettikleri takdirde bu uygulamanın oluşturduğu sınırlamaların farkında olmalıdır.

  • Sabitlenmiş sertifikaların kısa bir süre sonra güncelleştirilediğinden emin olun.
  • CA/Browser Forumu'nun Genel Olarak Güvenilen Sertifikaların Verilmesi ve Yönetimi için Temel Gereksinimleri gibi sektör gereksinimleri, belirli durumlarda sertifikaların 24 saat kadar kısa bir süre içinde döndürülmesini ve iptal edilmesini gerektirir.

Sonraki adımlar