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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
moria — تحديد واستخراج البرامج الثابتة لإنترنت الأشياء | Kitploit
أدوات/GitHubGitHub/nmatt0/moria
أمان الأنظمة المدمجةأمان إنترنت الأشياءالهندسة العكسيةجمع المعلوماتتحليل البرمجيات الخبيثةالتحاليل الرقمية الجنائيةالأدوات والمكوناتأمان الأجهزة وإنترنت الأشياءتحليل الملفات الثنائيةتحليل البرامج الثابتة
GitHub
42256142منذ يوم واحدتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

moria

تحديد واستخراج البرامج الثابتة لإنترنت الأشياء

عرض المستودع

moria

تحديد واستخراج البرامج الثابتة لإنترنت الأشياء (IoT)

تحدد moria الملفات والبنى المضمّنة داخل البرامج الثابتة وصور إنترنت الأشياء (أنظمة الملفات، والنوى، ومحمّلات الإقلاع، والأرشيفات، والمفاتيح) وتفكّ ضغط معظم ما تجده، دون صلاحيات الجذر. تُبلّغ عن كل اكتشاف بإزاحة بايتية ونوع ودرجة ثقة، وتتحدث بصيغة JSON نظيفة بحيث يمكن للسكربتات ووكلاء LLM تشغيلها بسهولة كما يفعل البشر.

لماذا moria

  • تستخرج مجموعة واسعة من أنظمة الملفات داخل العملية، دون sudo: SquashFS، وext2/3/4، وF2FS، وXFS، وbtrfs، وHFS+، وNTFS، وEROFS، وJFFS2، وUBIFS، وغيرها.
  • تكراري افتراضيًا. فكّ ضغط SquashFS ملفوف بـ gzip داخل وحدة تخزين UBI يمتد إلى الأسفل بالكامل.
  • تكتشف الملفات التنفيذية المحزومة. تكتشف ELF/PE/Mach-O المحزومة بـ UPX عبر مختلف المعماريات من ذيل PackHeader المُتحقَّق من مجموع التحقق (الصيغة والطريقة والأحجام)، وتكتشف الأجزاء التي تم تصفير رأسها أو تعديله لتعطيل upx -d.
  • حتمية. المدخل نفسه ينتج دائمًا المخرج نفسه؛ ولا يوجد كسر تعادل عشوائي في حل التعارضات.
  • آمنة مع المدخلات العدائية. كل قراءة محدودة النطاق، وكل كتابة تمر عبر openat + O_NOFOLLOW (لا اجتياز مسارات ولا هروب عبر الروابط الرمزية)، وفكّ الضغط محدود ضد القنابل.
  • التحديد أولًا. شجرة قابلة للقراءة افتراضيًا، وJSON (-j) للأدوات، مع الإزاحات ودرجة الثقة في كل اكتشاف.

البناء والتثبيت

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
cmake --install build --prefix ~/.local     # or /usr/local (needs sudo)

يتطلب البناء cmake، ومترجم C++20، ومكتبات التطوير zlib وliblzma وlz4 وzstd (أدوات فك الضغط التي يستخدمها --extract). على Debian/Ubuntu: sudo apt install cmake g++ zlib1g-dev liblzma-dev liblz4-dev libzstd-dev. للبناء بدون إحداها (بناء أدنى أو للتعريف فقط)، قم بالتهيئة باستخدام -DMORIA_OPTIONAL_CODECS=ON وسيتم ببساطة تعطيل الترميز المفقود.

إن ملف moria التنفيذي مكتفٍ ذاتيًا: جميع مجموعات التوقيعات مضمّنة وقت البناء، لذا يعمل الملف التنفيذي في أي مكان دون تثبيت أي شيء إلى جانبه (cp build/moria ~/.local/bin كافٍ، والملف التنفيذي المنزّل من الإصدارات يعمل مباشرة). لاستخدام توقيعات خارجية بدلًا من المضمّنة (لاختبار ملف .toml جديد دون إعادة البناء، مثلًا)، مرّر --sigs DIR أو عيّن $MORIA_SIGDIR.

الاستخدام

المخرجات مقروءة للبشر افتراضيًا. مرّر -j للحصول على JSON.

