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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
mininode — أداة تحليل ثابتة تعمل عبر سطر الأوامر تقلل من سطح الهجوم لتطبيقات Node.js من خلال بناء رسوم بيانية للتبعيات وإزالة الوحدات والوظائف غير المستخدمة في أوضاع خشنة أو دقيقة. | Kitploit
أدوات/GitHubGitHub/wspr-ncsu/mininode
التحليل الثابتتحليل الثغرات الأمنيةتحليل الكودأمن سلسلة التوريدالأوراق والأبحاثالتعلم والتعليم
GitHubwspr-ncsu/mininode

mininode

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

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

الأكثر شعبية

عرض الكل →

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

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

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

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

مينينود

مينينود هي أداة واجهة أوامر لتقليل سطح الهجوم لتطبيقات Node.js باستخدام التحليل الثابت للكود المصدري. وهي تدعم وضعين للتقليل: (1) تقريبي، (2) دقيق.

تقوم مينينود ببناء رسم بياني للاعتماديات (الوحدات والوظائف المستخدمة) للتطبيق بدءًا من الملف الرئيسي، أي نقطة الدخول للتطبيق. تقوم مينينود بتهيئة نقطة الدخول إلى حقل main في ملف package.json إذا كان موجودًا. وإلا فالقيمة الافتراضية هي index.js.

مثال على الاستخدام: node index.js <path to Node application root folder> --mode=(coarse|fine). فيما يلي قائمة الخيارات التي يمكن تمريرها إلى مينينود.

الخيارات

قائمة خيارات سطر الأوامر التي يمكن تمريرها إلى مينينود.

  • --destination, -d: المسار الذي ستحفظ فيه مينينود تطبيق Node.js المخفض. القيمة الافتراضية: mininode.
  • --dry-run: يقوم فقط بإنشاء mininode.json دون تعديل التطبيق الأصلي.
  • --mode, -m: وضع التقليل. يمكن أن تكون القيمة إما coarse (تقريبي) أو fine (دقيق). في الوضع coarse ستقوم مينينود بإجراء تقليل تقريبي فقط. بينما في الوضع fine ستقوم مينينود بإجراء تقليل دقيق. بشكل عام، التقليل التقريبي أكثر موثوقية، لأن مينينود لن تحاول تقليل الوظائف غير المستخدمة داخل الوحدة. القيمة الافتراضية: coarse.
  • --silent: يتم تعطيل إخراج وحدة التحكم. سيؤدي ذلك إلى تحسين أداء مينينود.
  • --verbose: يقوم بإخراج معلومات إضافية إلى وحدة التحكم. القيمة الافتراضية: false
  • --log: ستقوم مينينود بإنشاء ملف سجل بداخله، يحتوي على رسم بياني للاعتماديات للتطبيق بتنسيق json. القيمة الافتراضية: true.
  • --log-output: اسم ملف السجل الذي تم إنشاؤه بواسطة مينينود. القيمة الافتراضية: mininode.json.
  • --compress-log: يقوم بضغط ملف السجل النهائي. بشكل افتراضي، سيتم تفريغ كل شيء في ملف السجل. في الإنتاج، يُنصح بتمرير علامة --compress-log لتوفير المساحة.
  • --seeds: الملفات البذرة التي ستبدأ منها مينينود في بناء رسم بياني للاعتماديات. يمكنك تقديم العديد من الملفات البذرة عن طريق فصلها بنقطتين رأسيتين.
  • --skip-stat: يتجاوز حساب الإحصائيات
  • --skip-reduction: إذا تم تمريره، لن تقوم مينينود بتقليل ملفات JavaScript. القيمة الافتراضية: false.
  • --skip-remove: إذا تم تمريره، لن تقوم مينينود بإزالة ملفات JavaScript غير المستخدمة. القيمة الافتراضية: false.

القيود

  1. تستخدم مينينود التحليل الثابت، مما يعني أنها لا تستطيع تقليل سطح الهجوم لتطبيق Node.js الذي يستخدم سلوكًا ديناميكيًا، مثل eval. إذا اكتشفت مينينود سلوكًا ديناميكيًا في التطبيق، فإنها تخرج بخطأ DYNAMIC_BEHAVOUR_DETECTED.

الورقة البحثية

يمكنك قراءة المزيد عن تفاصيل عملنا في الورقة البحثية التالية:

Mininode: Reducing the Attack Surface of Node.js Applications [PDF]
Igibek Koishybayev, Alexandros Kapravelos
وقائع الندوة الدولية للأبحاث في الهجمات والاختراقات والدفاعات (RAID)، 2020

إذا كنت تستخدم مينينود في بحثك، فكر في الاستشهاد بعملنا باستخدام إدخال Bibtex هذا:

root@kitploit:~
@conference{mininode-raid20,
  title = {{Mininode: Reducing the Attack Surface of Node.js Applications}},
  author = {Koishybayev, Igibek and Kapravelos, Alexandros},
  booktitle = {{Proceedings of the International Symposium on Research in Attacks, Intrusions and Defenses (RAID)}},
  year = {2020}
}

المساهمة

js-semistandard-style

نحن نتبع semistandard.

تنزيل الأداة