Adli Bilisimde SSD Diskler Üzerindeki Hash Problemleri
SSD(Solid State Drives) diskler yapisal özellikleri, kendisine bir anlamda ismini de vermistir. SSD’lerde, diger manyetik depolama ünitelerinden farkli olarak, herhangi bir hareket eden parça yoktur. Bu da onlarin Solid State, yani Kati Hal Sürücüsü olarak adlandirilmasina neden olmustur.
[1].Asagida Sekil 1’de farkli arayüz baglantilarina ve farkli sekillere sahip SSD diskler görülmektedir.

Henüz kapasitelerinin düsük ve fiyatlarinin yüksek olmasi sebebiyle yaygin olarak kullanilmasa da zaman ilerledikçe veri okuma/yazma yönünden daha hizli, daha az enerji tüketimine sahip ve sarsinti gibi dis etkenlere daha dayanikli olduklari için daha çok tercih edileceklerdir. Bilgisayar üreticilerinin pazara sundugu bilgisayarlarda daha yüksek performans için, kullanmayi daha çok tercih etmeye baslamalarina paralel olarak adli bilisim alaninda da her geçen gün daha sik karsilasilan SSD diskler, üzerlerinde bulunan Nand flash yongalarinda veriyi depola maktadir.
Sekil 2’de SSD disk üzerindeki ana parçalar görülmektedir.

SSD disklerin mekanik bir yapida veri depolamamasi ve okuma yazma islemini sabit disklerdeki gibi hareketli parçalarla yapmamasindan dolayi veriye erisim için beklenmesi gereken süre oldukça düsüktür. Sabit disklerde veriye erismek için öncelikle veri yazili plakalari döndüren motorun belirli bir hiza ulasmasi gerekmekte ve daha sonra okuma/yazma kafasi veri yazili yüzeyi tarayarak okumaya baslamaktadir. SSD diskler ise mekanik tabanli olmamasi yani hareketli parça içermemesi ve flash bellek tabanli elektronik tümlesik devrelerden imal edilmesi, uygulamada pek çok faydayi da beraberinde getirmektedir. Öncelikle, okuma ve yazma islemleri, sabit disklerdeki basliklarin yaptigi gibi mekanik olarak uygulanmadigi için, erisim süreleri oldukça düsüktür ve günümüzde 0.1 ms‘ye kadar düsmüstür.
SSD diskler üzerinde veri depolama birimi olarak bulunan flash yongalar üzerine verinin nasil kaydedilecegini veya silinecegini SSD kontrolcüsü düzenler. SSD disk ömrünü uzatmak ve performansi daha üst seviyelere ulastirmak için veri flash yongalar üzerine ham olarak sirasiyla kaydedilmemekte, veri degisik algoritmalar kullanilarak ve farkli yongalara dagitilarak kaydedilmektedir. Bu algoritmik ve daginik kayit biçimi diskten diske ve hatta modelden modele degisebilmektedir. SSD üreticileri performansi ve SSD disk ömrünü arttirmak için kullandiklari bu algoritmalari ticari sir niteliginde oldugu için paylasmamakta, dolayisiyla SSD disk teknolojisinde veri depolama sekillerinde standartlasma olmamaktadir.
SSD disk üzerindeki flash yongalara okuma/yazma erisimlerinin tamami SSD kontrolcüsü üzerinden gerçeklesmektedir. Sabit disklerde yazilabilir, okunabilir ve silinebilir en küçük birim 512byte iken SSD disklerde yazilabilir ve okunabilir en küçük birim 4KB büyüklügündeki Page’lerden olusurken; silinebilir en küçük birim ise 512KB büyüklügündeki Blok’lardir. Page’ler Block’larin içerisinde yer alir. SSD diskler üzerinde veri sadece bos alanlara kaydedilmektedir. Daha önce veri kaydedilmis ve silinmis de olsa bir veri daha kaydedileceginde, silindigi için bosalmis olan alana degil daha önce kullanilmamis olan veya daha az kullanilmis olan bir alana kaydedilir. Bunun sebebi ise SSD disklerdeki flash yongalarina maksimum veri yazma/okuma sayisinin sabit disklere göre oldukça düsük olmasi ve dolayisiyla kullanim ömürlerinin sabit disklere göre kisa olmasidir. SSD diskler kullanim ömrünü arttirmak için flash yongalar üzerinde mantiksal bir adresleme kullanirlar. Kullanilan bu adresleme sisteminde mantiksal olarak tutulan adresler sürekli degismektedir ancak bu degisimler kullanici ve isletim sistemi tarafindan fark edilmemekte, bu islem SSD kontrolcüsü tarafindan yapilmaktadir. Mekanik yapiya sahip sabit disklerde bozulan sektör yerine kullanima açilmak üzere ayrilmis sektörler mevcut iken SSD disklerde ise disk üzerinde yazili veri depolama kapasitelerinin %’ine kadar fazla veri depolanabilecek flash yongalara sahip olarak üretildikleri görülebilmektedir[4]. Mekanik yapiya sahip disklerde bulunan yedek sektörler üzerine, bozulan bir sektör yerine kullanima açilmadikça, veri kaydedilememekte ve o sektörlere erisilememektedir. SSD disklerde ise fazladan konulmus flash yongalar mantiksal adreslemenin degismesiyle sirasi geldigince kullanilmaktadir.
Bir yazma islemi sirasinda mantiksal adresleme içerisinde 100. Sirada olarak görülen bir sektör bir baska yazma isleminde 110. Sektör olarak adreslenebilmektedir.Yeni nesil SSD disklerde TRIM destegi mevcuttur. “TRIM” bir SATA komutudur. TRIM komutunun kullanilabilmesi için hem isletim sisteminde hem de SSD diskte TRIM desteginin bulunmasi gerekir. TRIM destegi olmaksizin bir silme islemi yapildiginda isletim sistemi silinen dosyayi kendi haritasinda silindi olarak isaretler ancak SSD diske ayrica sil komutu göndermez. Sil komutu gönderilmedigi için SSD üzerinde halen bulunan ancak gereksiz olan veri SSD disk üzerinde çalisan Garbage Collection adi verilen yazilim tarafindan bir süre sonra tespit edilerek silinirken ayni zamanda defragmantasyon islemi de yapilarak SSD disk üzerindeki veri bloklarinin daha verimli kullanilmasi saglanir. Ancak Garbage Collection tarafindan gereksiz ve kullanilmayan verinin tespiti ve defragmantasyona tabi tutulmasi zaman alabilmektedir. TRIM teknolojisi aktif olan bir sistemde ise: isletim sisteminde yapilan silme islemiyle ilgili olarak silinmis olarak görünen alanlar isletim sistemi tarafindan SSD kontrolcüsüne bildirilir. SSD kontrolcüsü kendisine isletim sistemi tarafindan silindigi bildirilen alanlari çöp olarak isaretler. Daha sonra SSD diskin bosta oldugu zamanlarda çöp olarak isaretlenen alanlar Garbage Collection tarafindan silinerek veri bloklari düzenlenir. SSD kontrolcüsünü çöp olarak isaretlemesi ve Garbage Collection tarafindan isaretlenen alanlarin silinmesi ve yeniden düzenlenerek bütün halinde Block’lara kaydedilmesi islemlerinin tamami isletim sistemi ve kullanici tarafindan kontrol edilemeyecek bir yapi içerisinde gerçeklesmektedir. Yani eger bir alan TRIM tarafindan gönderilen komutla çöp olarak isaretlenmisse bu alan bir süre sonra geri getirilemeyecek sekilde silinecek ve ideal sekilde Block’lardaki veri düzenlenecektir. Bu islemler yapilirken ayni zamanda mantiksal adreslemeler de degisebilmektedir.
TRIM çalisma sistemi Sekil 3’da gösterilmistir.

