İçeriğe atla
0 XP 0
13 dkderinleşmeyle 14 dk55 XP7 etkinlik

İmaj alma ve write blocker

Bu derste
  • Yazma engelleyici arkasında doğru diski seçip dd, dcfldd ve ewfacquire ile imaj almayı, hedefli toplamayı ve özel durumları öğren.
  • Bu derste fin-pc12 diskini Linux'ta uçtan uca imajlayacak, aynı diski E01 kabına alacak ve hedefli toplamayla karşılaştıracaksın.
  • Yazma engelleyici olmadan bağlanan disk, ilk saniyede değişir.

Puan bütün etkinlikleri cevaplayınca hesaba yazılır. Bu dersi tamamlayınca +55 XP alacaksın. Giriş yapmadan ilerlersen puan yalnız bu tarayıcıda durur.

Asıl delile dokunmazsın, analiz bit bit kopya üzerinde yürür. Bu kopyayı almak (edinim, acquisition) adli işin en mekanik ama en az affeden adımıdır. Yanlış diski seçersen şüpheli diskin üzerine yazarsın. Yazma engelleyiciyi atlarsan işletim sistemi diski ilk saniyede değiştirir.

Önce edinim türlerini ve yazma engelleyiciyi tanıyacaksın. Sonra fin-pc12 diskini Linux'ta uçtan uca imajlayacak, aynı diski E01 kabına alacak ve dakikalar süren hedefli toplamayı tam imajla karşılaştıracaksın. Son bölümde SSD, şifreli disk, sanal makine ve bulut gibi özel durumlarda imajın ve özetin nasıl alındığını göreceksin.

Edinim türleri ve yazma engelleyici

Dosya kopyalamakla imaj almak aynı iş değil. Kopyalama yalnız dosya sisteminin gösterdiği dosyaları alır. Fiziksel imaj ise diskin her sektörünü baştan sona alır.

Silinen dosyaların alanı, dosya sonlarındaki boşluk ve bölüm dışı bölgeler de kopyaya girer. Her iş fiziksel imaj gerektirmez. Mantıksal imaj yalnız seçilen klasörleri alır ve hızlıdır.

Hedefli triyaj olay için en değerli artefaktları dakikalar içinde toplar. Canlı mantıksal imaj ise şifreli bir birim açıkken çözülmüş dosya sistemini alır. Aşağıdaki tablo dört türü ne aldıklarına ve ne kaçırdıklarına göre karşılaştırır.

Tür               Ne alır                        Ne kaçırır                        Ne zaman
Fiziksel          Bütün sektörler                Açılmamış HPA ya da DCO alanı     Varsayılan, mahkemeye gidecek iş
Mantıksal         Seçilen dosya ve klasörler     Silinen alan, dosya boşlukları    Dar kapsam, dosya sunucusu
Hedefli triyaj    $MFT, kovanlar, günlükler      Belge içerikleri, silinen alan    Çok makinede hızlı tarama
Canlı mantıksal   Açık birimin çözülmüş hâli     Birim dışı alan, silinen alan     Şifreli disk, anahtar yok
Dört edinim türü. Kapsam daraldıkça hız artar, kaçan veri de artar.

Hangi türü seçersen seç, kaynak diske yazmazsın. Yazma engelleyici (write blocker) inceleme makinesi ile şüpheli disk arasında durur. Okuma komutlarını geçirir, diske giden her yazma komutunu keser.

Donanım tipi ayrı bir kutudur. Yazılım tipi ise işletim sisteminin sürücü katmanında çalışır. Adli laboratuvarda donanım tercih edilir, çünkü işletim sisteminin ayarına bağlı değildir.

Engelleyiciye körü körüne de güvenmezsin. NIST'in CFTT programı donanım ve yazılım engelleyicileri test eder ve raporlarını yayımlar. Cihazı bu raporlara bakarak seçersin. Her işten önce kısa bir sınama da yaparsın: test diskini engelleyicinin arkasına takar, yazmayı dener ve reddedildiğini kayda geçirirsin.

Etkinlik 1 / 7

Şüpheli diski analiz makinesine yazma engelleyici olmadan bağlarsan ne olur?

Doğru diski seç ve kilitle

