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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
msidump — MSI Dump - أداة تقوم بتحليل حزم تثبيت MSI الضارة، وتستخرج الملفات، والتدفقات، والبيانات الثنائية، وتدمج ماسح YARA. | Kitploit
أدوات/GitHubGitHub/mgeeky/msidump
التحليل الثابتالتحقيق الجنائي الرقميتحليل البرمجيات الخبيثةتحليل الملفات الثنائية
GitHubmgeeky/msidump

msidump

MSI Dump - أداة تقوم بتحليل حزم تثبيت MSI الضارة، وتستخرج الملفات، والتدفقات، والبيانات الثنائية، وتدمج ماسح YARA.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

msidump

MSI Dump - أداة تحلل حزم تثبيت MSI الخبيثة، تستخرج الملفات والبيانات الثنائية والتدفقات (streams) وتدمج ماسح YARA.

في مستندات Office الممكّنة بماكرو، يمكننا بسرعة استخدام oletools mraptor لتحديد ما إذا كان المستند خبيثًا. وإذا أردنا تحليله بشكل أعمق، يمكننا استخدام oletools olevba أو oledump.

لتحليل ملفات MSI الخبيثة، كان لدينا حتى الآن أداة واحدة فقط، لكنها موثوقة وجديرة بالثقة وهي lessmsi. ومع ذلك، لا تنفذ lessmsi الميزات التي كنت أبحث عنها:

  • التقييم السريع
  • استخراج البيانات الثنائية
  • المسح باستخدام YARA

ومن هنا يأتي دور msidump.

الميزات

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

  • تحديد ما إذا كان الملف مشبوهًا أم لا بسرعة.
  • سرد جميع جداول MSI وكذلك تفريغ سجلات محددة
  • استخراج البيانات الثنائية، جميع الملفات من ملفات CAB، والنصوص البرمجية من CustomActions
  • مسح جميع البيانات الداخلية والسجلات باستخدام قواعد YARA
  • استخدام استنتاج نوع file/MIME لتحديد نوع البيانات الداخلية

تم إنشاؤها كأداة مساعدة لمنشور المدونة الذي أصدرته هنا:

  • MSI Shenanigans. Part 1 - Offensive Capabilities Overview

القيود

  • لا يزال البرنامج في إصدار ألفا مبكر، ومن المتوقع أن تحدث أعطال وأن يتغير منطق التقييم والتحليل
  • نظرًا لاعتماد هذه الأداة بشكل كبير على واجهات Win32 COM WindowsInstaller.Installer، فمن غير الممكن حاليًا دعم أنظمة Linux الأصلية. ربما يمكن أن يساعد wine python msidump.py، لكن لم أجرب ذلك بعد.

حالات الاستخدام

  1. إجراء تقييم سريع لملف MSI مشبوه معزز بقاعدة YARA:
root@kitploit:~
cmd> python msidump.py evil.msi -y rules.yara

1.png

هنا نرى أن ملف MSI المدخل محقون بنص VBScript مشبوه ويحتوي على العديد من الملفات القابلة للتنفيذ داخله.

  1. الآن نريد إلقاء نظرة أقرب على هذا النص VBScript عن طريق استخراج هذا السجل فقط.

نرى من جدول التقييم أنه موجود في جدول Binary. لنستخرجه:

root@kitploit:~
python msidump.py putty-backdoored.msi -l binary -i UBXtHArj

يمكننا تحديد أي سجل نريد تفريغه إما باسمه/معرفه أو برقم الفهرس (هنا سيكون 7).

2.png

لنلق نظرة على مثال آخر. هذه المرة يوجد ملف قابل للتنفيذ مخزن في جدول Binary سيتم تنفيذه أثناء التثبيت:

3.png

لاستخراج هذا الملف سنستخدم:

root@kitploit:~
python msidump.py evil2.msi -x binary -i lmskBju -O extracted

حيث:

  • -x binary يخبر باستخراج محتويات جدول Binary
  • -i lmskBju يحدد أي سجل بالضبط لاستخراجه
  • -O extracted يحدد دليل الإخراج

4.png

للحصول على أفضل تجربة إخراج، قم بتشغيل الأداة على نافذة وحدة تحكم مكبرة أو أعد توجيه الإخراج إلى ملف:

root@kitploit:~
python msidump.py [...] -o analysis.log

الاستخدام الكامل

root@kitploit:~
PS D:\> python .\msidump.py --help
options:
  -h, --help            show this help message and exit

Required arguments:
  infile                Input MSI file (or directory) for analysis.

Options:
  -q, --quiet           Surpress banner and unnecessary information. In triage mode, will display only verdict.
  -v, --verbose         Verbose mode.
  -d, --debug           Debug mode.
  -N, --nocolor         Dont use colors in text output.
  -n PRINT_LEN, --print-len PRINT_LEN
                        When previewing data - how many bytes to include in preview/hexdump. Default: 128
  -f {text,json,csv}, --format {text,json,csv}
                        Output format: text, json, csv. Default: text
  -o path, --outfile path
                        Redirect program output to this file.
  -m, --mime            When sniffing inner data type, report MIME types

Analysis Modes:
  -l what, --list what  List specific table contents. See help message to learn what can be listed.
  -x what, --extract what
                        Extract data from MSI. For what can be extracted, refer to help message.

Analysis Specific options:
  -i number|name, --record number|name
                        Can be a number or name. In --list mode, specifies which record to dump/display entirely. In --extract mode dumps only this particular record to --outdir
  -O path, --outdir path
                        When --extract mode is used, specifies output location where to extract data.
  -y path, --yara path  Path to YARA rule/directory with rules. YARA will be matched against Binary data, streams and inner files

------------------------------------------------------

- What can be listed:
    --list CustomAction     - Specific table
    --list Registry,File    - List multiple tables
    --list stats            - Print MSI database statistics
    --list all              - All tables and their contents
    --list olestream        - Prints all OLE streams & storages.
                              To display CABs embedded in MSI try: --list _Streams
    --list cabs             - Lists embedded CAB files
    --list binary           - Lists binary data embedded in MSI for its own purposes.
                              That typically includes EXEs, DLLs, VBS/JS scripts, etc

- What can be extracted:
    --extract all           - Extracts Binary data, all files from CABs, scripts from CustomActions
    --extract binary        - Extracts Binary data
    --extract files         - Extracts files
    --extract cabs          - Extracts cabinets
    --extract scripts       - Extracts scripts

------------------------------------------------------

TODO

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

اسم الأداة

على ما يبدو، عند تسمية أداتي، لم أفكر في التحقق مما إذا كان الاسم مستخدمًا بالفعل. هناك أداة أخرى تسمى msidump وهي جزء من حزمة msitools GNU:

  • msidump

☕ أظهر الدعم ☕

هذا المشروع وغيره هو نتيجة ليالٍ بلا نوم والكثير من العمل الشاق. إذا أعجبك ما أفعله وتقدر أنني دائمًا أعود بالمصلحة للمجتمع، فكر في شراء فنجان قهوة لي (أو ربما بيرة) فقط لتقول شكرًا! 💪


root@kitploit:~
Mariusz Banach / mgeeky, (@mariuszbit)
<mb [at] binary-offensive.com>
تنزيل الأداة