eCDFP Module (5) File System Analysis (Part-3)

 Boot Strap , Reserved Sectors

    အခု Module အတွက် စာကြည့်ရုံတင်မပဲ Disk Editor နဲ့တွဲပြီး လက်တွေ့ကြည့်ရင် ပိုမိုရှင်းလင်းပါမယ်။



    Bootstrap Sector အကြောင်းကတော့ Forensics မှာ သိပ်ပြီးအသုံးမဝင်တဲ့အတွက် အခု Module မှာ မဖော်ပြထားပါဘူး။ Bootstrap Sector ရဲ့အဆုံးက 0X55AA နဲ့အဆုံးသတ် ပါတယ်။ Reserved Sector ကတော့ အမြဲတမ်း 0 တွေဖြစ်နေတတ်ပါတယ်။ 

0X55AA (EOC) (END OF SECTOR) 


Reserved Sector 


အခုနောက်ထပ်ဖော်ပြာမှာကတော့  FAT Area အကြောင်းဖြစ်ပါတယ်။ File System တွေကို Cluster အဖြစ်ပိုင်းခြားလိုက်တဲ့အခါမှာ FAT က အဆိုပါ Cluster တွေရဲ့ တည်ရှိတဲ့ နေရာတွေကို  ညွှန်ပြတဲ့ လမ်းညွှန်မြေပုံဖြစ်ပါတယ်။  FAT Area ကိုတော့ အသုံးပြုတဲ့ FAT File System အပေါ်မူတည်ပြီး FAT12 ဆိုရင် 12 Bits , FAT 16 ဆိုရင် 16 Bit, FAT 32 ဆိုရင် 28 Bits စသည်ဖြင့်ရှိပါတယ်။ FAT 32 မှာ 4 Bits က Reserved ဖြစ်ပါတယ်။ 

အောက်မှာပြထားတဲ့ပုံကတော့ FAT 32 File System ကို Disk Editor ထဲမှာ ထည့်ကြည့်တဲ့အခါမှာ FAT Area ဖြစ်တဲ့ FAT1, FAT2 ကိုမြင်တွေ့ရမှာဖြစ်ပါတယ်။ 



FAT 32 မှာ 28 Bits သာအသုံးပြုတာဖြစ်ပြီး ကျန်တဲ့ 4 Bits က Reserved ဖြစ်ပါတယ်။ ဒါကြောင့် ကျန်တဲ့ 4 bits နေရာကို ?  အနေနဲ့ပြထားပါတယ်။

တစ်ကယ်တော့ File တစ်ခုဟာ Storage ပေါ်နေရာယူတဲ့အခါမှာ File ရဲ့ Size အပေါ်မူတည်ပြီး Cluster တစ်ခုထက်ပိုပြီးနေရာယူနိုင်ပါတယ်။ ဥပမာ File တစ်ခုက Cluster နေရာ ၄ နေရာကိုယူထားတယ်ဆိုရင် ပထမဆုံး Cluster မှာ ဒီ Cluster မှာပါ File ကရှိနေတာမဟုတ်ဘူး နောက်ထပ် ဒုတိယ Cluster မှာလဲ အခု File ရှိတယ်ဆို တာကိုညွှန်ပြပေးပါတယ်။

ပထမ Cluster  ကနေ ဒုတိယ Cluster , ဒုတိယ Cluster ကနေ တတိယ Cluster, တတိယ Cluster ကနေ စတုထ္ထ Cluster ကိုညွှန်ပြတာဖြစ်ပါတယ်။ နောက်ဆုံး Cluster မှာ ဒီ Cluster မှာ File နေရာဆုံးပြီးဖြစ်ကြောင်း ဖော်ပြတဲ့ End Of Chain Value ပါဝင်ပါတယ်။ အောက်ကပုံကိုကြည့်လိုက်ရင် ရှင်းသွားမှာ ဖြစ်ပါတယ်။ JPEG File တစ်ခုက Cluster 4 နေရာဖြစ်တဲ့ 100 – 103 အထိနေရာယူထားပါတယ်။ 


    အောက်ကပုံကိုကြည့်ရင် Cluster 2 ကနေစတာဖြစ်တဲ့အတွက် နောက်ထပ် Cluster 0 Cluster 1 တို့ရှိနေပါတယ်။ Cluster 0 Cluster 1 တို့က Reserved ဖြစ်ပါတယ်။ 

 