Komut yazmadan önce hedef diski hazırlarsın. Delil diskini sıfırlar, dosya sistemini kurar ve boş alanı ölçersin. Önceden temizlenmemiş diske alınan imaj eski işin artıklarıyla karışır. Süreyi de hesaplarsın.

500 GB'lık bir diskin imajı saniyede 100 MB hızla bir buçuk saate yakın sürer. Ekibe süreyi baştan söylemek beklentiyi doğru kurar. Sonra kaynak diski bulursun. Linux her diske bir ad verir, ama bu ad bağlanma sırasına göre değişir.

Dün sdb olan disk bugün sdc olabilir. Bu yüzden diski adıyla değil; boyutu, modeli ve seri numarasıyla tanırsın. Seri numarası imajı fiziksel nesneye bağlar ve forma yazılır.

$ lsblk -o NAME,SIZE,TYPE,MODEL,SERIAL,MOUNTPOINTS
NAME     SIZE TYPE MODEL          SERIAL        MOUNTPOINTS
sda    476.9G disk LAB-SSD-512    LAB0001A77
├─sda1   512M part                              /boot/efi
└─sda2 476.4G part                              /
sdb    465.8G disk HDD500-SATA    WX41A8YH7712
├─sdb1   100M part
└─sdb2 465.7G part
sdc      1.8T disk DELIL-2TB      LAB0003C12
└─sdc1   1.8T part                              /eviz

$ sudo blockdev --setro /dev/sdb
$ sudo blockdev --getro /dev/sdb
1
$ sudo hdparm -N /dev/sdb

/dev/sdb:
 max sectors   = 976773168/976773168, HPA is disabled
İnceleme makinesinde üç disk. Kaynak sdb, delil diski sdc, sistem diski sda.

Çıktıyı satır satır oku. sda inceleme makinesinin kendi diskidir, kök dizin (/) onun üzerinde bağlı. sdc delil diskidir ve /eviz dizinine bağlı. sdb hiçbir yere bağlı değil, 465.8G boyutunda ve seri numarası formdakiyle aynı.

500 GB'lık bir disk lsblk'de 465.8G görünür, çünkü araç 1024'ün katlarıyla sayar. blockdev --setro çekirdeğe bu aygıta yazmamasını söyler. --getro çıktısındaki 1 kilidin açık olduğunu doğrular. Bu yazılım kilidi donanım engelleyicinin yerini tutmaz, ama ikinci bir emniyet katmanıdır.

hdparm -N iki sayı verir: diskin şu an gösterdiği son sektör ve donanımın gerçek sınırı. İkisi eşitse gizli alan yoktur. Bazı USB köprüleri bu komutu diske iletmez; birçok adli köprü ise HPA ve DCO durumunu kendi ekranında gösterir.

Derinleş:HPA ve DCO: diskin sakladığı alan

Host Protected Area (HPA), 1998'de ATA-4 standardıyla geldi. Disk, işletim sistemine gerçek kapasitesinden daha az sektör bildirir ve aradaki bölüm sıradan okuma komutlarına görünmez. Üreticiler bu alanı kurtarma bölümü ve tanılama araçları için kullandı. Device Configuration Overlay (DCO) ATA-6 ile geldi ve bir adım ileri gider: diskin bildirdiği kapasiteyi ve özelliklerini üretici ya da montajcı düzeyinde kısar.

Adli açıdan sorun aynıdır. Veri bu alana gizlenebilir ve bildirilen kapasiteye güvenen bir imaj aracı onu atlar. Tespit iki sayının karşılaştırılmasıyla yapılır. HPA için hdparm -N çıktısındaki görünen ve gerçek sektör sayısına, DCO için hdparm --dco-identify çıktısına bakarsın.

Alanı açmak diskin yapılandırmasını değiştirir. Bu yüzden karar gerekçesiyle yazılır ve mümkünse bu alanı kendisi okuyabilen bir adli köprü kullanılır. hdparm kılavuzu DCO sıfırlama komutu için ağır veri kaybı uyarısı yapar. İmaj bu alanı kapsamıyorsa rapor bunu açıkça söyler.

Etkinlik 2 / 7

Laboratuvara 256 GB'lık bir SSD yazma engelleyici köprüsüyle bağlandı. lsblk çıktısında kaynak diskin satırını bul.

Zafiyetli satıra tıkla.

Ham imaj: dd ve dcfldd