Yazma korumali olarak adli kopyasi alinmak istenen bir SSD disk üzerinde daha önce çöp olarak isaretlenmis ancak henüz silinmemis veriler olabilmektedir. Garbage Collection programi da çalismaya devam etmektedir. Yazma koruma sadece isletim sistemi veya kullanici gibi disaridan diske veri yazilmasini/silinmesini engellemektedir. TRIM ve Garbage Collection sistemleri ise SSD içerisinde çalisan sistemlerdir. Donanimsal yazma korumasi veya yazilimsal yazma korumasi bu sistemlerin çalismasini engellememektedir. Adli kopya alinmasi esnasinda bu sistemler çalismaya devam edeceginden SSD disk üzerindeki verilerde degisiklikler olmaya devam etmektedir. Ilk adli kopya alma isleminde çöp olarak isaretlenen ancak henüz Garbage Collection tarafindan silinmedigi için sektör üzerinde okunmus olan bir veri ayni SSD diskten ikinci defa alinacak olan adli kopya üzerinde bulunmayabilmektedir. Iki adli kopya alma islemi süresince çalismakta olan SSD disk üzerindeki sistemler önceden çöp olarak isaretlenmis olan alanlarda degisiklikler yapmaya devam etmektedir. Dolayisiyla ilk adli kopya sonucu hesaplanan hash degeri ile ikinci adli kopya islemi sonucu hesaplanan hash degeri farkli olacaktir.
Adli bilisim alaninda adli kopya ile ilgili uygulamalarda elektronik delillerin orijinali üzerinde tekrar adli kopya alma islemleri yapilmakta ve sonucunda hesaplanan hash degeri ilk adli kopya alma isleminde hesaplanmis olan hash degeri ile karsilastirilarak farklilik görüldügünde elektronik aygitin delil niteligi kalmadigi degerlendirilmektedir. Bunun yaninda açik olan sistemlerden alinan adli kopyalarla ilgili olarak, RAM’lerden alinan adli kopyalarla ilgili olarak ve cep telefonlarindan alinan adli kopyalarla ilgili olarak tekrar adli kopya alinmasi ve hash degerlerinin kiyaslanmasi gibi bir uygulama söz konusu degildir. Çünkü açik olan sistemler, RAM’ler ve cep telefonlari üzerinde kayitli olan verilerin adli kopyalari alinirken sistem çalismaya devam ettigi için, halen sistem tarafindan zararsiz ufak degisiklikler yapilmakta oldugu bilindiginden; tekrar bir adli kopya alindiginda ayni hash degeri elde edilemeyecegi bilindiginden, böyle bir tehid yoluna basvurulmamaktadir. Bu sistemlerden alinan ve elde olan ilk adli kopyalar üzerinden tüm inceleme ve degerlendirmeler yapilmakta, orijinal elektronik delil üzerinde tekrar hash hesaplatilmasi gibi bir islem yapilmadan adli kopya delil olarak olayin aydinlatilmasinda kullanilmaktadir.
Kati hal diski olarak adlandirilan SSD disklerde çesitli sebeplerden dolayi hash problemleri yasanabilmekte oldugu görülmektedir. Uygulamada, delil olabilecek elektronik aygit üzerinden adli kopya alindigi sirada hesaplanan hash degeri ile, alinan adli kopyanin kaydedildigi veri depolama birimi üzerine tam ve dogru olarak kaydedildiginin tespiti için hesaplanan hash degerleri birbiri ile ayni ise bu asamadan sonra ilerleyen zamanda delil bütünlügünün korunup korunmadiginin kontrolü için elektronik delilin orijinali üzerinde tekrar adli kopya alma islemi yapilmasi gerekmemekte, bu kontrolün eldeki adli kopya üzerinde hash hesaplatilarak yapilmasi gerekmektedir. Orijinal elektronik delil üzerinde meydana gelen bozulmalar ve degisimler hukuksal açidan delil bütünlügünün bozulduguna anlamina gelmemelidir. Çalisan sistemlerden, RAM’lerden ve cep telefonlarindan alinan adli kopyalarda oldugu gibi; diger elektronik deliller de sadece adli kopyalari üzerinden degerlendirilmelidirler. Elektronik delil üzerinde herhangi bir veri degisikligi olup olmadigi ise orijinal delil üzerinden tekrar adli kopya alinarak ve orijinal delilin hash degeri hesaplatilarak degil, eldeki adli kopya üzerinde tekrar hash hesaplatilarak kontrol edilmelidir. Daha önceden orijinal delilden adli kopya alinirken hesaplanan hash degeri, adli kopya üzerinden tekrar hesaplatilan hash degeri ile birbirini tutuyor ise delil bütünlügü korunuyor anlamina gelmektedir. Bu asamada veri bütünlügünün kontrolü için orijinal delil üzerinde tekrar hash hesaplatilmasi gibi bir yol izlenmemelidir.
Adli Bilisim Uzmani Murat ÖZBEKhttp://www.bilgisayardedektifi.com/adli-bilisimde-ssd-diskler-uzerindeki-hash-problemleri/157Kaynak:[1] http://www.emrahduman.av.tr/makale/solitstate.pdf
[2] http://4.bp.blogspot.com/-pG1GY9_mH68/UC6jY-HdALI/AAAAAAAAMD4/jwiFKNxlExc/s400/vertex-3-pcb-top.jpg
[3] http://static.usenix.org/events/fast11/tech/full_papers/Wei.pdf
[4] http://static.usenix.org/events/fast11/tech/full_papers/Wei.pdf
[5] http://www.corsair.com/us/blog/how-to-check-that-trim-is-active/