فهم MBR الواقي في أقراص GPT المقسمة. الجزء 1.

مقدمة

في هذه السلسلة من منشورات المدونة، سأتعمق في مخطط جدول أقسام GUID. أهدف إلى تقديم فهم واضح لمخطط GPT وكيف يمكّن المحققين الجنائيين من تحليل البيانات واستعادتها بدقة من أجهزة التخزين الحديثة. يضمن دعم GPT للأقراص الأكبر حجمًا، والأقسام المتعددة، وميزات تكامل البيانات المحسّنة، مثل التكرار وحماية CRC، إمكانية وصول المحققين إلى جميع البيانات الضرورية والتحقق منها. علاوةً على ذلك، يعزز توافق GPT مع أنظمة التشغيل المعاصرة والبرامج الثابتة UEFI القدرة على إجراء فحوصات جنائية شاملة، مما يجعله لا غنى عنه للكشف عن الأدلة الرقمية وضمان سلامة وموثوقية نتائج الطب الشرعي. 

سأبدأ مع MBR الواقي وكيف يختلف عن MBR التقليدي المستخدم مع محركات الأقراص القديمة في BIOS. بعد ذلك، سأتناول رأس GPT ثم مصفوفة إدخال GPT. أخيرًا، سأشارك بعض الأفكار والنصائح الختامية حول شرح هذه المفاهيم للشخص العادي، كما هو الحال عند الإدلاء بشهادته أمام قاضٍ أو هيئة محلفين.

في نهاية المطاف، بعد قراءة هذه السلسلة، لن تواجه أي مشكلة في التعامل مع تحدي CTF الموجود على منصة CTF الخاصة بنا.

الجزء الأول

MBR الوقائي MBR

زوّدنا سجل التمهيد الرئيسي (MBR) من وجهة نظر قديمة بخريطة طريق لتحديد موقع ما يصل إلى أربعة أقسام أساسية على القرص الصلب. كان كل إدخال قسم 16 بايت يرشدنا إلى موقع هذا القسم، سواء كان FAT32 أو NTFS. ومع ذلك، فإن MBR القديم كان له قيود تشمل على سبيل المثال لا الحصر:

  • حد حجم 2 تيرابايت.
  • يقتصر على 4 أقسام أساسية فقط؛ إذا كانت هناك حاجة إلى المزيد، فسيتم تعيين أحد هذه الأقسام الأساسية كقسم موسع.
  • نقطة فشل واحدة لأن MBR، الذي يتضمن جدول الأقسام، كان موجودًا في القطاع 0 بدون نسخة احتياطية.

يحتوي LBA 0 (القطاع المنطقي 0) من القرص الصلب GPT على ما يسمى MBR الواقي بدلاً من MBR القديم. فكر في MBR الوقائي كعلامة عند مدخل المكتبة تخبر الجميع "مرحبًا، هذه المكتبة تستخدم نظامًا جديدًا ومحسّنًا الآن. لا تستخدموا الطريقة القديمة لأنها لن تعمل هنا."

بدلاً من احتوائه على موقع أربعة أقسام أساسية فقط على محرك الأقراص، يقوم MBR الواقي بتمييز القرص بأكمله على أنه مستخدم بواسطة GPT، مما يشير للأنظمة القديمة أن القرص مستخدم بالكامل. يوجد MBR الواقي فقط للتوافق مع الإصدارات السابقة. وهو يحتوي على إدخال قسم واحد فقط، مما يميز القرص ويمنع الأدوات القديمة من إساءة تفسير بنية القرص. 

هيكل MBR الوقائي MBR

تحتوي أول 440 بايت من MBR الواقي على رمز تمهيد لا تستخدمه أنظمة UEFI. يتم تجاهلها.  

فيما يلي تخطيط افتراضي لقرص مع تثبيت جديد لنظام التشغيل Windows 10 يحتوي على قسم واحد فقط تم إنشاؤه أثناء عملية التثبيت، وهو محرك الأقراص C:. يتم إنشاء قسم نظام UEFI تلقائيًا وإخفاؤه عن المستخدم، ويتم أيضًا إنشاء قسم Microsoft المحجوز أثناء التثبيت وإخفاؤه عن المستخدم. 

يمكننا هنا رؤية MBR الواقي الموجود في LBA 0، والذي يشير إلى رأس GPT في LBA 1.

التخطيط السداسي السداسي ل MBR الواقي

فيما يلي مثال على تخطيط سداسي عشري لـ MBR الواقي:

كما ذكرنا سابقاً، لا تستخدم أنظمة UEFI أول 440 بايت من كود التمهيد. يمكنك أن ترى أول 440 بايت من الـ 440 بايت الأولى هذه خالية من أي شيء في بعض الأنظمة. هذا هو MBR الواقي من محطة العمل التي أستخدمها لكتابة هذه المدونة، حيث أستخدم محرك أقراص NVME من سامسونج بسعة 1 تيرابايت:

كما ترى، يحتوي ملف MBR الواقي بأكمله في هذه الحالة على أصفار باستثناء البايتات الأربعة الموجودة عند الإزاحة 440 (والتي لا يتم استخدامها)، و"إدخال القسم الأساسي" الأول (الذي يشير فقط إلى LBA 1 - رأس GPT)، وتوقيع التمهيد الموجود في البايتين الأخيرتين من القطاع (0x55AA). 

والآن دعونا نلقي نظرة فاحصة على إدخال قسم واحد موجود في MBR الواقي:

يتم تعيين البايت الأول من إدخال القسم إلى 0x00 للإشارة إلى أنه ليس قسمًا قابلاً للتمهيد. في MBR التقليدي، ستكون هذه القيمة إما 0x00 (غير قابل للتمهيد) أو 0x80 (قابل للتمهيد). تمثل البايتات الثلاثة التالية قيمة بدء تشغيل CHS الموقع (الاسطوانة/الرأس/القطاع)، والذي سيتوافق مع القيمة المكونة من 4 بايت في بدء تشغيل LBA عند إزاحة البايت 8. سيتم تعيين قيمة بدء CHS إلى 0x000200 والذي عند تقسيمه وتحويله إلى عنوان LBA، يكون 1.

يتم تعيين قيمة البايت الواحد التالية على 0xEE لنوع نظام التشغيل: واقي GPT. يتم تعيين القيمة المكونة من ثلاثة بايت عند الإزاحة 5 على عنوان CHS لآخر كتلة منطقية على القرص. تقع نقطة البداية LBA، التي تأخذنا إلى رأس قسم GPT، عند الإزاحة 8 لأربع بايتات وسيتم تعيين القيمة إلى 0x01000000 (أو LBA 1 عند القراءة بالاندين الصغير). تمثل آخر 4 بايت من السجل عند الإزاحة 12 حجم القرص ناقص واحد. يتم تعيينه إلى 0 0xFFFFFFFFFFFFFFFFFFFFFFFF إذا كان حجم القرص كبيرًا جدًا بحيث لا يمكن تمثيله في هذا الحقل، وهذا هو الحال على الأرجح.

إصلاح قاعدة MRB الواقية

إذا كان MBR تالفًا أو مفقودًا أو ممسوحًا، يمكنك استبدال القطاع 0 بنسخ MBR الواقي من محرك أقراص آخر. يمكنك أيضًا إنشاء واحد من الصفر، مع ترك 0x00 من الإزاحة 0 إلى 446، ثم إنشاء إدخال قسم عام يشير إلى LBA 1، مع التأكد من وجود 0xEE عند الإزاحة 4 للإشارة إلى نوع نظام التشغيل الواقي GPT. أخيرًا، ضع توقيع التمهيد (0x55AA) في آخر بايت من القطاع.

الإدخال العام

446447448449450451452453454455456457458459460461
00000200هـ هـفرنك سويسريفرنك سويسريفرنك سويسري01000000فرنك سويسريفرنك سويسريفرنك سويسريفرنك سويسري

توقيع الحذاء

510511
55أأ

سيكفي ما يلي لإعادة بناء MBR الواقية المعاد بناؤها:

الخاتمة

في هذا الجزء الأول، استكشفنا في هذا الجزء الأول MBR الوقائي ودوره الحاسم في ضمان التوافق مع الأنظمة القديمة. لقد درسنا كيفية قيام MBR الوقائي بتمييز القرص بأكمله على أنه مستخدم من قبل GPT، مما يمنع الأنظمة القديمة من إساءة تفسير بنية القرص. من خلال فهم بنية ووظيفة MBR الوقائي، أصبح لديك الآن أساس متين للتعمق أكثر في مخطط GPT.

بينما نمضي قدمًا، سينصب تركيزنا التالي على رأس GPT، وهو حجر الزاوية في مخطط GPT الذي يحدد تخطيط القرص ويضمن تكامل البيانات. في الجزء 2، سنقوم بتفصيل رأس GPT، وفحص كل حقل وأهميته. ترقبوا معنا بينما نواصل الكشف عن تعقيدات مخطط GPT، لنزودك بالمعرفة اللازمة لإدارة البيانات واستعادتها بفعالية من أجهزة التخزين الحديثة.

هل تريد التعمق أكثر في بنية GPT؟

في الجزء 2فإننا نحلل رأس GPT وشرح كيفية ضمان تكامل البيانات عبر القرص.
ثم في الجزء 3فإننا نستكشف مصفوفة إدخال قسم GPT وما يحتاج محللو الطب الشرعي إلى معرفته عند إعادة بناء جداول الأقسام.

فيسبوك
تويتر
البريد الإلكتروني
طباعة

استجابات 5

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

اشترك لتبقى على اطلاع دائم بالمستجدات!

لا تفوّت أي منشور - احصل على إشعار كلما نشرنا مقالاً جديداً في المدونة أو دليلاً جنائياً أو شاركنا تحديثات مهمة.

آخر مشاركة