dd en temel araçtır ve her Linux'ta durur. if kaynağı, of hedefi, bs bir seferde okunan blok boyutunu verir.

conv=noerror,sync birlikte yazılır. noerror bozuk sektörde durmamayı söyler. sync ise okunamayan bloğun yerine aynı boyda sıfır koyar. İkisi birlikte olmazsa hizalama kayar ve sonraki bütün veri yanlış adrese düşer.

dd sade olduğu için güvenilirdir, ama özet hesaplamaz ve hata listesi tutmaz. dcfldd, dd'nin adli işler için genişletilmiş hâlidir. Kopyalarken özeti hesaplar, pencere özetleri yazar ve okuma hatalarını ayrı bir kayda döker. fin-pc12 diski için ekip aşağıdaki komutları kullandı.

$ sudo dcfldd if=/dev/sdb of=/eviz/fin-pc12.dd bs=4K conv=noerror,sync hash=sha256 hashwindow=1G hashlog=/eviz/fin-pc12.hashlog errlog=/eviz/fin-pc12.err
122096646+0 records in
122096646+0 records out
$ tail -1 /eviz/fin-pc12.hashlog
Total (sha256): 9f2c1a7b3d5e08c4a6b91d2f7e3c5a80b4d16f29c73e8a05b2c4d9e71f36a8b0
$ img_stat /eviz/fin-pc12.dd
IMAGE FILE INFORMATION
--------------------------------------------
Image Type: raw

Size in bytes: 500107862016
Sector size:    512
$ sha256sum /eviz/fin-pc12.dd
9f2c1a7b3d5e08c4a6b91d2f7e3c5a80b4d16f29c73e8a05b2c4d9e71f36a8b0  /eviz/fin-pc12.dd
dcfldd ile imaj, img_stat ile boyut, sha256sum ile yazılan kopyanın doğrulaması.

Komutu parça parça oku. bs=4K seçimi rastgele değil. Diskin 976.773.168 sektörü 4 KiB'lık bloklara tam bölünür, bu yüzden son blok yarım kalmaz.

Kayıt satırlarındaki +0 bunu gösterir: yarım okunan blok yoktur. hash ve hashwindow özeti okuma sırasında hesaplar. errlog okunamayan sektörleri tek tek yazar ve bu liste sonradan eksik çıkan verinin nedenini açıklar.

img_stat, Sleuth Kit'in imaj bilgisi aracıdır ve boyutu bayt olarak verir: 500.107.862.016 bayt, yani diskin tam boyu. Son adımda imaj dosyasının özetini yeniden hesaplar ve dcfldd'nin toplam değeriyle karşılaştırırsın. İki değer aynıysa okunan veri diske eksiksiz yazılmıştır.

Blok boyutu basit bir tuzağa da açılır. 64 KiB, 500 GB'lık bir diski tam bölmez ve son blokta 24.576 bayt kalır. sync bu yarım bloğu da sıfırla 64 KiB'a tamamlar. İmaj diskten 40.960 bayt büyük çıkar ve özeti kaynak özetiyle tutmaz.

Aşağıdaki alıştırmada bu çıktıyı göreceksin. Okuma hatasında da benzer bir bedel var. sync, hata veren bloğun tamamını sıfırlar.

64 KiB'lık blokta tek bozuk sektör, yanındaki 127 sağlam sektörü de götürür. Bu yüzden bozuk bölgelerde küçük blok boyutu seçilir. Ses çıkaran ya da sürekli hata veren disk ise her okumada biraz daha bozulur. Böyle bir diski tekrar tekrar denemek yerine donanım laboratuvarına yönlendirirsin.

Etkinlik 3 / 7

/dev/sdb diskinin ham imajını al, bozuk sektörlerde durma ve boşluğu sıfırla doldur.

ogrenci@lab

Etkinlik 4 / 7

Yazma engelleyiciyle imaj alma adımlarını sıraya koy.

Sürükleyip doğru sıraya koy.

Bir öğeye odaklan, yukarı ve aşağı ok tuşlarıyla taşı. Home tuşu en üste, End tuşu en alta alır.

  • 1İmajın özetini kaynak özetiyle karşılaştır
  • 2dcfldd ile imajı al
  • 3Özet kayıtlarını delil formuna işle
  • 4Yazma engelleyiciyi analiz makinesine bağla
  • 5Şüpheli diski engelleyicinin arkasına tak
  • 6Kaynak diskin SHA-256 özetini hesapla

