Bilgi Güvenliğinde Yeni Bir Yaklaşım, Güvenilir Bilişim (Trusted Computing) -1
Günlük hayatta sayısal veri platformlarının kullanım yerleri ve sayıları arttıkça bu platformlarda taşınan değerli verilerin güvenliğini sağlamak da önemli bir sorun haline geldi. Artan teknoloji ve kullanım yoğunluğu ile birlikte günlük hayatın her yerinde bilgi işleme kabiliyetine sahip sayısal platformlar yer almaya başladı(Bunlara genel olarak Bilişim Platformu adını vererek bu yazıda değineceğim). Bilişim platformları kişisel bilgisayarlardan kurumsal sunumculara, cep telefonlarından MP3 çalarlara, ATM makinalarından kiosklara kadar çok geniş kapsamda düşünülebilir.
Bilişim platformlarında Güvenli olma kavramı bir ürünün size güvenliği sağlayıp sağlamaması ile ilgili olan bir "Özellik" olarak düşünülebilir. "Güvenlik" ürünün niteliği ile ilgilidir, ürünün kalitesi hakkında herhangibir taahhütte bulunmaz. Satın aldığınız güvenlik yazılımı veya donanımı size belirli bir güvenliği sağlar.
Günümüze kadar olan yaklaşımların tamamı bilişim platformlarını "Güvenli", başka bir deyişle "Secure" hale getirmek ile ilgiliydi. Örneğin kişisel bilgisayarınızda güvenerek kullandığınız herhangibir yazılım kötü niyetli bir saldırıdan ya da yazılımın çalışır kodlarında zaman içinde olabilecek bozulmalardan dolayı yapması beklenen işlevi gerçekleştirmeyebilir. Veya yapması gerektiği işe devam ederken yapmasını amaçladığınız işten başka, zararlı işlevler gerçekleştirecek şekilde değiştirilebilir. Bu durumu nasıl anlayabilirsiniz ve engelleyebilirsiniz? Birçok kişinin ilk aklına gelen bu durumda güvenliği sağlayan işlevsel kod parçaların değişime karşı korunması için bütünlük kontrolünün yapılmasıdır. Bu durumda bütünlük kontrolü yapan mekanizmanın doğruluğunu kim denetlemeli? Bu kadar şüphecilikten sonra sonra akla Juvenal in ünlü sözü geliyor ,"Quis custodiet ipsos custodes", bekçileri kim bekleyecek?
İşte bu sorunların tamamının çözümü Güvenilir Sistemler(Trusted Sytems) teorisine göre yaklaşım değişiminden geçiyor. Güvenilir Bilişim(Trusted Computing) birsonraki nesil güvenlik altyapısı ile bu yaklaşım değişiminin ürünü olan teknolojinin gerçeklenmesini sağlıyor. Bu altyapının amacı bilişim platformlarını, önce, Güvenilir Bilişim altyapısını kullanarak "Güvenilir"(Trusted) hale getirmek, sonra da güvenlik yazılım veya donanımlarını kullanarak "Güvenli"(Secure) hale getirmek.
Bilişim platformlarında Güvenli olma kavramı bir ürünün size güvenliği sağlayıp sağlamaması ile ilgili olan bir "Özellik" olarak düşünülebilir. "Güvenlik" ürünün niteliği ile ilgilidir, ürünün kalitesi hakkında herhangibir taahhütte bulunmaz. Satın aldığınız güvenlik yazılımı veya donanımı size belirli bir güvenliği sağlar.
Günümüze kadar olan yaklaşımların tamamı bilişim platformlarını "Güvenli", başka bir deyişle "Secure" hale getirmek ile ilgiliydi. Örneğin kişisel bilgisayarınızda güvenerek kullandığınız herhangibir yazılım kötü niyetli bir saldırıdan ya da yazılımın çalışır kodlarında zaman içinde olabilecek bozulmalardan dolayı yapması beklenen işlevi gerçekleştirmeyebilir. Veya yapması gerektiği işe devam ederken yapmasını amaçladığınız işten başka, zararlı işlevler gerçekleştirecek şekilde değiştirilebilir. Bu durumu nasıl anlayabilirsiniz ve engelleyebilirsiniz? Birçok kişinin ilk aklına gelen bu durumda güvenliği sağlayan işlevsel kod parçaların değişime karşı korunması için bütünlük kontrolünün yapılmasıdır. Bu durumda bütünlük kontrolü yapan mekanizmanın doğruluğunu kim denetlemeli? Bu kadar şüphecilikten sonra sonra akla Juvenal in ünlü sözü geliyor ,"Quis custodiet ipsos custodes", bekçileri kim bekleyecek?
İşte bu sorunların tamamının çözümü Güvenilir Sistemler(Trusted Sytems) teorisine göre yaklaşım değişiminden geçiyor. Güvenilir Bilişim(Trusted Computing) birsonraki nesil güvenlik altyapısı ile bu yaklaşım değişiminin ürünü olan teknolojinin gerçeklenmesini sağlıyor. Bu altyapının amacı bilişim platformlarını, önce, Güvenilir Bilişim altyapısını kullanarak "Güvenilir"(Trusted) hale getirmek, sonra da güvenlik yazılım veya donanımlarını kullanarak "Güvenli"(Secure) hale getirmek.
Bilişim platformlarında "Güvenilirlik" şu şekilde tanımlanmakta:
Eğer bir yazılım veya donanım sadece tasarlandığı amaçla ve çalışması gerektiği gibi çalışıyorsa güvenilirdir.
Amaç güvenlik olursa bunu sağlamak ayrı ayrı bileşenleri güvenli hale getirerek başarılmaya çalışılıyor. Amaç güvenilirlik olursa, bilişim platformunun her katmanında çalışan yazılım ve/veya donanımın güvenilirliği söz konusu.
Güvenilir Bilişim in öngördüğü "Güvenilirlik" katmanlar halinde gerçekleniyor. Bunun sebebi ise sistemin tamamının aynı anda güvenilir yapılmasından ise katmanlar halinde güvenilirliğin sağlanmasının daha kolay ve ucuz bir yöntem olması.
Bütün bu kavramsal kargaşanın bilgi teknolojilerinde gerçeklenmesi IBM, HP, Microsoft, Intel, AMD ve SUN Microsystems in öncüllüğünü yaparak oluşturduğu ve şu anda 150 ye yakın üyesi bulunan Güvenilir Bilişim Grubu(Trusted Computing Group) un çalışmalarıyla günümüzde gerçekleşti. İlk başta Trusted Computing Platform Alliance ismiyle çalışmaya başlayan bu gurup daha sonra adını değiştirerek ve genişleyerek yeni nesil bilişim bilgi güvenliği standartlarını belirlemek üzere çalışma alanını da mobil platformlar, sunucular, veri depolama cihazları, ağ erişim kontrolleri olarak özelleştirdi.
Güvenilir Bilişim teknolojisinin kalbindeki öğe ise Güvenilir Bilişim Modülü(Trusted Platform Module) adı verilen kriptografik bir entegre. Güvenilir Bilişim Modülü(Trusted Platform Module,TPM) üstünde bütünlük kontrolü(SHA-1) , asimetrik şifreleme(RSA) gibi temel kriptografik işlemler yapabilen donanımsal kısımlar bulunmakta. Bütünlük ölçüm sonuçları 24 adet(TCG V1.2 Spec) Platform Konfigürasyon Register(PCR) ına depolanmakta. Bütün TPM işlemleri ise entegrenin içine gömülü olan TPM Firmware i ile dışarıdaki yazılımların TPM e komut yollayarak anlaşması ile sağlanıyor. TPM karıştırmaya karşı dayanıklı(Tamper Proof) olarak tasarlandı Böylece TPM e karşı yapılacak fiziksel saldırılara kaşı da belirli seviyede bir güvenlik seviyesine erişildi. Bu entgrenin en önemli özelliği ise oldukça ucuz ve erişilebilir olması. Böylece kurumsal kullanıcılara ek olarak pahalı kripto co-processor lara erişme imkanı bulunmayan ev kullanıcıları da donanım tabanlı güvenilirlik ve güvenliği elde edebilir hale geldi.
Güvenilir Bilişim platformlarında "Güvenilirlik" iki temel öğe ile sağlanmakta; Güven Kökeni(Root of Trust) ve Geçişken Güven Prensibi(Transitive Trust). Güven Kökeni, Güvenilir Platform Modülü(Trusted Platform Module,TPM) tarafından oluşturuluyor. TPM, gerekli bütünlük ölçümlerini yapıp, depolayıp, istendiğinde güvenilir biçimde raporlamakla sorumlu. Geçişken güven prensibinin uygulanması ise şöyle açıklanıyor. Eğer PC mimarisini düşünürsek ilk olarak TPM, BIOS kodunun bütünlüğünü kontrol eder ve sonucu PCR lara yazar. Daha sonra ise kontrolü BIOS koduna geçirir. BIOS kodu kendinden birsonraki katmanda çalışacak olan Boot Loader kodunun bütünlüğünü kontrol eder ve sonucu PCR lara yazar. Bu işlem, işletim sistemine kadar tüm katmanlarda devam eder. Sonuç olarak PC de çalışan tüm yazılım katmanları TPM tarafından ölçülmüş ve ölçüm sonuçları PCR lara kaydedilmiş olur.Her katman birsonraki katmanı ölçerek ve doğrulayarak tüm platformun güvenilirliğinden emin olur. Bu ölçümler gerektiğinde TPM den istenerek bilişim platformunun güvenilirlik durumunu değerlendirmek için kullanılır.
Güvenilir Bilişim altyapısını düşünürsek ilk önce şu ayrımı yapmalıyız. Güvenilir bilişim elemanları "Güvenlik"i sağlamaz. Sadece güvenilir olması gereken yazılımın sizin güvendiğiniz konfigürasyonda olup olmadığını TPM tabanlı Güvenilir Bilişim altyapısını kullanarak size bildirir. Bunun sonucu olarak yazılımı kullanıp kullanmamaya devam edip etmemek kullanıcının veya güvenlik yazılımının sorumluluğundadır. Emin olacağınız şey şudur, TPM in size bildirdiği ölçümler doğru ve güvenilirdir.
TPM in diğer bir özelliği ise platform konfigürasyonuna(PCR değerlerine) bağlı olarak güvenli ve güvenilir veri saklama yapılabilmesi. Eğer platform daha önceden belirlenmiş güvenilir bir konfigürasyonda ise TPM tarafından korunan veriye ulaşmak mümkün. Böylece firmalar veya kişiler hassas bilgilerini platformda bulunan yazılım konfigürasyonlarına bağlı hale getirerek herhangibir tehlike(kaybetme, çalınma vs.) halinde TPM tarafından korunan verilerinin açılmamasını donanımsal olarak sağlayabiliyorlar. Sadece zaman ve para açısından oldukça maliyetli ve her yerde gerçekleştirilemeyecek olan fiziksel analiz yöntemleri kullanılarak TPM kırılabilirse kullanıcının verisine erişilmesi olası.
Oldukça düşük maliyetli fakat etkili olan Güvenilir Bilişim altyapısı kullanıcılar ve firmalar açısından yüksek güvenlik seviyesini herkesin erişebileceği bir fiyata sunmayı amaçlamakta. Bu çözümlerin yaygınlaşması bu alandaki altyapı geliştirmelerinin tamamlanması ve uygulamaların artması ile daha da hızlanacak gibi görünüyor. Şu anda elinizdeki PC veya laptopta bile etkinleştirilmemiş bir TPM olabilir. İleride bu TPM i kullanmak için gerekli yazılımlar veya güncellemeler geldikçe birçok kişinin bu teknolojiden faydalanması mümkün.
Burada sadece buzdağının görünen yüzüne değindim. İleride buzdağının geri kalan kısmını, Güvenilir Bilişim in hayatımızda alabileceği yerleri ve etkilerini açıklayacağım.
Referanslar:
Etiketler: bilgi güvenliği
Devamı
Geçen haftaki bilgigüvenliği grubunun toplantısındaki dostlardan bir çoğu ile karşılaştığımda şu replikler aramızda defalarca geçmiştir :