Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
BootStomp — BootStomp: أداة اكتشاف ثغرات أمنية في محمل الإقلاع | Kitploit
أدوات/GitHubGitHub/ucsb-seclab/bootstomp
أمان أندرويدتحليل الثغرات الأمنيةالاستغلالالاختبار العشوائيتحليل الملفات الثنائيةتحليل البرامج الثابتة
GitHubucsb-seclab/bootstomp

BootStomp

BootStomp: أداة اكتشاف ثغرات أمنية في محمل الإقلاع

عرض المستودع
4166613منذ 7 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

BootStomp

License

BootStomp هي أداة اكتشاف أخطاء محمل الإقلاع. تبحث عن نوعين مختلفين من الأخطاء: تلف الذاكرة وثغرات تخزين الحالة. لمزيد من المعلومات، يُرجى الرجوع إلى ورقة BootStomp على https://seclab.cs.ucsb.edu/academic/publishing/#bootstomp-security-bootloaders-mobile-devices-2017

لتشغيل تحليلات BootStomp، يُرجى قراءة التعليمات التالية. لاحظ أن BootStomp يعمل مع محملات الإقلاع المترجمة لبنى ARM (32 و 64 بت على حد سواء) وأن النتائج قد تختلف قليلاً اعتمادًا على إصدارات angr و Z3. هذا بسبب الوقت الذي تستغرقه angr لتحليل الكتل الأساسية ونتائج تجسيد تعبيرات Z3.


هيكل الدليل

  • analysis: يحتوي على نتائج التحليل (مثل IDA idbs إلخ) لصور الإقلاع لأجهزة مختلفة.
  • tools: يحتوي على أدوات يمكن استخدامها للعمل مع الصور المختلفة.

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

  • angr (http://angr.io/)

$ pip install angr

  • IDA PRO (https://www.hex-rays.com/products/ida/)
  • IDA Decompiler (https://www.hex-rays.com/products/decompiler/)

كيفية تشغيله

تشغيل BootStomp باستخدام docker

أسهل طريقة لاستخدام BootStomp هي تشغيله في حاوية docker. يحتوي المجلد docker على Dockerfile مناسب. هذه هي الأوامر لاستخدامه.

root@kitploit:~
cd docker
# build the docker image
docker build -t bootstomp .
# run the docker image (if you need, use proper options to have persistent changes or shared files)
docker run -it bootstomp

# now you are inside a docker container
cd BootStomp
# run BootStomp's taint analysis on one of the examples
# this will take about 30 minutes
python taint_analysis/bootloadertaint.py config/config.huawei
# the last line of the output will be something like:
# INFO    | 2017-10-14 01:54:10,617 | _CoreTaint | Results in /tmp/BootloaderTaint_fastboot.img_.out

# you can then "pretty print" the results using:
python taint_analysis/result_pretty_print.py /tmp/BootloaderTaint_fastboot.img_.out

يجب أن يكون الإخراج شيئًا كهذا:

root@kitploit:~
...
17)
===================== Start Info path =====================
Dereference address at: 0x5319cL
Reason: at location 0x5319cL a tainted variable is dereferenced and used as address.
...
Tainted Path 
----------------
0x52f3cL -> 0x52f78L -> 0x52f8cL -> 0x52fb8L -> 0x52fc8L -> 0x52fecL -> 0x53000L -> 0x53014L -> 0x5301cL -> 0x53030L -> 0x53044L -> 0x53050L -> 0x5305cL -> 0x53068L
===================== End Info path =====================
# Total sinks related alerts: 5
# Total loop related alerts: 8
# Total dereference related alerts: 4

تشغيل BootStomp يدويًا

الكشف التلقائي عن مصادر ومصارف التلوث

  1. قم بتحميل ثنائي محمل الإقلاع في IDA (استخدمنا الإصدار v6.95). اعتمادًا على بنية وحدة المعالجة المركزية للهاتف الذي تم استخراجه منه، يلزم IDA 32 بت أو 64 بت.
  2. من شريط القوائم، قم بتشغيل File => Script file => find_taint.py
  3. سيظهر الإخراج في الملف taint_source_sink.txt في نفس الدليل الخاص بمُحمل الإقلاع نفسه.

ملف التكوين

قم بإنشاء ملف تكوين JSON لثنائي محمل الإقلاع (انظر الأمثلة في config/)، حيث:

  • bootloader: مسار ملف محمل الإقلاع
  • info_path: مسار ملف معلومات المصدر/المصرف لمحمل الإقلاع (أي taint_source_sink.txt )
  • arch: عدد بتات المعمارية (الخيارات المتاحة هي 32 و 64)
  • enable_thumb: اعتبار وضع thumb (عند الحاجة) أثناء التحليل
  • start_with_thumb: بدء التحليل مع تمكين وضع thumb
  • exit_on_dec_error: إيقاف التحليل إذا تعذر فك تشفير بعض التعليمات
  • unlock_addr: عنوان وظيفة إلغاء القفل. هذا الحقل ضروري فقط للعثور على ثغرات تخزين الحالة غير الآمنة.

البحث عن ثغرات تلف الذاكرة

قم بتشغيل:

python bootloadertaint.py config-file-path

سيتم تخزين النتائج في /tmp/BootloaderTaint_[boot-loader].out، حيث [boot-loader] هو اسم محمل الإقلاع المُحلَّل. لاحظ أن المسارات التي تتضمن حلقات قد تظهر أكثر من مرة.

البحث عن ثغرة تخزين الحالة غير الآمنة

قم بتشغيل:

python unlock_checker.py config-file-path

سيتم تخزين النتائج في /tmp/UnlockChecker_[boot-loader].out، حيث [boot-loader] هو اسم محمل الإقلاع المُحلَّل. لاحظ أن المسارات التي تتضمن حلقات قد تظهر أكثر من مرة.

فحص النتائج

لفحص نتائج BootStomp، استخدم البرنامج النصي result_pretty_print.py، على النحو التالي:

python result_pretty_print.py results_file

استغلال لـ CVE-2017-2729

مراجع أخرى

  • مصدر Kernel و lk لـ MediaTek MT65x2
  • تفاصيل MediaTek: الأقسام و Preloader
  • هندسة عكسية لـ Aboot في Android
  • محمل الإقلاع Android المبني على (L)ittle (K)ernel
  • نظرة عامة على Little Kernel Boot Loader من Qualcomm
  • android: arm: bootloader: كيف يقوم (L)ittle (K)ernel بتحميل boot.img
  • BootUnlocker لأجهزة Nexus
  • التحقق من الإقلاع
  • تحرير جهازي اللوحي (اختراق Android، برمجيات وعتاد)
  • كيفية قفل وضع التحميل في سامسونج باستخدام ميزة غير موثقة في aboot
  • كشف هجمات BIOS والإقلاع الآمن
  • أمان iOS من Apple
  • تصحيح أخطاء محملات الإقلاع لهواتف HTC
  • مصحح أخطاء لـ HBOOT
  • تحليل HBOOT
تنزيل الأداة