Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
firmware-workshop — في هذه الجلسة التدريبية، سنستخرج البرنامج الثابت من شاحن المركبات الكهربائية، ونتعمق في البرنامج الثابت، ثم نحاكيه في النهاية لنتمكن من التفاعل مع الخدمات في الوقت الفعلي. | Kitploit
أدوات/GitHubGitHub/onekey-sec/firmware-workshop
أمان الأنظمة المدمجةالتحليل الديناميكي (عزل)أمان إنترنت الأشياءالهندسة العكسيةتحليل الملفات الثنائيةالتعلم والتعليمتحليل البرامج الثابتةمختبرات وتدريب عملي
GitHubonekey-sec/firmware-workshop

firmware-workshop

في هذه الجلسة التدريبية، سنستخرج البرنامج الثابت من شاحن المركبات الكهربائية، ونتعمق في البرنامج الثابت، ثم نحاكيه في النهاية لنتمكن من التفاعل مع الخدمات في الوقت الفعلي.

591322منذ 3 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع

استخراج البرامج الثابتة واستكشافها ومحاكاتها عمليًا

انضم إلينا في هذا العرض العملي لـ Unblob، أداة استخراج البرامج الثابتة المرنة. خلال جلسة ورشة العمل هذه، سنستخرج البرامج الثابتة من شاحن مركبات كهربائية، ونحفر في البرامج الثابتة، ثم نحاكيها في النهاية لنتمكن من التفاعل مع الخدمات في الوقت الفعلي. يعمل Unblob على كل من النسخ المادية والنسخ القابلة للتنزيل من البرامج الثابتة، لذا لدينا بيئة غنية بالأهداف. لا حاجة لخبرة سابقة، هذه الجلسة مناسبة لجميع مستويات المهارة، ونتطلع إلى رؤيتكم هناك.

هدفنا

هدفنا هو وحدة تحكم في محطة شحن المركبات الكهربائية من فينيكس كونتاكت. يمكنك العثور على مزيد من التفاصيل حولها هنا.

CHARX control modular، وحدة تحكم شحن AC، مع نظام Embedded Linux، IEC 61851-1، وضع التشغيل: Stand-Alone، Client، Server،

الواجهات:

  • Ethernet (2x)
  • الاتصال الخلوي (4G/2G)
  • ناقل نظام CHARX control modular
  • MICRO-USB type C

بروتوكولات الاتصال:

  • OCPP 1.6J
  • Modbus/TCP
  • MQTT

الأجهزة الطرفية القابلة للتوصيل:

  • عداد الطاقة
  • RFID
  • كشف تيار التسرب المتبقي DC
  • تركيب على سكة DIN

المتطلبات الأساسية

هناك بعض الأدوات التي نحتاجها في ورشة العمل هذه. يمكنك تثبيتها عن طريق تشغيل سكربت install-prerequisites كما يلي:```sh ./install-prerequisites

## الحصول على البرنامج الثابت

يمكن الحصول على البرنامج الثابت من موقع البائع. يوجد نص برمجي باسم
`download-firmware` في هذا المستودع يمكنك استخدامه لسحب البرنامج الثابت
بدون الحاجة إلى فتح متصفح.

تركيزنا اليوم على البرنامج الثابت المقدم من البائع لأنه يحتوي على كل ما
نحتاجه. لكن يمكن تطبيق سير عمل مشابه على تفريغ ذاكرة مستخرج من
جهاز حقيقي. الشيء المثير هنا هو أننا نستطيع الاستخراج والاستكشاف والمحاكاة
حتى دون الحاجة إلى جهاز حقيقي.

## الاستخراج باستخدام Unblob

لنبدأ بالتأكد من توفر جميع التبعيات:```
unblob --show-external-dependencies
The following executables found installed, which are needed by unblob:
    7z                          ✓
    debugfs                     ✓
    jefferson                   ✓
    lz4                         ✓
    lziprecover                 ✓
    lzop                        ✓
    sasquatch                   ✓
    sasquatch-v4be              ✓
    simg2img                    ✓
    ubireader_extract_files     ✓
    ubireader_extract_images    ✓
    unar                        ✓
    zstd                        ✓

الآن يمكننا استخراج البرنامج الثابت باستخدام unblob:``` unblob CHARXSEC3XXXSoftwareBundleV190.raucb

يستغرق الاستخراج حوالي 3 دقائق على جهاز كمبيوتر لائق. يجب أن ترى شريط تقدم يتحرك للأعلى:

![unblob_progress](https://assets.kitploit.com/production/public/readmes/48963/9bdd3fefdf4e600ee070a461172a3ef07e482cde75b8e8a5d881021c7fa341e6.png)


بمجرد اكتمال الاستخراج، يجب أن يكون دليل باسم
`CHARXSEC3XXXSoftwareBundleV190.raucb_extract` مرئيًا. يمكنك الدخول
إليه وسرد المحتوى.

### المقاطع، المقاطع غير المعروفة

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

هنا، تم عزل مقطع SquashFS الإصدار 4 ذو النهاية الصغرى على القرص، واستخراجه،
وحذفه. تتم تسمية الملفات (وبالتالي أدلة الاستخراج) وفقًا لتسمية
`{start_offset}-{end_offset}.{type}`.

يمكننا أن نرى أن 11 كيلوبايت من مقطع "unknown" تظهر بعد نظام ملفات squashfs.```
./0-132173824.squashfs_v4_le_extract
./132173824-132184833.unknown

