10 Nisan 2015 Cuma

RAM üzerinden bilgisayar kontrolünü ele geçirmek



Google Project Zero, Google'ın güvenlik açıklarını araştıran ve bunu ilgilere ileten, kapatmaları için 90 gün süre verip, kapatılmaması halinde bunları afişe eden bir oluşum. Kendilerini bu yılın başında Windows 8.1'in kritik açıklarını yayınlamasıyla Microsoft'u ziyadesiyle kızdırdıklarında tanımıştık.

GPZ, geçtiğimiz günlerde çok daha ilginç ve ciddi bir açık keşfetti. Buna göre bazı model DDR3 hafıza yongalarında hafızaya bir süre sürekli erişerek,  hafızanın erişmediğiniz kısımlarını maniple edebiliyorsunuz. Yani bir sunucunun yönetici haklarını elde edebiliyorsunuz.



Bu aslında aralarında Onur Mutlu ismininde olduğu bir grup bilim insanının geçen sene keşfettiği bit atlatma tekniğiyle yapılıyor. Bilgisayarda bilgiler birler ve sıfırlar halinde saklanır ve işlenir. Bazı RAM çiplerindeki açık sayesinde, bellekteki bitlerin durumunu değiştirebiliyorsunuz. Yani basitçe "yönetici mi? hayır(0)" şeklindeki kayıtı "yönetici mi? evet(1)" haline getirebiliyorsunuz.

Bu açık için NaCl (hayır tuz değil, Native Client) gibi doğrudan makine kodu çalıştırabilen kütüphanelerden yararlanılıyor. Bu kütüphaneler aslında güvenli, üstelik sandbox üzerinde çalışıyor yani izole bir ortamda. Bu durum, açıktan yararlanmanızı etkilemiyor. Çünkü size ayrılan bölümde yaptığınız işlemler bellek yongasındaki sizden saklanan bölümü, elektriksel bir sorun yüzünden etkiliyor.

Sorun donanımsal. Bazı RAM'lerde soruna rastlanırken bazılarında rastlanmıyor. Ve yazılımsal bir yama, yani bir BIOS yaması sorunu çözecek gibi görünmüyor. Google bu yüzden, bilgisayarınızın açıktan etkilenip etkilenmediğini test edebilmeniz için bir araç yayınladı. GNU/Linux ve OS X üzerinde çalışan bu yazılımla bilgisayarınızı test edebilirsiniz. Bu zamana kadar yapılan testler, piyasadaki ürünlerin büyük çoğunluğunun bu açıktan etkilendiği yönünde.

Bu tür bir açık, aslında beni şaşırtmadı. Çünkü bu tür ürünler yüksek üretim teknolojileriyle üretiliyor. Yukarıda bahsettiğim bilgileri oluşturan bitler, aslında minik bir kapasitörün dolu ya da boş olmasıyla tespit ediliyor. Bu kadar küçük bileşenlerle üretilmiş ürünlerde, elektrik sızıntısı ve bu sayede verinin bozulması olası. İşlemcisine hızaştırma yapanlar, bir süre yüksek voltaj altında kullandıklarında artık işlemcinin o hızlara çıkamadığını, daha yüksek voltaj istediğini bilirler. Bu durum da, kaçak voltaj sorunu.

Transcend marka bir DDR3 RAM'deki ECC modülü

Şimdi bazılarınızın aklına özellikle gerçek sunucu bilgisayar RAM'lerinde kullanılan ECC (Error Check and Correction) özelliği gelecektir. Bu işlem evet, bozulmuş bitleri bulup tamir eder. Ancak çalışma algoritmasından dolayı, çözüm değil sadece önlem aşamasında kalıyor. Zaten esas tehlike, sunucu bilgisayarlara yönelik.

Sonuç olarak donanım üreticileri daha sıkı çalışıp, daha "şeytani" testler yaparak güvenlik düzeyini yükseltmeli. Çünkü bir kere seri üretime geçildiğinde, geri dönüş kolay olmuyor. Burada olduğu gibi her sorun, yazılım düzenlemesiyle çözülemiyor.



1 yorum:

  1. Artık, bellek yongası üzerinden dünyayı yönetme planlarımı yürürlüğe koyabilirim. :)

    YanıtlaSil