Windows, PC'nizi nasıl koruyor?
Windows PC'niz kendisini dışarıdan gelen sayısız zararlı kodlara karşı nasıl koruyor? İşte cevabı...
Windows yüklü bilgisayarınızda genellikle bir antivirüs'e sahip olmanız gereklidir. Ancak bulut bilişim çağına giriş yaptığımız bu dönemde, yetenekli zararlı programcılarının sayısı artıyor.
Bu nedenle PC'nizin savunma kalkanının birçok farklı kaynaktan gelen kodu ele işlemesi ve sizi dış tehlikelerden koruması gerekiyor.
Peki bu nasıl mümkün hale geliyor? Hacker'lar bu korumaları aşmanın bir yolunu buldular mı? Ve hepsinden önemlisi, bilgisayarınızda sadece sizin istediğiniz yazılımın çalıştığından nasıl emin olabilirsiniz?
Authenticode sistemi
Oturum açma
Güvenilir üreticilerden satın aldığımız uygulamaların tersine, ortalama bir kullanıcının bireysel olarak geliştirilen uygulama ve araçlar hakkında emin olması mümkün değildir. Çalıştırılan uygulamanın aslında tamamen başka bir iş görmesi mümkündür.
Geliştiricilerin ve hacker'ların arasındaki yarışın hızlanmasıyla antivirüs yazılımlarının zararlıların gelişimine yetişmekte zor anlar yaşadığı oluyor. Bu noktada ise Windows'un Authenticode sistemi devreye giriyor.
Authenticode'u imzalanmamış herhangi bir program yüklerken görebilirsiniz. Ekranınıza programın yayıncısının doğrulanamadığı bilgisi gelir ve devam etmek isteyip istemediğiniz sorulur.
Eşsiz imza
Eşsiz imza
Programlar, RSA gibi bir şifreleme algoritması ile imzalanır. Bu, herkese açık bir sıkıştırma anahtarı kullanarak evrensel anlamda eşsiz bir imza kodu meydana getirir. Kodu imzalamak için kullanılan anahtarı herhangi bir kişi elde edebilir.
İşletim sistemi bunu alır ve kendi için imzanın bir kopyasını oluşturur. Ardından programla beraber gelen imza ile karşılaştırılır. İmzalar eşleşirse, sunulan kod sağlayıcının sunduğu ile aynıdır ve çalıştırılmasına izin verilir.
Bu şifreleme anahtarları, birkaç büyük ve güvenilir güvenlik şirketi (sertifika yetkilileri) tarafından herkese açık dijital sertifikalar olarak tutulur. Bu sertifikalar, programın yayıncısının detaylarını ve programın eşsiz imzasını içerir.
Bir geliştirici iseniz, kodunuzun güvenilir olduğunu ispatlamak üzere bir dijital sertifika almak genellikle maliyetli ve uğraşlı bir iştir.
Örneğin VeriSign'dan bir yıllık bir Microsoft Authenticode sertifikası almak, size 499 dolara malolacaktır. Sertifikayı yenilemediğiniz takdirde, yazılımınız bir sene sonra imzasız bir hale gelecektir.
Herkese açık anahtarlar, Sandbox
Herkese açık anahtarlar
Bazı okurlar herkese açık anahtarların, e-posta ve SSH şifrelemede kullanılanlar ile aynı olduğunu farketmiş olabilir. İmzalama kodunun ana sorunu, ortalama bir kullanıcının kod doğrulanamadığına dair mesaj ekrana geldiğinde bunu anlamamasıdır.
Genellikle antivirüs yazılımına güvenerek bu uyarı geçilir, peki ya karşımızda zararlı bir kod var ise?
Sandbox (kum havuzu)
Buna yönelik çözümlerden bir tanesi, kodu bir "sandbox" içerisinde çalıştırmak, böylece sistemde izinsiz değişikliklerin yapılmasına engel olmaktır. Bugün bazı antivirüs yazılımlarının ücretsiz sürümleri dahi şüpheli programları otomatik olarak sanbox içerisinde çalıştırma özelliği sunabiliyor.
Daha önemlisi ise web tarayıcılarının da sandbox kullanmaya başlaması. Bu da bazı kullanıcılar için IE'den ayrılma nedeni olabilir. Sandbox'lu bir tarayıcı, zararlı veya hack'lenmiş web sitelerinin bilgisayarınıza sessizce zararlı kod yüklemesinin önüne büyük ölçüde geçebilir.
Sandbox nasıl çalışır
Peki bir Sandbox nasıl çalışır? Sandbox'un işleyişi, sanal makinelere benzemektedir. Çalışan koda gerçek bir ortamda çalıştığını ikna edecek her şeyi sunmaktadır. Ancak kod, aslında dikkatle oluşturulmuş ve önemli kısıtlamalara sahip bir simülasyon içerisinde çalışmaktadır. İşletim sistemine yapılan değişiklikler, sandbox'un ötesine geçemez ve buna izin verilmez.
Google'ın web tarayıcısı Chrome'da kullanılan sandbox, konseptin hareket halindeki iyi bir örneği olabilir. Chrome'da yazma işlemleri hiçbir zaman geçerli izinlere sahip değildir ve başarısız olmaktadır. Dönüş kodları sahtedir ve zararlılar kendilerini yüklediklerini sanırlar, ancak bunu yapamazlar.
Sanallaştırma
Sanallaştırma
Sanallaştırma, fiziksel olarak tek bir bilgisayarda ağlar oluşturmaya yönelik düşük maliyetli veya bedava bir fikir gibi görünse de, bu sadece yazılımsal bir teknik olmaktan oldukça uzak. Intel ve AMD, 2000'li yılların ortalarından beri çiplerinde donanımsal sanallaştırma desteği sunuyorlar.
İki şirket de sanal makine oluşturmayı daha kolay bir hale getirmeye çalışıyor, ancak bu teknolojilerin beklenmedik bir yan etkisi var. Örneğin VirtualBox'da bir sanal bilgisayar oluşturup çalıştırdığınızda, tüm simülasyon "hypervisor" adı verilen bir işlem altında çalışıyor.
Hypervisor (sanal makine yöneticisi olarak da adlandırılıyor), tüm fiziksel makinenin sanal makineye sunulabilmesini sağlıyor. BIOS'dan USB portlarına her şey hypervisor'ün elinde bulunuyor ve diğer sanal makinelerle olabilecek kaynak çakışmalarını da hypervisor çözüyor.
Sanallaştırmaya yönelik hack'leme tekniği
Ancak AMD ve Intel sanallaştırma destekli çiplerini piyasaya sürmesinin üzerinden fazla zaman geçmeden Polonyalı güvenlik uzmanı Joanna Rutkowska, çiplerin ne yaptığını ve ne yazdığınızı gösterecek bir hack'leme tekniği geliştirdi.
Rutkowska bunun için denetimi altında hangi işlemin çalıştığını söyleyen basit bir hypervisor oluşturdu. Ancak çipin kendisi ve üzerinde çalışan işletim sistemi, zararlı bir hypervisor çalıştırıldığını anlayamadı ve hiçbir şey olmamış gibi çalışmaya devam ettiler.
Rutskowa, bu yaklaşımını bilim kurgu filmi The Matrix'den aldığı "Blue Pill" konsepti ile isimlendirdi. Bir Blue Pill açığını çalıştırmak, çipi bir bilgisayar simülasyonuna sokuyor ve bu, gerçeğinden ayırt edilemiyor.
Simülasyon, gerçeğinden ayırt edilemediği için, aynı konsepti kullanarak çalışan zararlıların potansiyel olarak algılanması mümkün olmuyor (örneğin bir rootkit).
Sanallaştırma geliştikçe şu anki işlemci koruma işlevleri yerini daha dahice savunma mekanizmalarına bırakacak gibi görünüyor.