E01 kabı: sıkıştırma, üstveri, parçalar

E01 kabı (Expert Witness Format) bir ticari adli yazılımdan doğdu ve bugün hemen her adli aracın okuduğu bir biçimdir. Ham imajdan üç farkı vardır. Veriyi sıkıştırır, bu yüzden boş sektörler çok yer kaplamaz. Vaka numarası, delil numarası, inceleyen ve özet gibi üstveriyi kabın içine gömer.

Veriyi parçalara böler ve her parça ayrı dosyada durur. Sleuth Kit ve Autopsy bu kabı doğrudan okur, ayrıca açman gerekmez. AFF4 ise açık bir biçimdir.

Sıkıştırma ve zengin üstveri taşır, ama araç desteği E01 kadar yaygın değildir. Biçim seçimi laboratuvar politikasına bağlıdır. Hangisini seçersen seç, bütünlüğü özetle kanıtlarsın.

Biçim   Sıkıştırma   Gömülü üstveri               Parçalama          Araç desteği
Ham     Yok          Yok, ayrı dosyada tutulur    İsteğe bağlı       Her araç okur
E01     Var          Vaka, inceleyen, MD5/SHA-1   Var (E01, E02...)  Çok yaygın
AFF4    Var          Zengin, açık şema            Var                Daha sınırlı
Üç imaj biçimi yan yana.
$ sudo ewfacquire /dev/sdb
Image path and filename without extension: /eviz/fin-pc12
Case number: 2026-014
Description: fin-pc12 SATA disk, S/N WX41A8YH7712
Evidence number: 2026-014-D01
Examiner name: E. Yildiz
Notes: Yazma engelleyici arkasinda, kaynak SHA-256 formda
Media type (fixed, removable, optical, memory) [fixed]:
Media characteristics (logical, physical) [physical]:
Use EWF file format (ewf, smart, ftk, encase1, ..., encase6, ...) [encase6]:
Compression level (none, empty-block, fast, best) [none]: fast
Evidence segment file size in bytes (1.0 MiB <= value <= 7.9 EiB) [1.4 GiB]:
...
Continue acquiry with these values (yes, no) [yes]: yes
...
MD5 hash calculated over data:          3b7e2f91c04a6d58e1b9a7c2f05d8e46
ewfacquire: SUCCESS
$ ls /eviz
fin-pc12.E01  fin-pc12.E02  fin-pc12.E03  ...
ewfacquire soruları ve fin-pc12 için verilen cevaplar. Köşeli parantez varsayılan değerdir.

Cevapları oku. Vaka ve delil numarası delil formundaki numaralarla aynıdır, böylece kap forma bağlanır. Açıklama satırına seri numarasını da yazarsın.

Köşeli parantezdeki değer varsayılandır ve boş geçersen o kullanılır. Sıkıştırma düzeyi hız ile boyut arasında bir tercihtir; fast çoğu işte iyi bir dengedir. Parça boyutu varsayılan olarak 1,4 GiB'dır ve imaj fin-pc12.E01, fin-pc12.E02 diye devam eden dosyalara bölünür.

Parçalama eski bir ihtiyaçtan doğdu: FAT32 biçimli bir diskte tek dosya 4 GiB'ı aşamaz, CD ve DVD de küçüktür. Parçalar tek bir kap sayılır. Birini kaybedersen kap açılmaz, bu yüzden bütün parçaları birlikte taşır ve birlikte doğrularsın. Bitince ewfinfo ile aynı alanların kaba yazıldığını görürsün.

Etkinlik 5 / 7

Aracı yaptığı işle eşleştir.

Soldan bir tane seç, sağdan eşini seç. Kullanılmış bir seçeneği yeniden seçersen yeni öğeye taşınır.

Etkinlik 6 / 7

Doğru mu, yanlış mı?

Ham imaj yerine E01 kabı seçmek delilin bütünlük kanıtını zayıflatır.

Hedefli toplama ve özel durumlar

Kırk makinenin tam imajını almak günler sürer. Olay yayılırken bu süre yoktur. Hedefli toplama bu yüzden var.

Windows tarafında yaygın araçlardan biri KAPE'tir. KAPE iki iş yapar: dosya toplar (target) ve toplanan dosyaları başka araçlarla işler (module). Target, hangi dosyaların alınacağını tanımlayan küçük yapılandırma dosyalarıdır.

