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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
gimphash — حساب شبيه بـ Imphash على ملفات Golang الثنائية | Kitploit
أدوات/GitHubGitHub/nextronsystems/gimphash
تحليل التجزئةالهندسة العكسيةتحليل البرمجيات الخبيثةتحليل الملفات الثنائية
GitHubnextronsystems/gimphash

gimphash

حساب شبيه بـ Imphash على ملفات Golang الثنائية

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

الأكثر شعبية

عرض الكل →

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

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

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

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

gimphash

gimphash هي طريقة مقترحة لحساب ما يعادل imphash لملفات Go الثنائية. اسمها اختصار لـ Go-import-hash.

تحتوي ملفات Golang الثنائية على تبعياتها كجزء من الملف التنفيذي. تتضمن هذه التبعيات كلاً من حزم المكتبة القياسية والتبعيات الخارجية، ويمكن استخدامها، بشكل مماثل لـ imphash التقليدي، لتحديد مشروع Golang.

يمكن سرد التبعيات باستخدام pclntab الموجود في كل ملف Golang ثنائي (انظر أيضاً منشور المدونة من Mandiant). يحتوي pclntab على عدد من العناصر المثيرة للاهتمام للهندسة العكسية؛ بالنسبة لـ gimphash سنستخدم أسماء الدوال الموجودة فيه.

الحساب

  1. حدد موقع pclntab داخل ملف Golang ثنائي
  2. عدّ دوال Golang باستخدام functab داخل pclntab وتنقّل عبر أسمائها:
    1. تجاهل أسماء الدوال التي تبدأ بـ go. أو type. (مخرجات الترجمة، داخليات وقت التشغيل)
    2. إذا كان اسم الدالة يحتوي على vendor/، تجاهل هذا الجزء وكل ما قبله (مثال: حوّل vendor/golang.org/x/text إلى golang.org/x/text)
    3. تجاهل أسماء الدوال التي تحتوي على internal/
    4. تجاهل أسماء الدوال التي تبدأ بأحد حزم المكتبة القياسية التالية:
      • runtime
      • sync
      • syscall
      • type
      • time
      • unicode
      • reflect
      • strconv
    5. تجاهل أسماء الدوال غير العامة أو تلك التي تكون مستقبلاتها (receivers) غير عامة. للقيام بذلك:
      1. ابحث عن آخر / في اسم الدالة. إذا لم يتم العثور على /، استخدم البداية بدلاً من ذلك. ابتداءً من هذا الموضع، ابحث عن النقطة . التالية.
      2. استخرج اسم الدالة الأساسي على أنه كل ما بعد تلك النقطة .. إذا لم يتم العثور على .، استخدم كل ما بعد مؤشر / المحسوب في الخطوة السابقة.
      3. تجاهل الدالة إذا كان أول حرف أبجدي رقمي في اسم الدالة الأساسي حرفاً صغيراً.
      4. إذا كانت هناك نقطة . أخرى داخل اسم الدالة الأساسي، تجاهل الدالة إذا كان أول حرف أبجدي رقمي بعد تلك النقطة حرفاً صغيراً.
    6. خزّن الاسم الناتج، إذا لم يتم تجاهله حتى الآن، في قائمة مرتبة
  3. احسب تجزئة SHA-256 فوق الأسماء المتسلسلة (بدون فاصل)

تطبيقات إثبات المفهوم

يحتوي هذا المستودع على كود إثبات المفهوم باللغات التالية:

  • C
  • Go

يحتوي قسم الإصدارات على ملفات ثنائية مجمعة مسبقاً لنظامي Windows وLinux.

أمثلة الاستخدام

شغّل حاسبة Gimphash على ملف واحد

root@kitploit:~
./c_gimphash_linux /mnt/malware-repo/Godoh/godoh-windows64.exe
8200e76e42c4e9cf2bb308d76c017cbdcde5cbbf95e99e02b14d05e7b21505f3 /mnt/mal/Godoh/godoh-windows64.exe

شغّل حاسبة Gimphash على مستودع برمجيات خبيثة

root@kitploit:~
find /mnt/malware-repo/ -type f -exec ./go_gimphash_linux {} \; 2>/dev/null
...

مثال على التجميع

Screenshot 2022-07-02 at 10 11 38

تنزيل الأداة