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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
HexRaysCodeXplorer — إضافة Hex-Rays Decompiler لتحسين التنقل في الكود | Kitploit
أدوات/GitHubGitHub/rehints/hexrayscodexplorer
التحليل الثابتالهندسة العكسيةمصممي الأخطاءتحليل البرمجيات الخبيثةتحليل الملفات الثنائية
GitHubrehints/hexrayscodexplorer

HexRaysCodeXplorer

إضافة Hex-Rays Decompiler لتحسين التنقل في الكود

عرض المستودع
2.6k4136منذ 9 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

| | | | | ___ \ / __ \ | | \ \ / / | |
| || | _____ | |/ /__ _ _ _ | / / ___ | | ___ \ V / _ __ | | ___ _ __ ___ _ __ | _ |/ _ \ / / // | | | / __| | / _ \ / _ |/ _ / | ' | |/ _ | '/ _ \ '| | | | | __/> <| |\ \ (| | || __ \ _/\ () | (| | __/ /^\ \ |) | | () | | | __/ |
_| |
/_//__| __,|_, |/_/_/ _,|_/ / ./||___/|| ___||
/ | | |
|
/ |_|

============================================================================

الترخيص: GPL v3 مناخ الكود عدد المشكلات

إضافة مفكك الشيفرة Hex-Rays لتحسين التنقل في الكود أثناء عملية الهندسة العكسية. تعمل CodeXplorer على أتمتة إعادة بناء الكود لتطبيقات C++ أو البرامج الضارة الحديثة مثل Stuxnet وFlame وEquation وAnimal Farm... :octocat:

إضافة CodeXplorer هي واحدة من أول الإضافات المتاحة للجمهور لمفكك شيفرة Hex-Rays. نحن نحافظ على تحديث هذا المشروع ونستمر في إضافة ميزات جديدة بشكل متكرر. كما تم تقديم أكثر ميزات CodeXplorer إثارة للاهتمام في العديد من المؤتمرات الأمنية مثل: REcon وZeroNights وH2HC وNSEC وBHUS 👾

منذ صيف 2013

المساهمون:

Alex Matrosov (@matrosov)

Eugene Rodionov (@rodionov)

Rodrigo Branco (@rrbranco)

Gabriel Barbosa (@gabrielnb)

الإصدارات المدعومة من منتجات Hex-Rays: نركز دائمًا على أحدث إصدارات IDA ومفكك الشيفرة لأننا نحاول استخدام الميزات الجديدة المثيرة للاهتمام في إصدارات SDK الجديدة. وهذا يعني أيضًا أننا اختبرنا فقط على أحدث إصدارات منتجات Hex-Rays ولا نضمن العمل المستقر على الإصدارات السابقة.

لماذا ليس IdaPython: تم تطوير جميع الشيفرات بلغة C/C++ لأنها طريقة أكثر استقرارًا لدعم إضافة معقدة لمفكك شيفرة Hex-Rays.

المنصات المدعومة: x86/x64 لأنظمة Win وLinux وMac.

HexRaysCodeXplorer - إضافة مفكك الشيفرة Hex-Rays لسهولة التنقل في الكود. تظهر قائمة السياق بزر الفأرة الأيمن في نافذة Pseudocode أوامر إضافة CodeXplorer:

1

💎 إليك الميزات الرئيسية لإضافة CodeXplorer: 💎

  • إعادة بناء النوع تلقائيًا لكائنات C++. لإعادة بناء نوع باستخدام HexRaysCodeXplorer، تحتاج إلى تحديد المتغير الذي يحمل مؤشرًا إلى مثيل الكود المستقل عن الموضع أو إلى كائن، ثم بالنقر بزر الفأرة الأيمن اختيار خيار «REconstruct Type» من قائمة السياق:

2

يتم عرض البنية المعاد بناؤها في "نافذة الإخراج". تم تقديم معلومات مفصلة عن ميزة إعادة بناء النوع في منشور المدونة "إعادة بناء النوع في HexRaysCodeXplorer".

كما تدعم إضافة CodeXplorer إعادة بناء النوع تلقائيًا إلى مخزن الأنواع المحلية في IDA.

6

  • تحديد جداول الدوال الافتراضية - يقوم تلقائيًا بتحديد المراجع إلى جداول الدوال الافتراضية أثناء إعادة بناء النوع. عند تحديد مرجع إلى جدول دالة افتراضية، تقوم الإضافة بإنشاء بنية C مقابلة. كما هو موضح أدناه، أثناء إعادة بناء struct_local_data_storage تم تحديد جدولي دوال افتراضية، ونتيجة لذلك، تم إنشاء بنيتين مقابلتين: struct_local_data_storage_VTABLE_0 و struct_local_data_storage_VTABLE_4.

12

  • تصور الرسم البياني C-tree – بنية تشبه الشجرة خاصة تمثل روتينًا مفككًا بمصطلحات citem_t (hexrays.hpp). ميزة مفيدة لفهم كيفية عمل المفكك. عقدة الرسم البياني المميزة تتوافق مع موضع المؤشر الحالي في نافذة Pseudocode الخاصة بـ HexRays:

