SSD(Solid State Drives) diskler yapısal özellikleri, kendisine bir anlamda ismini de vermiştir. SSD’lerde, diğer manyetik depolama ünitelerinden farklı olarak, herhangi bir hareket eden parça yoktur. Bu da onların Solid State, yani Katı Hal Sürücüsü olarak adlandırılmasına neden olmuştur[1]. Aşağıda Şekil 1’de farklı arayüz bağlantılarına ve farklı şekillere sahip SSD diskler görülmektedir.

Şekil 1. Çeşitli SSD diskler

Şekil 1. Çeşitli SSD diskler

Henüz kapasitelerinin düşük ve fiyatlarının yüksek olması sebebiyle yaygın olarak kullanılmasa da zaman ilerledikçe veri okuma/yazma yönünden daha hızlı, daha az enerji tüketimine sahip ve sarsıntı gibi dış etkenlere daha dayanıklı oldukları için daha çok tercih edileceklerdir. Bilgisayar üreticilerinin pazara sunduğu bilgisayarlarda daha yüksek performans için, kullanmayı daha çok tercih etmeye başlamalarına paralel olarak adli bilişim alanında da her geçen gün daha sık karşılaşılan SSD diskler, üzerlerinde bulunan Nand flash yongalarında veriyi depolamaktadır. Şekil 2’de SSD disk üzerindeki ana parçalar görülmektedir.

Şekil 2.SSD Disk Parçaları[2]

Şekil 2.SSD Disk Parçaları[2]

SSD disklerin mekanik bir yapıda veri depolamaması ve okuma yazma işlemini sabit disklerdeki gibi hareketli parçalarla yapmamasından dolayı veriye erişim için beklenmesi gereken süre oldukça düşüktür. Sabit disklerde veriye erişmek için öncelikle veri yazılı plakaları döndüren motorun belirli bir hıza ulaşması gerekmekte ve daha sonra okuma/yazma kafası veri yazılı yüzeyi tarayarak okumaya başlamaktadır. SSD diskler ise mekanik tabanlı olmaması yani hareketli parça içermemesi ve flash bellek tabanlı elektronik tümleşik devrelerden imal edilmesi, uygulamada pek çok faydayı da beraberinde getirmektedir. Öncelikle, okuma ve yazma işlemleri, sabit disklerdeki başlıkların yaptığı gibi mekanik olarak uygulanmadığı için, erişim süreleri oldukça düşüktür ve günümüzde 0.1 ms‘ye kadar düşmüştür[3].
SSD diskler üzerinde veri depolama birimi olarak bulunan flash yongalar üzerine verinin nasıl kaydedileceğini veya silineceğini SSD kontrolcüsü düzenler. SSD disk ömrünü uzatmak ve performansı daha üst seviyelere ulaştırmak için veri flash yongalar üzerine ham olarak sırasıyla kaydedilmemekte, veri değişik algoritmalar kullanılarak ve farklı yongalara dağıtılarak kaydedilmektedir. Bu algoritmik ve dağınık kayıt biçimi diskten diske ve hatta modelden modele değişebilmektedir. SSD üreticileri performansı ve SSD disk ömrünü arttırmak için kullandıkları bu algoritmaları ticari sır niteliğinde olduğu için paylaşmamakta, dolayısıyla SSD disk teknolojisinde veri depolama şekillerinde standartlaşma olmamaktadır.

SSD disk üzerindeki flash yongalara okuma/yazma erişimlerinin tamamı SSD kontrolcüsü üzerinden gerçekleşmektedir. Sabit disklerde yazılabilir, okunabilir ve silinebilir en küçük birim 512byte iken SSD disklerde yazılabilir ve okunabilir en küçük birim 4KB büyüklüğündeki Page’lerden oluşurken; silinebilir en küçük birim ise 512KB büyüklüğündeki Blok’lardır. Page’ler Block’ların içerisinde yer alır. SSD diskler üzerinde veri sadece boş alanlara kaydedilmektedir. Daha önce veri kaydedilmiş ve silinmiş de olsa bir veri daha kaydedileceğinde, silindiği için boşalmış olan alana değil daha önce kullanılmamış olan veya daha az kullanılmış olan bir alana kaydedilir. Bunun sebebi ise SSD disklerdeki flash yongalarına maksimum veri yazma/okuma sayısının sabit disklere göre oldukça düşük olması ve dolayısıyla kullanım ömürlerinin sabit disklere göre kısa olmasıdır. SSD diskler kullanım ömrünü arttırmak için flash yongalar üzerinde mantıksal bir adresleme kullanırlar. Kullanılan bu adresleme sisteminde mantıksal olarak tutulan adresler sürekli değişmektedir ancak bu değişimler kullanıcı ve işletim sistemi tarafından fark edilmemekte, bu işlem SSD kontrolcüsü tarafından yapılmaktadır. Mekanik yapıya sahip sabit disklerde bozulan sektör yerine kullanıma açılmak üzere ayrılmış sektörler mevcut iken SSD disklerde ise disk üzerinde yazılı veri depolama kapasitelerinin %25’ine kadar fazla veri depolanabilecek flash yongalara sahip olarak üretildikleri görülebilmektedir[4]. Mekanik yapıya sahip disklerde bulunan yedek sektörler üzerine, bozulan bir sektör yerine kullanıma açılmadıkça, veri kaydedilememekte ve o sektörlere erişilememektedir. SSD disklerde ise fazladan konulmuş flash yongalar mantıksal adreslemenin değişmesiyle sırası geldiğince kullanılmaktadır.

Bir yazma işlemi sırasında mantıksal adresleme içerisinde 100. Sırada olarak görülen bir sektör bir başka yazma işleminde 110. Sektör olarak adreslenebilmektedir.

Yeni nesil SSD disklerde TRIM desteği mevcuttur. “TRIM” bir SATA komutudur. TRIM komutunun kullanılabilmesi için hem işletim sisteminde hem de SSD diskte TRIM desteğinin bulunması gerekir. TRIM desteği olmaksızın bir silme işlemi yapıldığında işletim sistemi silinen dosyayı kendi haritasında silindi olarak işaretler ancak SSD diske ayrıca sil komutu göndermez. Sil komutu gönderilmediği için SSD üzerinde halen bulunan ancak gereksiz olan veri SSD disk üzerinde çalışan Garbage Collection adı verilen yazılım tarafından bir süre sonra tespit edilerek silinirken aynı zamanda defragmantasyon işlemi de yapılarak SSD disk üzerindeki veri bloklarının daha verimli kullanılması sağlanır. Ancak Garbage Collection tarafından gereksiz ve kullanılmayan verinin tespiti ve defragmantasyona tabi tutulması zaman alabilmektedir. TRIM teknolojisi aktif olan bir sistemde ise: işletim sisteminde yapılan silme işlemiyle ilgili olarak silinmiş olarak görünen alanlar işletim sistemi tarafından SSD kontrolcüsüne bildirilir. SSD kontrolcüsü kendisine işletim sistemi tarafından silindiği bildirilen alanları çöp olarak işaretler. Daha sonra SSD diskin boşta olduğu zamanlarda çöp olarak işaretlenen alanlar Garbage Collection tarafından silinerek veri blokları düzenlenir. SSD kontrolcüsünü çöp olarak işaretlemesi ve Garbage Collection tarafından işaretlenen alanların silinmesi ve yeniden düzenlenerek bütün halinde Block’lara kaydedilmesi işlemlerinin tamamı işletim sistemi ve kullanıcı tarafından kontrol edilemeyecek bir yapı içerisinde gerçekleşmektedir. Yani eğer bir alan TRIM tarafından gönderilen komutla çöp olarak işaretlenmişse bu alan bir süre sonra geri getirilemeyecek şekilde silinecek ve ideal şekilde Block’lardaki veri düzenlenecektir. Bu işlemler yapılırken aynı zamanda mantıksal adreslemeler de değişebilmektedir. TRIM çalışma sistemi Şekil 3’da gösterilmiştir.

Şekil 3.TRIM çalışma sistemi[5]

Şekil 3.TRIM çalışma sistemi[5]

