عندي لكم puzzle بسيط لنفترض ملف محمي ب crc check يعني يوجد دالة او برنامج او تريد كل شوي يعمل check ع كود section ل يشوف
ادا في تغير في احد instructions ب CC و ايضا هادا اخير سبق وملئ كل من dr0 ل dr3 ب قيم ويعمل لها check ايضا
كيف سوف تتخطى هاده الحماية في حالة افترضنا انك لا تستطيع عمل patch لل crc check
هل تقصد مثلا عمل Brute Force لل CRC و تغيير القيمة بعد التعديل الى قيمة الملف الأصلي؟
crc check هوا نوع من حماية تقدر تعتبره متل hash لل .text بحيت هادا اخير كل شوي يقوم بعمل calculation عشان و يقارنها ب already calculated hash لي مخزنة ب البرنامج في حالة العادية سوف تستخدم hardware break point عشان هادا اخير لا يقوم ب تغير شيئ في text section لاكن في هاده puzzle لا تستطيع استخدام hardware break point لأنه جميع ال dr0 ل dr3
already used
وعليها check كمان يعني لوا عملت لها change رح تنضبط
إعمل crackme لتوضيح أكبر.
بما أن ال CRC Hash المحسوب مسبقا غالبا ما يكون hard written داخل البرنامج نفسه
فما علينا الا تغيير هذه الكتابة الى ال Hash الجديد حتى تتم المقارنة بنجاح
لكن يجب تتبع function التي تقوم بحساب الهاش واستخراج الهاش الجديد الناتج.