
Ghidra هو إطار لبرمجيات الهندسة العكسية (SRE) التي تم إنشاؤها وصيانتها من قبل مديرية أبحاث وكالة الأمن القومي. يتضمن هذا الإطار مجموعة من أدوات تحليل البرمجيات الكاملة ذات الميزة الكاملة التي تمكن المستخدمين من تحليل التعليمات البرمجية المترجمة على مجموعة متنوعة من الأنظمة الأساسية بما في ذلك Windows و MacOS و Linux. تشمل القدرات التفكيك ، التجميع ، فك الارتباط ، الرسوم البيانية ، والبرمجة ، إلى جانب مئات الميزات الأخرى. تدعم Ghidra مجموعة واسعة من مجموعات تعليمات المعالج والتنسيقات القابلة للتنفيذ ويمكن تشغيلها في كل من الوضعين المتمثل في المستخدم والآلي. يمكن للمستخدمين أيضًا تطوير مكونات امتداد Ghidra الخاصة بهم و/أو البرامج النصية باستخدام Java أو Python.
دعماً لمهمة الأمن السيبراني التابع لوكالة الأمن القومي ، تم تصميم Ghidra لحل مشاكل التحجيم والتعاون على جهود SRE المعقدة ، ولتوفير منصة بحثية قابلة للتخصيص وقابلة للتمديد. طبقت NSA قدرات Ghidra SRE على مجموعة متنوعة من المشكلات التي تتضمن تحليل التعليمات البرمجية الضارة وتوليد رؤى عميقة لمحللي SRE الذين يسعون إلى فهم أفضل لنقاط الضعف المحتملة في الشبكات والأنظمة.
إذا كنت مواطنًا أمريكيًا مهتمًا بمشاريع مثل هذا ، لتطوير Ghidra وغيرها من أدوات الأمن السيبراني لوكالة الأمن القومي للمساعدة في حماية أمتنا وحلفائها ، فكر في التقدم بطلب للحصول على مهنة معنا.
تحذير: هناك نقاط ضعف معروفة ضمن بعض الإصدارات من Ghidra. قبل المتابعة ، يرجى قراءة الاستشارات الأمنية لـ Ghidra لفهم أفضل لكيفية تأثرك.
لتثبيت إصدار رسمي متعدد المنصات غيدرا مسبقًا:
ghidra_<version>_<release>_<date>.zip والذي يمكن العثور عليه تحت "الأصول" المنسدلة. تنزيل أي من الملفات المسماة "رمز المصدر" غير صحيح لهذه الخطوة.ghidraRun.bat Ghidra ./ghidraRun للحصول على معلومات إضافية ونصائح استكشاف الأخطاء وإصلاحها حول تثبيت وتشغيل إصدار Ghidra ، يرجى الرجوع إلى دليل التثبيت الذي يمكن العثور عليه في إصدار Ghidra في docs/InstallationGuide.html .
لإنشاء أحدث بناء تطوير لمنصة الخاصة بك من مستودع المصدر هذا:
تحميل من جيثب
unzip ghidra-master
cd ghidra-master
ملاحظة: بدلاً من تنزيل المصدر المضغوط ، يمكنك بدلاً من ذلك استنساخ مستودع github: git clone https://github.com/NationalSecurityAgency/ghidra.git
ملاحظة: إذا كان اتصال الإنترنت متاحًا ولم تقم بتثبيت Gradle ، فقد يتم استبدال أوامر gradle التالية بـ ./gradle(.bat) .
gradle -I gradle/support/fetchDependencies.gradle
gradle buildGhidra
سيتم إنشاء بناء التطوير المضغوط في build/dist/ .
لمزيد من المعلومات التفصيلية حول بناء Ghidra ، يرجى قراءة دليل المطور.
لمشكلات بناء ، يرجى التحقق من قسم المشكلات المعروفة للحلول الممكنة.
تدعم تثبيتات Ghidra المستخدمين كتابة البرامج النصية والملحقات المخصصة عبر المكون الإضافي GhidRadev لـ Eclipse. يمكن العثور على المكون الإضافي والتعليمات المقابلة له ضمن إصدار Ghidra في Extensions/Eclipse/GhidraDev/ أو على هذا الرابط.
ملاحظة: يدعم المكون الإضافي لـ GhidRadev لـ Eclipse فقط التطوير مقابل تثبيتات Ghidra المصممة بالكامل والتي يمكن تنزيلها من صفحة الإصدارات.
لتطوير أداة Ghidra نفسها ، يوصى بشدة باستخدام Eclipse ، والتي تم تخصيص عملية تطوير Ghidra بشكل كبير.
gradle prepdev eclipse buildNatives
عندما تنتهي Eclipse من بناء المشاريع ، يمكن إطلاق Ghidra وتصحيحه مع تكوين Ghidra Eclipse Run المتوفر.
لمزيد من المعلومات التفصيلية حول تطوير Ghidra ، يرجى قراءة دليل المطور.
إذا كنت ترغب في المساهمة في إصلاحات الأخطاء ، والتحسينات ، والميزات الجديدة إلى Ghidra ، فيرجى إلقاء نظرة على دليل المساهم لدينا لمعرفة كيف يمكنك المشاركة في هذا المشروع المفتوح المصدر.