Microsoft Ortamında Akıllı Kart ile Kimlik Doğrulama

Kerberos protokolü Key Distribution Center (KDC)’dan bilet (ticket) alınmasıyla başlar, dolayısıyla KDC’ın her zaman ayakta olması gerekir. Açık Anahtar Altyapısı (AAA) ve sertifika kullanılması halinde kimlik doğrulama mekanizmasında güvenilir üçüncü taraf Sertifikasyon Makamı (SM) olacağından KDC’a gerek kalmaz. Bu yazıda Microsoft ortamında akıllı kart ile kimlik doğrulama mekanizması incelenecektir.

Windows 200x, Windows NT Lan Manager’dan farklı olarak kimlik doğrulama mekanizması olarak Kerberos kullanır. Kerboros, Açk Anahtar Altyapısı (AAA) ile birlikte de kullanılabilir. Windows işletim sisteminde oturum açma işlemi akıllı kart kullanarak yapılabilir. Bu durumda akıllı kartta imzalama anahtarı ve oturum açmak için uygun imzalama sertifikası olmalıdır.

Etki alanı denetleyicisinde (Domain Controller) güvenilen Sertifikasyon Makamı sertifikası bulunmalıdır. Ayrıca etki alanı denetleyicisinin de güvenilen SM sertifika yolu üzerinde bir etki alanı denetleyicisi sertifikası olmalıdır.

Akıllı kartlar istemcinin sahip olduğu (Something You HAVE) kimlik doğrulama, yetkilendirme ve güvenlik araçlarıdır. Akıllı kartlar içerisinde sertifika bulunur ve bu sertifika istemciye ait özel (private) ve açık (public) anahtar çiftini barındırır. Özel anahtar imzalama işlemi için kullanılır. Sayısal imzalama işlemi güvenlik açısından inkar edilemezlik sağlar. Bu sebeple özel anahtarın bir başkasının eline geçmesi önlenmelidir. Akıllı kartlar içinde özel anahtarların dışarıya kesinlikle çıkarılmaması için özel güvenlik önlemleri alınmaktadır. Akıllı kartlara yapılan güvenlik testlerinde PIN ve özel anahtara yetkisiz erişim de test edilmektedir.

İstemci sertifikası belli bir otorite tarafından imzalanmıştır. Etki alanı denetleyicisi (DC) üzerinde güvenilir olan sertifika otoritelerinin kayıtları tutulmaktadır. İstemci sertifikası bu sertifika otoritelerinden birisi ile imzalanmış (Authority Issuer) ise o sertifikanın uygun olduğu kabul edilir.
İstemci sertifikasının içerisinde istemcinin kullanıcı adı, etki alanı bilgisi, genel anahtarı, sertifikanın geçerlilik tarihi, şifreleme algoritması gibi bir takım bilgiler bulunur. Eğer bir veri istemcinin açık anahtarı ile şifrelenirse, bu veriye erişim sadece istemcinin özel anahtarı ile gerçekleşebileceğinden, bir başka kullanıcı tarafından ilgili veriye erişimi engellenmiş olur. Bu sebeple akıllı kartlar hem kimlik doğrula ve yetkilendirme, hem de sayısal imzalamada ya da veri şifrelemede kullanılır.

 

1) Adımları

Akıllı kart ile kimlik doğrulama işlemi 6 adımda incelenebilir.

  1. İstemci bir makineye akıllı kart ile oturum açmak istediğinde öncelikle PIN kodunu girmelidir. PIN kodu girildikten sonra akıllı kartta bulunan sertifika erişilebilir duruma gelir ve işletim sistemi kullanıcı sertifikasının geçerliğini kontrol eder. Daha sonra akıllı kart tarafından kimlik doğrulaması gerçekleştirilmektedir. Bu aşamada, PIN girilmiş olması işletim sistemi kaynaklarına erişim hakkı sağlamaz. Kaynaklara erişim DC’nin istemciyi doğrulaması sonrası gerçekleşecektir. DC üzerinde doğrulama sonrası jeton (token) elde edilebilir ve kaynaklara erişilebilir.
  2. Etki alanında bulunan bir istemci (OS), akıllı kart üzerinden PIN doğrulaması gerçekleştikten sonra, istemci makine DC’ye kullanıcı adını, sertifikasının kopyasını ve zaman damgasını içeren bir paket hazırlar. Hazırladığı bu paketi akıllı kartın içindeki özel anahtar ile şifreleyerek KDC’ye yollar.
  3. KDC son kullanıcıya ait açık anahtarın geçerliğini kontrol eder.
  4. KDC aynı zamanda kullanıcı bilgilerini de kendi üzerinde (AD) saklar. Eğer sertifika geçerli ise, sertifika içerisindeki kullanıcı bilgilerine göre Authentication Server (AS) tarafından bir bilet (TGT) oluşturulur. KDC, istemciye oluşturduğu TGT ve istemcinin genel anahtarı ile şifrelenmiş oturum anahtarını gönderir. Bu iletim Kerberos protokolü üzerinden şifreli olarak gerçekleştirilmektedir. Görüldüğü gibi, KDC ve istemci arasındaki iletişimde kullanılacak olan oturum anahtarı Kerberos’ta istemcinin özel anahtarı (parolasının özeti) ile şifrelenirken, akıllı kart ile kimlik doğrulamada istemcinin açık anahtarı ile şifrelenmektedir. Böylece sadece akıllı karta sahip olan kullanıcının oturum anahtarını elde edebilmesi garantilenir.
  5. KDC tarafından şifrelenen bu paket istemcinin oturum açmak istediği makineye yollanır.
  6. İstemci gelen bu şifreli paketi özel anahtarı ile deşifre eder. Böylece istemci oturum açtığı makine üzerinde etki alanında kullanabileceği ön bileti (TGT) ve oturum anahtarını elde etmiş olur.

smart-card-authentication-on-microsoft-environment-01

 

2) Zayıflıkları

Akıllı kart ile kimlik doğrulama metodunun bir takım zayıflıkları bulunmaktadır. Bu zayıflıklar temel olarak aşağıdaki gibi listelenebilir.

  • Akıllı kartın içerisindeki özel anahtarın kaybedilmesi veya bir başkasının eline geçmesi kimlik doğrulamanın yanlış şekilde gerçekleşmesine sebep olur. Yukarıda da belirtildiği gibi akıllı kartların bu saldırılara karşı özel güvenlik önlemleri bulunmaktadır.
  • Akıllı kartlar donanımsaldır ve oluşturulması, devam ettirilmesi maliyetlidir. Bu sebeple sürdürülebilir bir tasarım gerçekleştirilmelidir. Algoritmanın değiştirilmesi için tüm donanımın toplanması, değiştirilmesi gibi bir süreç yaşanmamalıdır.
  • Eğer sistem doğru bir şekilde ayarlanırsa parola kullanmaya gerek kalmadan güvenilir bir şekilde akıllı kartlar yardımı ile kimlik doğrulama gerçekleştirilebilir. Ancak unutulmamalıdır ki, istemcinin ön bileti (TGT) makine üzerinde saklandığı için Kerberos ile ilgili birçok açıklık akıllı kartlar için de geçerlidir.

 

Kaynak:

https://www.bilgiguvenligi.gov.tr/microsoft-sistemleri-guvenligi-dokumanlari/index.php

 

Yazarın Bilgileri

Ertuğrul BAŞARANOĞLU
Ertuğrul BAŞARANOĞLU

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Kullanabileceğiniz HTLM etiketleri ve özellikleri: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Bu sayfada incelenen konulardan doğacak sorunlar kişinin kendi sorumluluğundadır.