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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Melkor_ELF_Fuzzer — Melkor هي أداة فازر بديهية وسهلة الاستخدام لتنسيق ملفات ELF، تهدف إلى اكتشاف الأخطاء الوظيفية والأمنية في مُحلِّلات ELF. | Kitploit
أدوات/GitHubGitHub/ioactive/melkor_elf_fuzzer
تحليل الثغرات الأمنيةالاختبار العشوائيتحليل الملفات الثنائية
GitHubioactive/melkor_elf_fuzzer

Melkor_ELF_Fuzzer

Melkor هي أداة فازر بديهية وسهلة الاستخدام لتنسيق ملفات ELF، تهدف إلى اكتشاف الأخطاء الوظيفية والأمنية في مُحلِّلات ELF.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

--------------------------------~ | -- DESCRIPTION -- | --------------------------------~

Melkor - أداة Fuzzer لتنسيق ملفات ELF

ميلكور (Melkor)، شخصية خيالية من أساطير الأرض الوسطى (Middle-earth) للمؤلف J. R. R. Tolkien، كان أول سيّد ظلام (Dark Lord) وسيّد سورون (Sauron). يُذكر بإيجاز في «سيد الخواتم» (The Lord of the Rings) ويُعرف بالآتي:

"... كان ميلكور قد أسر عددًا من الجان (ELVES) قبل أن يهاجمه الفالار (Valar)، فعذّبهم وأفسدهم، فاستولد منهم أول الأوركس." (http://en.wikipedia.org/wiki/Morgoth)

"... كان ميلكور ماكرًا وأكثر امتلاءً بالحقد من أي وقت مضى. ولمّا رأى نعيم الجان (ELVES) وتذكّر أنه من أجلهم أُطيح به، تمنّى ميلكور فوق كل شيء أن يُفسدهم." (http://lotr.wikia.com/wiki/Melkor)

"الأوركس... كان الأمر كذلك منذ اليوم الذي استُولدوا فيه على يد ميلكور من جان (ELVES) فاسدين ومعذَّبين ومشوَّهين، ربما أُجبروا أيضًا على التزاوج مع كائنات بشعة أخرى غير طبيعية في مملكة قوى الظلام." (http://lotr.wikia.com/wiki/Orcs)

تكريمًا لاسمه، تأخذ هذه الشيفرة البرمجية ملف ELF وتُفسده، وتُنشئ من الأوركس بقدر ما تريد.

Melkor هو أداة Fuzzer هجينة (قائمة على التحوير (mutation) وعلى التوليد (generation)). يقوم بتحوير البيانات الموجودة في عيّنة ELF المعطاة لإنشاء الأوركس (ملفات ELF مشوّهة)، غير أنه لا يغيّر القيم عشوائيًا (Fuzzing أعمى)؛ بل يشوِّش بعض البيانات الوصفية بقيم شبه صالحة من خلال استخدام قواعد الـFuzzing (قاعدة معرفية). مكتوب بلغة C، ويُعدّ Melkor أداة Fuzzer بديهية للغاية وسهلة الاستخدام لاكتشاف الأخطاء الوظيفية (والأمنية) في مُحلِّلات ELF (ELF parsers).

صُمِّمت قواعد الـFuzzing مع مراعاة المدخلات التالية:

  • مخالفات مواصفات ELF
    • مواصفة TIS ELF 1.2 (مايو، 1995)
    • تنسيق ملفات الكائنات ELF-64 1.5 (مايو 1998)
  • أفكار واعتبارات متفرقة
  • أنماط التحليل (Parsing) في برمجيات ELF

ستجد قواعد الـFuzzing بالتفصيل وبعض المخططات الأخرى في مجلد docs/.

--------------------------------~ | -- REQUIREMENTS -- | --------------------------------~

  • make
  • gcc

--------------------------------~ | -- COMPILATION & USAGE -- | --------------------------------~

عملية الترجمة (البناء) بسيطة جدًا، فقط اكتب: $make

سيُنشئ الملف 'melkor'، وهو أداة الـFuzzer نفسها، وبعض ملفات ELF الأخرى داخل مجلد templates/، بما في ذلك ملفات ELF عادية مثل ملف تنفيذي ELF عادي، وبعض المكتبات المشتركة، وملف ELF ثابت (ملف تنفيذي مستقل) وبعض الملفات الأخرى.

بتشغيل melkor، ستظهر قائمة بالخيارات وستدرك أنه بديهي جدًا وسهل الاستخدام. كل ما عليك تقديمه هو اسم ملف ELF ليُستخدم كقالب (template)، ويمكن أن يكون أيًا من الملفات الموجودة داخل مجلد templates/.

اعتمادًا على نوع البرنامج الذي تريد اختباره، عليك اختيار البيانات الوصفية التي تريد تشويشها. على سبيل المثال، إذا أردت اختبار مُحمِّل نظام تشغيل (OS loader)، فربما قد ترغب في تشويش جدول ترويسات البرنامج (Program Header Table) فقط (-P) و/أو القسم الديناميكي (Dynamic Section) (-D). من ناحية أخرى، ربما قد ترغب في تشويش جدول ترويسات الأقسام (Section Header Table) وترويسة ELF (ELF Header) لاختبار أي محرك مكافحة فيروسات أو مصحح أخطاء (debugger). كما يمكنك تشويش جداول الرموز (Symbol Tables) (-s) و/أو جداول إعادة التوطين (Relocation Tables) (-R) في الملفات القابلة لإعادة التوطين (.o) أو المكتبات المشتركة (.so) لاختبار المترجمات (compilers) و/أو الروابط (linkers). ويمكن أيضًا تشويش جداول السلاسل النصية (String Tables) (-Z). الأمر متروك لك لتقرر إلى أي درجة تريد إفساد ملف ELF }:-)

بمجرد إنشاء الأوركس داخل مجلد orcs_*/، يحين وقت اختبارها بمساعدة test_fuzzed.sh، حيث يمكنك ببساطة تحديد اسم المجلد الذي يحتوي الأوركس المراد تشغيلها (اختبار مُحمِّل نظام التشغيل) أو إضافة معامل إضافي لتحديد البرنامج (ومعاملاته) الذي تريد اختباره ضد كل ملف ELF مشوّه داخل مجلد الأوركس. يتيح هذا السكربت خيار تشويش بعض متغيرات البيئة (المعرّفة أيضًا كقواعد Fuzzing). قد يكون عرض السجلات عبر #dmesg بعد تشغيل السكربت مفيدًا لتحديد البرنامج/المكتبة التي تعطّلت ومكان حدوث ذلك التعطل. بعض الأمثلة معروضة عند تشغيل السكربت دون معاملات.

إذا أردت اختبار ملفات ELF المشوّهة (الأوركس) تلقائيًا في بيئة ويندوز، فهناك سكربت دفعي (win_test_fuzzed.bat) مرفق يتمتع بنفس وظائف السكربت الخاص بأنظمة *NIX تقريبًا.

استمتع بالـ Fuzzing!

--------------------------------~ | -- DIRS -- | --------------------------------~

  • docs/ يحتوي على الوثائق ذات الصلة مثل القائمة التفصيلية لقواعد الـFuzzing، بالإضافة إلى قائمة تبعيات البيانات الوصفية لـ ELF.

  • templates/ يحتوي على بعض ملفات ELF التي تُجمَّع في نفس وقت تجميع melkor ويمكن استخدامها لتغذية melkor: foo.c -> foo.o (كائن ELF)-> foo (ملف ELF تنفيذي) foo.c -> foo_static (ELF تنفيذي ثابت) libfoo.c -> libfoo.so (ELF مكتبة مشتركة) وغيرها. اكتب "$make templ" لترى بالتفصيل قوالب ELF الأخرى التي يتم إنشاؤها.

  • orcs_*/ سيحتوي على ملفات ELF المشوّهة (المبنية على ملف القالب المعطى) التي يتم إنشاؤها بعد عملية الـFuzzing.

  • src/ الشيفرة المصدرية لـ Melkor.

--------------------------------~ | -- BUGS -- | --------------------------------~

يرجى قراءة BUGS.txt

--------------------------------~ | -- CONTACT -- | --------------------------------~

الاسم: Alejandro Hernandez H. [nitr0us] تويتر: http://twitter.com/nitr0usmx البريد: nitrousenador [at] gmail [dot] com الموقع: http://www.brainoverflow.org المدونة: http://chatsubo-labs.blogspot.com

--------------------------------~ | -- IN MEMORIAL -- | --------------------------------~

هذا المشروع مهدى إلى ذكرى أحد أعز أصدقائي، آرون ألبا (Aaron Alba).

--------------------------------~ | -- LICENSE -- | --------------------------------~

Melkor - أداة Fuzzer لتنسيق ملفات ELF حقوق النشر (C) 2014 Alejandro Hernandez H. (nitr0us)

هذا البرنامج برمجيات حرة: يمكنك إعادة توزيعه و/أو تعديله وفقًا لشروط رخصة جنو العمومية العامة (GNU General Public License) كما تنشرها مؤسسة البرمجيات الحرة، سواء الإصدار 3 من الرخصة أو (حسب اختيارك) أي إصدار لاحق.

يُوزَّع هذا البرنامج على أمل أن يكون مفيدًا، ولكن دون أي ضمان؛ حتى بدون الضمان الضمني للتسويق (MERCHANTABILITY) أو الملاءمة لغرض معيّن (FITNESS FOR A PARTICULAR PURPOSE). راجع رخصة جنو العمومية العامة لمزيد من التفاصيل.

يجب أن تكون قد تلقيت نسخة من رخصة جنو العمومية العامة مع هذا البرنامج. إذا لم يكن الأمر كذلك، فانظر http://www.gnu.org/licenses/.

تنزيل الأداة