يمكنك تشغيل binwalk عليه لمعرفة ما يحتويه:``` binwalk 132173824-132184833.unknown

DECIMAL HEXADECIMAL DESCRIPTION

0 0x0 Object signature in DER format (PKCS header length: 4, sequence length: 10997 58 0x3A Certificate in DER format (x509 v3), header length: 4, sequence length: 4372 4434 0x1152 Certificate in DER format (x509 v3), header length: 4, sequence length: 4387

يمكنك التحقق من الشهادات باستخدام openssl:```
dd if=132173824-132184833.unknown bs=1 skip=58 | openssl x509 -in /dev/stdin -inform der -noout -text
dd if=132173824-132184833.unknown bs=1 skip=4434 | openssl x509 -in /dev/stdin -inform der -noout -text

هذا يعني أن البرامج الثابتة موقّعة على الأرجح باستخدام المفتاح الخاص للمورّد حتى تتمكن الأجهزة من التأكد من صحتها.

تلك إحدى مزايا unblob، إذ تحوّل المجهولات المجهولة إلى مجهولات معروفة يمكن التحقيق فيها.

أنظمة الملفات

لنلقِ نظرة على محتوى نظام الملفات squashfs لدينا:``` ls -al 0-132173824.squashfs_v4_le_extract total 460532 drwxrwxr-x 4 kali kali 4096 dec 5 09:51 . drwxrwxr-x 3 kali kali 4096 dec 5 09:51 .. -rw-rw-r-- 1 kali kali 20971520 sep 8 09:59 bootimg.vfat drwxrwxr-x 3 kali kali 4096 dec 5 09:51 bootimg.vfat_extract -rwxrwxr-x 1 kali kali 2654 sep 19 2022 hook -rw-rw-r-- 1 kali kali 442 sep 8 09:59 manifest.raucm -rw-rw-r-- 1 kali kali 450584576 sep 8 09:59 root.ext4 drwxrwxr-x 22 kali kali 4096 sep 8 09:57 root.ext4_extract

يمكننا رؤية قائمة نصية عادية، وسكربت شل، وMBR واحد، ونظام ملفات EXT4:```
find -maxdepth 1 -type f -exec file {} \;
./manifest.raucm: ASCII text
./hook: a /usr/bin/env sh script, ASCII text executable
./bootimg.vfat: DOS/MBR boot sector, code offset 0x3c+2, OEM-ID "mkfs.fat", sectors/cluster 4, reserved sectors 4, root entries 512, sectors 40960 (volumes <=32 MB), Media descriptor 0xf8, sectors/FAT 40, sectors/track 63, heads 255, hidden sectors 163158016, reserved 0x1, serial number 0xd09aad9c, label: "KERNEL     ", FAT (16 bit)
./root.ext4: Linux rev 1.0 ext4 filesystem data, UUID=8ed19606-02c4-42e7-9cfb-1a2839f93ec4 (extents) (large files) (huge files)

تمت معالجة كل من bootimg.vfat وroot.ext4 واستخراجهما بواسطة unblob.
يحتوي قسم VFAT على كل ما يتعلق بالإقلاع ونظام التشغيل (نواة لينكس، DTB، TEE):``` oftree: Device Tree Blob version 17, size=27469, boot CPU=0, string block size=1657, DT structure block size=25756 tee.bin: data zImage: Linux kernel ARM boot executable zImage (little-endian) zImage-imx6ul-ksp0632.dtb: Device Tree Blob version 17, size=27469, boot CPU=0, string block size=1657, DT structure block size=25756

سترى أن unblob جشع بعض الشيء وسيستخرج ملف ELF وأرشيف CPIO
من نواة لينكس (`zImage`)، وهذان يتوافقان مع
النواة الدنيا وقرص الرام.

يحتوي نظام ملفات EXT4 على نظام الملفات الجذر الذي تقوم نواة لينكس
بتركيبه عند الإقلاع:```
ls -alh root.ext4_extract 
total 88K
drwxrwxr-x 22 kali kali 4,0K sep  8 09:57 .
drwxrwxr-x  4 kali kali 4,0K dec  5 09:51 ..
drwxrwxr-x  2 kali kali 4,0K dec  5 09:51 bin
drwxrwxr-x  3 kali kali 4,0K dec  5 09:51 boot
drwxrwxr-x 16 kali kali 4,0K sep  8 09:56 data
drwxrwxr-x  2 kali kali 4,0K jul 18 00:09 dev
drwxrwxr-x 53 kali kali 4,0K dec  5 09:51 etc
drwxrwxr-x 18 kali kali 4,0K sep  8 09:56 home
drwxrwxr-x  2 kali kali 4,0K jul 18 03:13 identity
drwxrwxr-x  9 kali kali 4,0K dec  5 09:51 lib
drwxrwxr-x  2 kali kali 4,0K jul 18 03:14 log
drwxrwxr-x  2 kali kali 4,0K sep  8 09:57 lost+found
drwxrwxr-x  2 kali kali 4,0K jul 18 00:09 media
drwxrwxr-x  2 kali kali 4,0K jul 18 00:09 mnt
drwxrwxr-x  2 kali kali 4,0K jul 18 00:09 proc
drwxrwxr-x  2 kali kali 4,0K sep  8 09:57 run
drwxrwxr-x  2 kali kali 4,0K dec  5 09:51 sbin
drwxrwxr-x  2 kali kali 4,0K jul 18 03:14 sdcard
drwxrwxr-x  2 kali kali 4,0K jul 18 00:09 sys
drwxrwxrwx  2 kali kali 4,0K jul 18 00:09 tmp
drwxrwxr-x 11 kali kali 4,0K sep  8 09:56 usr
drwxrwxr-x 11 kali kali 4,0K dec  5 09:51 var

الاستكشاف

تصور البرامج الثابتة

تنزيل الأداة