تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مساعدة في تفكيك ملفات Firmware
#2
إقتباس :كيفية فك الضغط عليها

 توجد اداة حالياً تعتبر رقم #1  في هذا المجال تسمى binwalk، الاداة مبرمجة ببايثون ويمكنك برمجة اضافات او اضافة قواعد فحص جديدة لها.
binwalk هي اداة سريعة وسهلة لتحليل واستخراج والهندسة عكسياً لملفات الـfirmware  
 
https://github.com/ReFirmLabs/binwalk
 مخرجات الفحص
$ binwalk firmware.bin

DECIMAL HEX DESCRIPTION
-------------------------------------------------------------------------------------------------------------------
0 0x0 DLOB firmware header, boot partition: "dev=/dev/mtdblock/2"
112 0x70 LZMA compressed data, properties: 0x5D, dictionary size: 33554432 bytes, uncompressed size: 3797616 bytes
1310832 0x140070 PackImg section delimiter tag, little endian size: 13644032 bytes; big endian size: 3264512 bytes
1310864 0x140090 Squashfs filesystem, little endian, version 4.0, compression:lzma, size: 3264162 bytes, 1866 inodes, blocksize: 65536 bytes, created: Tue Apr 3 04:12:22 2012
 
طريقة استخراج الملفات من الـfirmware
binwalk -e firmware.bin
طريقة استخراج الملفات وكذلك الملفات الفرعية (الملفات التي بداخل الملفات)
binwalk -Me firmware.bin
 
لاسخراج نوع معين من الملفات مثلا الصور او صفحات الويب او ملفات جافا سكربت، لاسخراج الصور كمثال:
binwalk -D 'png image:png' firmware.bin
لتحليل الـEntropy
خاصية مهمة في حالة لم تجد توقيع مطابق عند الفحص او للبحث عن اقسام مهمة
binwalk -E firmware.bin
[صورة مرفقة: 61085404-2cca8000-a3fe-11e9-9555-98b258c9e249.png?s=100]
هذا في حالة ان ملف الـFirmware بحوزتك
بالنسبة للتنصيب يفضل نظام لينكس لان نظام ويندوز يوفر دعم ضعيف لمتطلبات الاداة
(لاحظ ان الاداة لا يمكنها تحليل وفك الضغط عن جميع الملفات وبعض الملفات تحتاج عمل يدوي وقراءة للتوثيق الرسمي للهاردوير الذي تعمل عليه)
اذا لم يكن بحوزتك فتوجد عدة طرق :
 
  • الاولى وهي اسهلها عن طريق تحميل الملف من موقع الشركة في حال توفرة
  • والطريقة الثانية هي اعتراض التحديث قبل وصولة الى الجهاز من شبكة الشركة وذلك عن طريق برامج الـ Sniffer
  • والطريقة الثالثة والاصعب تتطلب منك فتح الجهاز وربما فك اللحام وعمل لحام وبعض الادوات لعمل  dump للـFirmware من الذاكرة (هذه طريقة فعالة للحصول على Firmware مفكوك التشفير في حال كان هنالك تشفير) وذلك عن طريق اما JTAG  او UART او  SPI (Serial Peripheral Interface Bus)
 
طبعا لن احاول التوسع اكثر لان ذلك يتطلب موضوع  كامل لكل طريقة ولكني اوضحت النقاط الاساسية.
إقتباس :
و قرائتها و التعديل عليها من غير نظام الـ HEX لأنه مقعد بعض الشيء.
بما انها ملفات binary فالاطلاع عليها والتعديل يكون عن طريق disassembler مثل IDA Pro (هذا يتطلب منك معرفة باسمبلي المعالج الذي يخص جهازك)، بعض الـFirmware يحوي صفحات ويب وصور وملفات جافا سكربت وهي يمكن الاطلاع والتعديل عليها عن طريق اي محرر اكواد برمجية ومحررات الصور.
 
إقتباس :كل ما أريده هو فهم مبدأ عمل هذه البرامج و كيفية تحكمها في جهاز الإستقبال (الرسيفر)،
لا يوجد طريقة شاملة وكل جهاز وله خصائصه وطرقة الخاصة، بالأخص الانظمه المضمنة فهي عالم ثاني  عن عالم الحواسيب والغموض يكتنفها، افضل وسيلة هي الاطلاع على التوثيق الرسمي الذي توفره الشركة وكذلك الاطلاع على قطع الهاردوير المستخدمة في الرسيفر وقراءة توثيقها الرسمي كذلك، خذ بالاعتبار بعض الشركات تستخدم برامج مفتوحة المصدر واذا كانت تستخدم برامج برخصة GPL   فهي ملزمة باعطائك الكود البرمجي في حال طلبته.
إقتباس :
و بأي لغة تمت كتابتها و تطويرها و هل يمكن عمل مثلها من الألف إلى الياء و تحميلها إلى جهاز الإستقبال (الرسيفر).
 الغالبية العظمى تبرمج بلغة السي، ونعم يمكن تطوير مثلها فمن طورها وبرمجها هو بشر مثلك، بالنسبة لكيفية فعل ذلك فهو خارج تماما عن تخصص المنتدى Smile
 
سبحان الله وبحمده، سبحان الله العظيم
أعضاء أعجبوا بهذه المشاركة : mribraqdbra , لحرش حرزالله , mohamad , [email protected] , ام عائشة


الردود في هذا الموضوع
RE: مساعدة في تفكيك ملفات Firmware - بواسطة Gu-sung18 - 25-07-2019, 11:08 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم