Blog Wallpaper
A
ALI ALAKABRالسبت، 28 يونيو 2025

Binwalk

أداة Binwalk هي أداة مفتوحة المصدر تُستخدم لتحليل واستخراج الملفات والبيانات من الصور الثنائية (مثل ملفات الفيرموير). تفيد بشكل خاص في تحليل الأنظمة المدمجة واكتشاف التواقيع (signatures) داخل الملفات.

منذ شهرين تقريبا

Area Iconالأمن السيبراني - التحقيق الرقميv3 النسخة

إذا اشتغلت بمجال الهندسة العكسية أو حتى مجرد حاب تستكشف شنو داخل ملفات الفيرموير (Firmware)، فأكيد سمعت أو راح تسمع عن أداة اسمها Binwalk. أداة بسيطة بس قوية، وتستخدم بكثرة لتحليل واستخراج المحتوى من الملفات الثنائية (binary files).


شنو هي Binwalk؟

هي أداة مفتوحة المصدر، تنكتب بلغة Python، وتُستخدم لتحليل واستخراج الملفات والأنظمة المضمنة داخل ملفات الباينري — وخصوصًا الفيرموير. يعني إذا عندك ملف فيرموير لجهاز راوتر مثلاً، وتحب تشوف شنو داخله.


شنو تگدر تسوي بيها؟

  • ملفات مضغوطة (gzip, lzma, zip…)
  • أنظمة ملفات (file systems) مثل SquashFS أو JFFS2
  • صور (images)
  • سكربتات أو كود
  • شفرات bootloader
  • وأي signature معروف داخل الباينري

يعني تكدر تتعامل ويا Binwalk مثل المجهر، تكشف بيه شنو مخفي بالملف.


طريقة التثبيت:

إذا تستخدم توزيعة Linux:

sudo apt update
sudo apt install binwalk

أو إذا تحب الطريقة اليدوية من GitHub:

git clone https://github.com/ReFirmLabs/binwalk
cd binwalk
sudo python3 setup.py install

استخدامات أساسية:

تشغيل الأداة
تشغيل الأداة

1. فحص محتوى الملف

binwalk firmware.bin

هالأمر راح يطّلعلك شنو موجود داخل الملف بشكل جدول يحتوي على نوع البيانات، الأوفست (الموقع داخل الملف)، والمعلومات الأساسية عنها.

مثال
مثال

2. استخراج الملفات تلقائيًا:

binwalk -e firmware.bin --run-as=root

هذا يسوي استخراج تلقائي لأي شي يحصله (صور، ملفات، أنظمة ملفات...). راح يطلع مجلد اسمه _firmware.bin.extracted.

3. استخراج عميق (Recursive Extraction)

binwalk -Me firmware.bin --run-as=root

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


فكرة الأداة؟

تشتغل عن طريق تحليل signatures للملفات داخل الباينري، وتستخدم قاعدة بيانات داخلية تحتوي على أنواع مختلفة من التواقيع، مثل ملفات الصور، الأرشيفات، أو حتى bootloaders. ولهذا تگدر تكشف أنواع مختلفة من البيانات بسهولة.


شنو فائدتها بالهندسة العكسية؟

  • تفحص فيرموير جهاز معين (كاميرا مراقبة، راوتر...)
  • تستخرج الملفات المهمة: سكربتات init، ملفات config، ملفات shadow/passwd
  • تكدر تشوف هل النظام بيه ثغرات؟ كلمة سر مشفّرة؟ باك دور؟
  • وبعدها تستخدم أدوات ثانية مثل strings, hexdump, أو Ghidra لفحص الملفات الباقية.