KapeTriage bileşik hedefi $MFT gibi dosya sistemi dosyalarını, kayıt kovanlarını, olay günlüklerini, Prefetch ve Amcache gibi çalıştırma izlerini, LNK ve JumpList dosyalarını tek komutla toplar. İşletim sisteminin kilitlediği dosyaları ikinci turda ham disk okumasıyla kopyalar. Özgün zaman damgalarını hedef dosyalara geri yazar ve her dosyanın kaynak SHA-1 değerini kopyalama kaydına işler.

D:\kape> kape.exe --tsource C: --tdest E:\eviz\2026-014\kape --target KapeTriage --vhdx fin-pc12

E:\eviz\2026-014\kape> type 2026-09-14T06_21_37_4417310_KapeTriage_copylog.csv
SourceFile,FileSize,SourceFileSha1,DeferredCopy
C:\$MFT,268435456,3f7a51c09be2d64e18a07c3b5d92e6f1a48c07b2,True
C:\Windows\System32\config\SYSTEM,17563648,9b1c4e07a3f25d86c1e9b04a7d3f62e5c81a90d4,True
C:\Windows\Prefetch\SVC_UPDATE.EXE-6A1F3B2C.pf,14250,5e08d2a1f7c34b96e0a15d8c3b72f94e6d1a08c5,False
fin-pc12'de KAPE ile hedefli toplama. Kopyalama kaydının sütunları kısaltıldı.

Kaydı oku. DeferredCopy değeri True olan dosyalar kilitliydi ve ham okumayla alındı. Her satırda kaynak dosyanın SHA-1 değeri durur, yani toplanan her parça tek tek mühürlüdür.

--vhdx seçeneği bütün çıktıyı tek bir sanal disk dosyasında toplar. O dosyanın SHA-256 özetini de alırsın.

Hedefli toplama ne zaman yeter? Ağdaki kırk makinede aynı zararlının izini arıyorsan yeter: Prefetch, Amcache ve olay günlüğü makine başına dakikalar içinde gelir. Silinmiş bir belgeyi kurtarman ya da mahkemeye gidecek bir dosya hazırlaman gerekiyorsa yetmez. Hedefli toplama silinen alanı ve dosya boşluklarını almaz, fiziksel imaj gerekir.

Bazı ortamlarda kurallar değişir. SSD ve NVMe disklerde silinen veri uzun yaşamaz.

İşletim sistemi TRIM komutuyla boşalan blokları diske bildirir, denetleyici de bu blokları arka planda temizler. Bu temizliği diskin kendi denetleyicisi yaptığı için yazma engelleyici takılıyken de sürebilir. Aynı SSD'den alınan iki imajın özeti farklı çıkabilir; o zaman ikisini de kaydeder, nedenini raporda yazarsın. BitLocker açık bir dizüstünde kurtarma anahtarını dizin hizmetinden alırsın.

Anahtar yoksa makine açıkken canlı mantıksal imaj alırsın. Sanal makinede disk zaten bir dosyadır: vmdk ya da vhdx dosyasını kopyalar ve özetini alırsın. Bulutta birimin anlık görüntüsü alınır. Özet için bu görüntüden yeni bir birim oluşturur, inceleme makinesine bağlar ve imajını alırsın.

Bellek dökümü için aynı mantık geçerli ama araç değişir. Windows tarafında WinPmem, Linux tarafında LiME kullanılır. Döküm dosyasını her zaman dış diske yazarsın, incelenen makineye değil. İmaj alma bittiğinde kaynak diski hemen mühürlersin: torbaya koyar, numarasını yazar ve kasaya gönderirsin.

Masada bekleyen disk her dakika yeni bir soru üretir. İmajı doğrulamadan da analiz masasına geçmezsin. Doğrulama birkaç dakika sürer, hatalı imajla geçirilen gün ise geri gelmez.

Etkinlik 7 / 7

Her durumu en uygun edinim türüne ayır.

Önce bir seçeneğe, sonra aşağıdaki uygun kutuya bas. İstersen seçeneği kutuya sürükleyip bırak. Yerini değiştirmek için aynı işlemi tekrarla.

0/5 seçenek yerleşti.

Bu derste bir hata mı gördün? Bildir