3

  • عرض عنصر Ctree – يعرض تمثيل ctree للعنصر المميز:

16

  • استخراج Ctrees إلى ملف – تفريغ حساب SHA1 hash وتفريغ جميع ctrees إلى ملف.

14

  • استخراج أنواع إلى ملف – تفريغ جميع معلومات النوع (بما في ذلك الأنواع المعاد بناؤها) إلى ملف.

  • التنقل عبر استدعاءات الدوال الافتراضية في نافذة Pseudocode الخاصة بـ HexRays. بعد تمثيل كائنات C++ ببنى C، تتيح هذه الميزة التنقل بالنقر بالماوس إلى استدعاءات الدوال الافتراضية كحقول بنية:

4

  • الانتقال إلى Disasm - ميزة صغيرة للتنقل إلى كود التجميع في "نافذة عرض IDA" من موضع السطر الحالي في Pseudocode. تساعد في العثور على مكان في كود التجميع المرتبط بالسطر المفكك.

8

  • مستكشف الكائنات – واجهة مفيدة للتنقل عبر بنى الجداول الافتراضية (VTBL). يقوم مستكشف الكائنات بإخراج معلومات VTBL إلى نافذة عرض مخصصة في IDA. تظهر نافذة الإخراج باختيار خيار «Object Explorer» في قائمة السياق بزر الفأرة الأيمن:

5

يدعم مستكشف الكائنات الميزات التالية:

  • إنشاء تلقائي لبنى VTBL في مخزن الأنواع المحلية في IDA

  • التنقل في قائمة الجدول الافتراضي والانتقال إلى عنوان VTBL في نافذة "IDA View" بالنقر

  • عرض تلميحات للموضع الحالي في قائمة الجدول الافتراضي

  • عرض قائمة المراجع المتقاطعة بالنقر على القائمة في "Show XREFS to VTBL"

11

  • دعم تحليل RTTI تلقائيًا للكائنات:

13

وضع الدفعة يحتوي على الميزات التالية:

  • وضع الدفعة - ميزة مفيدة لاستخدام CodeXplorer في معالجة ملفات متعددة دون أي تفاعل من المستخدم. أضفنا هذه الميزة بعد بحث Black Hat في 2015 لمعالجة 2 مليون عينة.
root@kitploit:~
مثال (تفريغ الأنواع و ctrees للدوال ذات بادئة الاسم "crypto_"):
idaq.exe -OHexRaysCodeXplorer:dump_types:dump_ctrees:CRYPTOcrypto_path_to_idb

التجميع:

Windows:

  • افتح الحل في Visual Studio
  • افتح الملف src/HexRaysCodeXplorer/PropertySheet.props في notepad(++) وقم بتحديث قيم المسارات IDADIR و IDASDK لتشير إلى مسار تثبيت IDA ومسار IDA7 SDK وفقًا لذلك. يجب أن يكون HexRays SDK في $IDADIR\plugins\hexrays_sdk (كما هو افتراضي)
  • قم ببناء تكوينات Release | x64 و Release x64 | x64

Linux:

  • cd src/HexRaysCodeXplorer/
  • IDA_DIR=<PATH_TO_IDA> IDA_SDK=<PATH_TO_IDA_SDK> EA64=0 make -f makefile.lnx
  • IDA_DIR=<PATH_TO_IDA> IDA_SDK=<PATH_TO_IDA_SDK> EA64=0 make -f makefile.lnx install

Mac:

  • cd src/HexRaysCodeXplorer/
  • IDA_DIR=<PATH_TO_IDA> IDA_SDK=<PATH_TO_IDA_SDK> make -f makefile.mac
  • قد يحتاج ملف makefile الخاص بـ Mac إلى بعض التعديل اليدوي، نرحب بطلبات السحب!
  • امتداد الملف .pmc في IDA 7.0 يجب أن يكون .dylib
  • bash$ export IDA_DIR="/Applications/IDA\ Pro\ 7.0/ida.app/Contents/MacOS" && export IDA_SDK="/Applications/IDA\ Pro\ 7.0/ida.app/Contents/MacOS/idasdk" && make -f makefile7.mac
  • أو افتح المشروع في Xcode HexRaysCodeXplorer.xcodeproj

مع CMake:

  • cd src/HexRaysCodeXplorer/
  • mkdir build && cd build
  • cmake .. -DIdaSdk_ROOT_DIR=<PATH_TO_IDA_SDK> -DHexRaysSdk_ROOT_DIR=<PATH_TO_HEXRAYS_SDK>
  • cmake --build . --config Release

============================================================================

محادثات المؤتمرات حول إضافة CodeXplorer:

  • 2015
  • "Distributing the REconstruction of High-Level IR for Large Scale Malware Analysis", BHUS [الشرائح]
  • "Object Oriented Code RE with HexraysCodeXplorer", NSEC [الشرائح]
  • 2014
  • "HexRaysCodeXplorer: object oriented RE for fun and profit", H2HC [الشرائح]
  • 2013
  • "HexRaysCodeXplorer: make object-oriented RE easier", ZeroNights [الشرائح]
  • "Reconstructing Gapz: Position-Independent Code Analysis Problem", REcon [الشرائح]
تنزيل الأداة