F8FFFF0F = Cluster 0 ,  FFFFFF7F = Cluster 1

Cluster 0 ကတော့ Storage နဲ့ပတ်သတ်တဲ့အကြောင်းအရာ တွေကိုဖော်ပြတာ ဖြစ်ပါတယ်။ Cluster 1 က Dirty Volume Management အတွက်ဖြစ်ပါတယ်။ Cluster 1 မှာ Storage က Mount  ဖြစ်လားမဖြစ်ဘူးလားဆိုတာကို သိမ်းဆည်းထားပါတယ်။ ဥပမာ Operation Syetem က Shutdown ဖြစ်သွားပြီး Storage က unMount မလုပ်နိုင်ဘူး ဆိုရင် Cluster 1 ထဲမှာ မှတ်ထားပြီး နောက်တစ်ခါမှာ Check Disk လုပ်ခိုင်းတာမျိုးတွေ Volume Integrity ကို Restore လုပ်နိုင်စေရန်ဖြစ်ပါတယ်။


          အောက်ကပုံကတော့ FAT 32 ကို High Level View နဲမြင်ရတာဖြစ်ပါတယ်။



    ဒါဆိုရင် ကျွန်တော်တို့ Storage မှာ FAT1 နဲ့ FAT2 က ဘယ်မှာရှိတယ် ဆိုတာကိုကြည့်ကြည့်ပါမယ်။ အရင်တုန်းက Boot Sector မှာပါဝင်တာတွေကို တွက်ချက်တာကို မှတ်မိမယ်ထင်ပါတယ်။ အခုအပိုင်းနဲ့ဆိုင်တာကို ပြန်ပြီး မှတ်မိအောင် ဖော်ပြပါမယ်။

FAT1 နေရာတွက်ချက်ခြင်း

Boot Sector



    Bytes Per Sector  ရဲ့ တန်ဖိုးက 0002 ဖြစ်ပါတယ်။ 0022 ဖြစ်တဲ့အတွက် Sector တစ်ခုမှာရှိတဲ့ Bytes ရဲ့ ပမာဏက 512 bytes ဖြစ်ပါတယ်။

Sector Per Cluster ရဲ့ တန်ဖိုးက 10 ဖြစ်ပါတယ်။ Hex 10 ကို Decimal ပြောင်းရင် 16 ရပါတယ်။ ဒါကြောင့် Cluster တစ်ခုမှာ ပါဝင်တဲ့ Sector အရေအတွက်က 16 ခုဖြစ်ပါတယ်။

Reserved Number Of Sector တန်ဖိုးက 820C ဖြစ်ပါတယ်။  Reserved Number Of Sector = 3,202

    FAT 1 ရှိတဲ့နေရာက Reserved ဖြစ်နေတဲ့ Sector ပေါင်း ၃၂၀၂ ခုရှိတဲ့အထဲမှ Sector 3202 မှာစပါတယ်။ ဟုတ်မဟုတ် Disk Editor နဲ့တိုက်ဆိုင်ကြည့်ပါမယ်



FAT32 နေရာတွက်ချက်ခြင်း


    Sector Per FAT  က 4 Bytes နေရာယူထားပါတယ်။ ဒါကြောင့် သူရဲ့ Hex =  BF390000 ဖြစ်ပါတယ်။  Decimal ပြောင်းတဲ့အခါမှာ 39BF  အနေနဲ့ပြောင်းပါတယ်။ ဒါကြောင့်

Sector Per FAT  = 14783

ဒါဆိုရင် FAT2 နေရာကိုသိဖို့အတွက်ဆိုရင်

( Reserved Number Of Sector = 3202 ) + (Sector Per FAT = 14783) = 17,985

FAT2 နေရာက Sector 17985 ကနေစတင်မှာဖြစ်ပါတယ်။

ဟုတ်မဟုတ် Disk Editor နဲ့တိုက်ဆိုင်ကြည့်ပါမယ်။


Comments

Popular posts from this blog

B-Trees (NTFS)

NTFS Index Attributes

Volatility Workbench (GUI) for the Volatility tool