moria <file>               # identify: a findings tree with offsets, types, and confidence
moria <dir>                # scan a tree: a type summary plus the notable files
moria -j <file>            # JSON, for tools and agents
moria -e <file>            # extract to <file>.extracted/   (-C DIR to choose the output dir)
moria -c <file>            # carve raw byte ranges to <file>.carved/ (no parsing)
moria -E <file>            # entropy pass: flag unidentified / possibly-encrypted regions
moria --list <archive>     # list tar/cpio/zip/cab/CE-ROM members without extracting
moria --broad <path>       # also load the ~2.5k general file-type signatures
moria --unpack-executables # unpack executables inside other extracted output (cfbf/msi files)
moria --help

الاستخراج

يقوم -e بفك ضغط الصيغ المتعرّف عليها تحت <file>.extracted/، بدليل واحد لكل منطقة (0x<offset>-<type>/)، إضافةً إلى manifest.json يربط الإزاحات بالمسارات. يتكرّر تلقائيًا داخل الحاويات المتداخلة ويعيد بناء صور UBI مجلّدًا بمجلّد. تحدّ الحواجز (--depth، --max-files، --max-bytes، وسقف لنسبة فك الضغط) من المدخلات الخبيثة؛ ويوقف الحاجز المُفعَّل ذلك الفرع مع إرجاع كل ما تم استرداده.

يُفكّ الضغط داخل العملية، دون أدوات خارجية ودون sudo:

  • أنظمة الملفات: SquashFS، ext2/3/4، F2FS، FAT12/16/32، exFAT، NTFS، HFS+/HFSX، XFS، btrfs، JFFS2، UBI/UBIFS، romfs، YAFFS2، cramfs، EROFS، ReiserFS
  • الأرشيفات والصور: ZIP، tar، cpio، MS-CAB (stored/MSZIP/LZX)، ملفات CFBF المركّبة / Windows Installer .msi، ISO 9660، Android sparse، Android boot
  • النوى والأغلفة: U-Boot uImage، U-Boot FIT، Windows CE XIP ROM (nk.bin / .cos)، تدفقات gzip / xz / zstd / lz4 المستقلة، Ingenic jzlzma (عتاد LZ77)
  • حزم البرامج الثابتة: RAE Systems / Honeywell RFP (جدول أقسام؛ يفكّ ضغط كل قسم بـ LZARI)؛ Artosyn OTRA (AR8030 / VT4 / VR04؛ مُتحقَّق منه بـ SHA-256، يفكّ ضغط كل قسم بـ LZO1X، أو يكشف جسم الفلاش الخام في الصور المسطّحة)
  • مخازن الإعدادات: بيئة U-Boot، ESP32 NVS، سجلات تسجيل Windows CE (.hv)

التوقيعات

  • signatures/ هو النواة المكتوبة يدويًا: أنظمة ملفات البرامج الثابتة، والحاويات، والنوى، والصيغ الشائعة، كلٌّ منها مع تحقّق بنيوي.
  • signatures-firmware/ يحوي قيم magic لحاويات البرامج الثابتة الخاصة بالمورّدين ويُحمَّل افتراضيًا.
  • signatures-generated/ يحوي نحو 2.5 ألف قيمة magic لأنواع ملفات عامة مشتقّة من قاعدة بيانات magic الخاصة بـ file(1) ولا يُحمَّل إلا مع --broad.

لإضافة صيغة، ضع ملف .toml في signatures/. لا يلزم مُدقِّق C++ صغير إلا للفحوصات التي لا تستطيع الطبقة التصريحية التعبير عنها، مثل CRCs أو المؤشرات العابرة للكتل. دلالات الحقول (magic_offset، endianness الخاصة بـ magic، التوقيعات القصيرة، القيود اللينة، عقد المُدقِّق) موثّقة في SIGAUTHORING.md.

النطاق

يقوم moria بالتعريف البنيوي والاستخراج والحفر. أما فحص الأسرار/بيانات الاعتماد، وSBOM، وCVE، وتحليل التراخيص فهي أداة منفصلة (mithril).

الترخيص

MIT، انظر LICENSE.

بعض معالجة صيغ الأقراص هي إعادة تنفيذ نظيفة للخوارزميات في مشاريع مفتوحة المصدر أخرى، مكتوبة بشكل مستقل مقابل طبقة الإدخال/الإخراج الخاصة بـ moria (دون نسخ أي شيفرة مصدرية): مفكّك ضغط UCL/NRV2B ومرشّحات CTO من UPX/UCL (GPL-2.0، الخوارزميات فقط)، وتخطيط metadata-commit وCTZ skip-list في littlefs (BSD-3-Clause)، وتخطيط الصفحة/الكائن في SPIFFS (MIT).

تنزيل الأداة