NTFS Forensics:
هذا الثريد لن يتعمق في شرح NTFS لأنه هناك كثير من الشروحات في هذا الموضوع. وأيضا لن اتعمق في شرح ماهو ال FileSystem ولكن من باب التبسيط
هذا الثريد لن يتعمق في شرح NTFS لأنه هناك كثير من الشروحات في هذا الموضوع. وأيضا لن اتعمق في شرح ماهو ال FileSystem ولكن من باب التبسيط
الFileSystem هو طريقة حفظ, قراءة, استرجاع الملفات من الجهاز, مثال لتبسيط الفكرة فكر في دواليب المطبخ, بدونها المطبخ عبارة عن أدوات منثورة في غرفة مغلقة, بوجود الدواليب نقدر نحط "الدلة" في دولاب معين ويكون سهل الوصول لها, الدواليب هي ال FileSystem
زي ماذكرت تركيزنا هنا مو دراسة الNTFS تركيزنا هو التحقيق الجنائي لبعض الملفات داخل هذا النظام, ومن أهمها
$MFT – Master File Table
$UsnJrnl – Change Journals
$MFT – Master File Table
$UsnJrnl – Change Journals
سؤال يطرى لبعض المحللين, ليش أساسا نحلل الNFTS و ال$MFT و ال$UsnJrnl؟
هذا سؤال رهيب و الجواب:
هذا سؤال رهيب و الجواب:
اذا مخترق نفذ اختراق باستخدام أدوات وعدل على أوقات الأدوات هذي, او حذف هذي الأدوات بعد الاختراق وماصار لها أي اثر بالجهاز! هنا ندخل على هذي الملفات لانها تحتوي على record لكل ملف وجد في يوم من الأيام على الجهاز!!
كالعادة لبداية تحليل أي ملفات لازم اننا نسوي acquire (تحريز للأدلة), الملفات التابعة لNTFS جميعها ملفات مخفية موجودة في الroot لاي قرص من نوع NFTS مثال ( (C:\$MFT , D:\$\Extend\$UsnJrnl
معلومة مهمة:
اذا الجهاز فيه قرص واحد ومقسوم C: & D: حيكون فيه ملفين C:\$MFT & D:\$MFT
معلومة مهمة:
اذا الجهاز فيه قرص واحد ومقسوم C: & D: حيكون فيه ملفين C:\$MFT & D:\$MFT
طريقة التحريز (Acquisition) :
FTK Imager File Add Evidence Item … and select wanted disk
Powershell ps1 script(I didn’t test it) gist.github.com
FTK Imager File Add Evidence Item … and select wanted disk
Powershell ps1 script(I didn’t test it) gist.github.com
طيب حوقف كلام ونبدأ تحليل شوي, الخطوة الثانية هي الParse لل$MFT
باستخدم تول MFTECmd احد أدوات الرهيب @EricRZimmerman
ericzimmerman.github.io
باستخدم تول MFTECmd احد أدوات الرهيب @EricRZimmerman
ericzimmerman.github.io
الان وقت جيد لشرح MACB Timestamps
M: Modified
A: Accessed
C: Changed
B: Birthed
M: Modified
A: Accessed
C: Changed
B: Birthed
تكملة:
موضوع اخر لازم نشرحه وهو $STANDARD_INFO, $FILE_NAME
$SI: تحفظ معلومات عن الملف و المالك للملف وأيضا Timestamps
$FN: تحفظ معلومات اخرى عن الملف مثل حجمه و الlength و أيضا Timestamps
موضوع اخر لازم نشرحه وهو $STANDARD_INFO, $FILE_NAME
$SI: تحفظ معلومات عن الملف و المالك للملف وأيضا Timestamps
$FN: تحفظ معلومات اخرى عن الملف مثل حجمه و الlength و أيضا Timestamps
يعني الملفات تحتوي على 8 Timestamps (اذا كان اسم الملف اقل من 8.3 او 8 احرف و 3 للصيغة) اذا تجاوز هذا العدد راح يكون للملف 12 Timestamp
4: من $SI
4: من $FN
4: من $FN كون الأسماء الطويلة تحفظ 2 record لكتابة كامل اسم الملف (الموضوع شوي يلخبط ولكن ممكن نخوض فيه مستقبلا)
4: من $SI
4: من $FN
4: من $FN كون الأسماء الطويلة تحفظ 2 record لكتابة كامل اسم الملف (الموضوع شوي يلخبط ولكن ممكن نخوض فيه مستقبلا)
مثال توضيحي:
Abcd.txt : 8 Timestamps
Areallylongfilename.txt : 12 Timestamps
Abcd.txt : 8 Timestamps
Areallylongfilename.txt : 12 Timestamps
المذكور في التغريدة السابقة ليس صحيح تماما Trick question ولشرحها بحط سؤالين:
1: هل يستطيع المستخدم تعديل على قيم $FN؟ الجواب لا, فقط الSystem يعدل على القيم
2:هل يستطيع المستخدم إعطاء امر للSystem لتعديل هذي القيم؟ الجواب نعم!
1: هل يستطيع المستخدم تعديل على قيم $FN؟ الجواب لا, فقط الSystem يعدل على القيم
2:هل يستطيع المستخدم إعطاء امر للSystem لتعديل هذي القيم؟ الجواب نعم!
نلاحظ هنا انه عدل على قيم موجودة في $FILE_NAME !!,وذكرنا انه المخترق ما يقدر بطريقة مباشرة يعدل عليها!!, هنا الSystem هو اللي عدل هذي القيم بعد عملية إعادة التسمية و ليس المخترق
طيب كيف نصيد هذا الأسلوب لو المخترق عمله؟؟
هنا تجي فائدة C:\$Extend\$UsnJrnl\$J وهو ملف يحتفظ بكامل العمليات اللي تصير على ملف ما, خلال فترة حياته كاملة من الانشاء الى الحذف النهائي
هنا تجي فائدة C:\$Extend\$UsnJrnl\$J وهو ملف يحتفظ بكامل العمليات اللي تصير على ملف ما, خلال فترة حياته كاملة من الانشاء الى الحذف النهائي
جاري تحميل الاقتراحات...