Yazma korumalı olarak adli kopyası alınmak istenen bir SSD disk üzerinde daha önce çöp olarak işaretlenmiş ancak henüz silinmemiş veriler olabilmektedir. Garbage Collection programı da çalışmaya devam etmektedir. Yazma koruma sadece işletim sistemi veya kullanıcı gibi dışarıdan diske veri yazılmasını/silinmesini engellemektedir. TRIM ve Garbage Collection sistemleri ise SSD içerisinde çalışan sistemlerdir. Donanımsal yazma koruması veya yazılımsal yazma koruması bu sistemlerin çalışmasını engellememektedir. Adli kopya alınması esnasında bu sistemler çalışmaya devam edeceğinden SSD disk üzerindeki verilerde değişiklikler olmaya devam etmektedir. İlk adli kopya alma işleminde çöp olarak işaretlenen ancak henüz Garbage Collection tarafından silinmediği için sektör üzerinde okunmuş olan bir veri aynı SSD diskten ikinci defa alınacak olan adli kopya üzerinde bulunmayabilmektedir. İki adli kopya alma işlemi süresince çalışmakta olan SSD disk üzerindeki sistemler önceden çöp olarak işaretlenmiş olan alanlarda değişiklikler yapmaya devam etmektedir. Dolayısıyla ilk adli kopya sonucu hesaplanan hash değeri ile ikinci adli kopya işlemi sonucu hesaplanan hash değeri farklı olacaktır.

Adli bilişim alanında adli kopya ile ilgili uygulamalarda elektronik delillerin orijinali üzerinde tekrar adli kopya alma işlemleri yapılmakta ve sonucunda hesaplanan hash değeri ilk adli kopya alma işleminde hesaplanmış olan hash değeri ile karşılaştırılarak farklılık görüldüğünde elektronik aygıtın delil niteliği kalmadığı değerlendirilmektedir. Bunun yanında açık olan sistemlerden alınan adli kopyalarla ilgili olarak, RAM’lerden alınan adli kopyalarla ilgili olarak ve cep telefonlarından alınan adli kopyalarla ilgili olarak tekrar adli kopya alınması ve hash değerlerinin kıyaslanması gibi bir uygulama söz konusu değildir. Çünkü açık olan sistemler, RAM’ler ve cep telefonları üzerinde kayıtlı olan verilerin adli kopyaları alınırken sistem çalışmaya devam ettiği için, halen sistem tarafından zararsız ufak değişiklikler yapılmakta olduğu bilindiğinden; tekrar bir adli kopya alındığında aynı hash değeri elde edilemeyeceği bilindiğinden, böyle bir tehid yoluna başvurulmamaktadır. Bu sistemlerden alınan ve elde olan ilk adli kopyalar üzerinden tüm inceleme ve değerlendirmeler yapılmakta, orijinal elektronik delil üzerinde tekrar hash hesaplatılması gibi bir işlem yapılmadan adli kopya delil olarak olayın aydınlatılmasında kullanılmaktadır.
Katı hal diski olarak adlandırılan SSD disklerde çeşitli sebeplerden dolayı hash problemleri yaşanabilmekte olduğu görülmektedir. Uygulamada, delil olabilecek elektronik aygıt üzerinden adli kopya alındığı sırada hesaplanan hash değeri ile, alınan adli kopyanın kaydedildiği veri depolama birimi üzerine tam ve doğru olarak kaydedildiğinin tespiti için hesaplanan hash değerleri birbiri ile aynı ise bu aşamadan sonra ilerleyen zamanda delil bütünlüğünün korunup korunmadığının kontrolü için elektronik delilin orijinali üzerinde tekrar adli kopya alma işlemi yapılması gerekmemekte, bu kontrolün eldeki adli kopya üzerinde hash hesaplatılarak yapılması gerekmektedir. Orijinal elektronik delil üzerinde meydana gelen bozulmalar ve değişimler hukuksal açıdan delil bütünlüğünün bozulduğuna anlamına gelmemelidir. Çalışan sistemlerden, RAM’lerden ve cep telefonlarından alınan adli kopyalarda olduğu gibi; diğer elektronik deliller de sadece adli kopyaları üzerinden değerlendirilmelidirler. Elektronik delil üzerinde herhangi bir veri değişikliği olup olmadığı ise orijinal delil üzerinden tekrar adli kopya alınarak ve orijinal delilin hash değeri hesaplatılarak değil, eldeki adli kopya üzerinde tekrar hash hesaplatılarak kontrol edilmelidir. Daha önceden orijinal delilden adli kopya alınırken hesaplanan hash değeri, adli kopya üzerinden tekrar hesaplatılan hash değeri ile birbirini tutuyor ise delil bütünlüğü korunuyor anlamına gelmektedir. Bu aşamada veri bütünlüğünün kontrolü için orijinal delil üzerinde tekrar hash hesaplatılması gibi bir yol izlenmemelidir.

Murat ÖZBEK

KAYNAKLAR

[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/