2018 in ilk günlerinde açıklanan iki ciddi işlemci açığı bilişim dünyasını birhayli ürküttü çünkü bugüne kadar bulunan en ciddi açık olma özelliklerini taşıyorlar ve işlemcilerin performansını arttırmak
için kullanılan mekanizmanın kötüye kullanılmasıyla ortaya çıkıyorlar.2017 yılı ortalarında tespit edilen bu açıklar büyük risk taşıdıkları için kamuya açıklanmadılar fakat bilgi sızıntısı olduğu için açıklama öne çekildi ve yılın ilk günlerinde kamuoyuna duyuruldu. Meltdown (CVE-2017-5754) yani türkçesi eritme anlamına gelen açık 1995 sonrası üretilen neredeyse tüm Intel işlemcilerini kapsıyor (2013 öncesi üretilen Atom ve Ithanium serisi hariç) , Spectre (CVE-2017-5753 and CVE-2017-5715) türkçesi hortlak demek olan bu açık ise Intel’in yanında AMD ve ARM işlemcileri etkiliyor bunun anlamı ; kişisel bilgisayarlar, sunucular, tabletler ve akıllı telefonların risk altında olmasıdır.
Güncel işletim sistemlerinde güvenlik için oluşturulmuş bir bellek izolasyonu mevcuttur yani ; bir program kendine ayrılan bellek alanı dışındaki diğer programlara ya da işletim sistemi çekirdeğine ait bellek alanlarına erişemez bu sayede aynı bilgisayarda çalışan uygulamaların bir diğerinin bellekteki verilerine erişmesi engellenir. Meltdown ve Spectre açıklarında ise saldırganın normalde erişemeyeceği bellek adreslerini okuyabilmesini sağlıyor. Her iki saldırı türüde İşlemci Chipi içerisinde yeralan ve "speculative execution" diye adlandırılan performans optimizasyon tekniği özelliğinden faydalanıyor , aşağıda Meltdown saldırısını görüyorsunuz
Saldırı ile yalnızca çekirdek bellek (kernel memory) değil , hedef makinelerin fiziksel belleği ve dolayısıyla diğer programların ve işletim sisteminin tüm sırları okunabiliyor. Meltdown, kullanıcı uygulamaları ve işletim sistemi arasındaki izolasyonu kırmak için spekülatif yürütmeyi kullanıyor ve herhangi bir uygulamanın çekirdek için ayrılan bellek de dahil olmak üzere tüm sistem belleğine erişmesine izin veriyor. Varsayalım internette bu açıktan faydalanmak için zararlı javascript kodları içeren bir siteye denk geldiniz şifreleriniz , hesap bilgileriniz , kredi kartı bilgileriniz... vs ele geçirilebilir , olay sunucularda daha kötü bir hal alıyor mesela art niyetli biri herhangi bir bulut sunucusundan kiralayacağı bir alanda bu açıkları kullanarak aynı sunucuyu kullanan diğer kullanıcıların verilerine erişilebilir.
Spectre saldırı açığının giderilmesi oldukça zor görünmektedir , sorunun tamamen ortadan kaldırılması için işlemci mimarisinde değişiklikler yapılmasını gerektirir ki tüm çıkmış işlemcilerin yenilenmesi neredeyse imkansızdır. Spectre farklı uygulamalar arasındaki izolasyonu kırarak saldırganın kontrol ettiği programın, diğer programların mahrem bilgilerine erişmesine izin verir.
Spectre saldırısı bir javascript sayesinde browser sandboxing denilen korumayı kırmak içinde kullanılabilir.
Sistemimizde Meltdown ve Spectre açıkları varmı
Microsoftun önerdiği yönteme göre Sistemimizde Meltdown/Spectre açıkları varmı öğrenmek için aşağıdakileri uygulamamız gerekmektedir.
1. Powershell i yönetici yetkilerinde çalıştıralım ve ardından aşağıdaki kodu çalıştıralım
Set-ExecutionPolicy RemoteSigned
ardından çıkan uyarıya klavyemizdeki Y harfine basarak tepki verelim (yes demektir)
2. Sırası ile aşağıdaki komutları verelim ve çıkan uyarılarda klavyemizdeki "Y" tuşuna basalım
Install-Module SpeculationControl Import-Module SpeculationControl Import-Module SpeculationChannel Get-SpeculationControlSettings Set-ExecutionPolicy Default
Neticede aşağıdaki gibi bir tablo sıralayacaktır bu tablodaki FALSE değerlerinin hepsi Açık olduğunu TRUE değerlerinin hepsi korunduğunu göstermektedir görüldüğü üzere bendeki CPU elek gibi maşallah
Eğer aynı işlemi 3. parti bir yazılım ile yapmak isterseniz github ta yayımlanan kontrol aracını da kullanabilirsiniz Burada . Yazılımı bir klasör içerisine atıp Komut isteminden çağırdığmızda aşağıdaki gibi bir görüntü almamız gerekir
CVE-2017-5754 (Meltdown) , CVE-2017-5715 (Spectre) açığı demektir Yeşil YES ler korunuyor Kırmızı NO lar korunmuyor yani açık var anlamındadır.
Meltdown ve Spectre açıklarından nasıl korunuruz
Windows, Linux ve MacOS için güvenlik yamaları yayımlanmaya başladı aşağıdaki yamalardan işletim sisteminize uygun olanını indirip kurabilirsiniz
Windows 10 kullanıcısı iseniz KB4056892
Windows 8.1 kullanıcısı iseniz KB4056898
Windows 7 Sp1 kullanıcısı iseniz KB4056894
Üstteki yamalar otomatik güncellemelerle geliyor fakat bu yamalar bilgisayarın %5 - % 30 arasında yavaşlamasına sebep olabiliyor. Bulut sunucularıda tedbir aldıklarını duyuruyorlar , tarayıcılarda ilk tepki Firefox tan geldi ve hemen yeni sürüm yayımladı , firefox kullanıyorsanız güncel sürüme yükseltiniz. Google Chrome kullanıyorsanız Adres satırına aşağıdaki kodu yapıştırın
chrome://flags/#enable-site-per-process
Açılan ekranda Strict site Isolation kısmının karşısında yeralan Etkinleştir butonuna tıklayalım ve chrome yi yeniden başlatalım , bu işlem bellek kullanımını 10%-20% oranında arttırabilir.
Fakat şunu da akıldan çıkarmamak gerekiyor Hardware (Donanım) tabanlı bir açığı işletim sistemini yada yazılımları yamayarak tümüyle kapatmak mümkün değildir. Her iki açık hakkında ayrıntılı dökümanlara aşağıdaki linklerden ulaşabilirsiniz.
- Intel işlemcimizde güvenlik açığı varmı bulalım Burada
spoiler denilen bir zaaf daha açıklandı. bu güvenlik zaafı yazılımla da etkisizleştirilemiyor 🙁
Elek gibi oldu işlemciler
intel işlemcilere özel branchscope isimli bir açık daha bulunmuş.
Bu hatayı veriyor:
Your system either does not have the appropriate patch, or it may not support the information class required.
Yamaya bağlı olabilir , power supply için yazılımsal bir test aracı duymadım malesef
Yamaya bağlı mı bilmiyorum ama bilgisayarımda ağırlaşma var. Gerçi power supply 'ın ömrünü tamamlamak üzere olmasından da şüpheleniyorum. O yüzden net bir kestirimde bulunamıyorum.PSU'yu test edip ömrünü tamamlamak üzeremi anlamanın yazılımsal yolu (test aracı) var mı, biliyor musunuz?
Birkısmı kapanmış görünüyor , ben windows 7 li sistemime yamayı henüz kurmadım çünkü bazı sistemlerde mavi ekran verip sistem açılmamış.
BTIHardwarePresent : False
BTIWindowsSupportPresent : True
BTIWindowsSupportEnabled : False
BTIDisabledBySystemPolicy : False
BTIDisabledByNoHardwareSupport : True
KVAShadowRequired : True
KVAShadowWindowsSupportPresent : True
KVAShadowWindowsSupportEnabled : True
KVAShadowPcidEnabled : False
Core 2 Quad Q6600 intel sonucum.
Not: win10_1079-01 Toplu Güncelleştirmesi sonrasıdır (kb4056892).
Konuyu güncelleme sonrası gördüm o yüzden güncellemenin etkisini bilmiyorum.