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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
binaryninja-ollama — إضافة لـ Binary Ninja تدمج نماذج Ollama المحلية لإعادة تسمية الدوال والمتغيرات في كود HLIL المفكوك، مع الحفاظ على الخصوصية عبر إبقاء التحليل محليًا بالكامل وغير متصل بالإنترنت. | Kitploit
أدوات/GitHubGitHub/ahaggard2013/binaryninja-ollama
تحليل الكودالهندسة العكسيةالخصوصيةتحليل الملفات الثنائيةتعلم الآلةالهندسة العكسية بمساعدة الذكاء الاصطناعي
GitHubahaggard2013/binaryninja-ollama

binaryninja-ollama

إضافة لـ Binary Ninja تدمج نماذج Ollama المحلية لإعادة تسمية الدوال والمتغيرات في كود HLIL المفكوك، مع الحفاظ على الخصوصية عبر إبقاء التحليل محليًا بالكامل وغير متصل بالإنترنت.

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
83118منذ سنة واحدةتمت المراجعة من قبل Kitploit

"Buy Me A Coffee"

Binary Ninja Ollama (v1.0.9)

المؤلف: Austin Haggard

يتكامل Binary Ninja Ollama مع خادم ollama المُستضاف محليًا لديك لإعادة تسمية الدوال والمتغيرات باستخدام الذكاء الاصطناعي

الوصف:

Ollama هي أداة تتيح لك سحب نماذج الذكاء الاصطناعي مفتوحة المصدر وتشغيلها محليًا. تتطلب بعض النماذج قوة حاسوبية كبيرة، بينما يمكن تشغيل البعض الآخر على حاسوبك الشخصي. ستختلف النتائج بشكل كبير اعتمادًا على النموذج الذي تختار استخدامه :).

لماذا تستخدم هذا بدلاً من sidekick/openai؟

  1. إنه مجاني وسهل الإعداد محليًا.
  2. هل قلت إنه مجاني؟
  3. يمكن تشغيله في أي مكان دون الحاجة إلى الإنترنت!
  4. تبقى بياناتك بينك وبين خادم ollama الخاص بك دون أي طرف ثالث.

الميزات

هذه الإضافة تدمج Ollama مع Binary Ninja وتدعم الإجراءات المذكورة أدناه:

  • تحديد الخادم/المنفذ الذي يجب أن يستخدمه Binary Ninja للاتصال بـ ollama.
    • هل لديك حاسوب ألعاب عالي الأداء (جدًا)؟ استخدمه لاستضافة ollama ووجّه binja إلى llama3:70b/gemma2:27b.
    • هل تشغّله على حاسوب محمول؟ استضفه محليًا، واضبطه على localhost وشغّل gemma2:latest/llama3:latest.
    • هناك الكثير من النماذج الأخرى التي يمكنك تجربتها، لكنني اختبرت هذا بشكل أساسي مع متغيرات من llama3/gemma2 وكانت النتائج جيدة.
  • استعلم من خادم ollama المُستضاف محليًا لتحديد ما تقوم به دالة معينة.
    • يمكن استخدام هذا لإعادة تسمية جميع الدوال دفعة واحدة، أو استهداف دوال محددة بشكل فردي.
  • يتيح للمستخدمين إعادة تسمية المتغيرات في HLIL باستخدام ollama.
    • يمكن استخدام هذا لإعادة تسمية متغيرات فردية داخل تعليمة معينة.
    • يمكن استخدام هذا لإعادة تسمية جميع المتغيرات داخل دالة.

التثبيت

إذا كنت تثبّت هذه الإضافة كإضافة مستقلة، يمكنك وضع (أو ربطه كرابط رمزي) هذا في مسار إضافات Binary Ninja. المسارات الافتراضية موضحة في توثيق Vector 35.

التبعيات

  • Python 3.10+
  • تثبيت ollama باستخدام pip3 install ollama

خادم Ollama

يتطلب هذا أن يكون لديك إمكانية الوصول إلى خادم ollama أو استضافته بنفسك وسحب أي نماذج ترغب في استخدامها.

اتبع التعليمات على https://ollama.com لإعداد خادمك وسحب أي نماذج ترغب في تجربتها. بمجرد الانتهاء من ذلك، يجب أن يتم تشغيل الخادم تلقائيًا والوصول إليه عبر localhost:11434.

الاستخدام

إعادة تسمية جميع متغيرات الدوال

سيقوم خيار إعادة تسمية جميع متغيرات الدوال بتحليل جميع المتغيرات داخل دالة ومحاولة إعادة تسميتها بناءً على المطالبة التالية:

root@kitploit:~
prompt = (
             f"In one word, what should the variable '{variable}' be named in the below Function? "
             f"The name must meet the following criteria: all lowercase letters, usable in Python code"
)

Before variables renaming After variables renaming

إعادة تسمية جميع الدوال

سيقوم خيار إعادة تسمية جميع الدوال بالمرور على جميع الدوال، من الأصغر إلى الأكبر، داخل binaryview وإعادة تسميتها بناءً على المطالبة التالية:

root@kitploit:~
prompt = (
    f"Given the following HLIL decompiled code snippet, provide a Python-style function name that describes what the code is doing. "
    f"The name must meet the following criteria: all lowercase letters, usable in Python code, with underscores between words. "
    f"Only return the function name and no other explanation or text data included."
)

Before functions renaming After functions renaming After functions renaming

إعادة تسمية الدالة المستهدفة

تستخدم إعادة تسمية دالة مستهدفة نفس المطالبة المستخدمة في إعادة تسمية جميع الدوال، ولكنها تقتصر على الدالة المحددة عند تشغيل الإضافة.

إعادة تسمية متغير الدالة المستهدفة

تستخدم إعادة تسمية متغير مستهدف نفس المطالبة المستخدمة في إعادة تسمية جميع المتغيرات، ولكنها تقتصر على الدالة المحددة عند تشغيل الإضافة.

الإعدادات

يتم تفعيل الإعدادات عند أول استدعاء لأي عملية إعادة تسمية عند بدء تشغيل Binary Ninja لأول مرة، أو عن طريق تفعيلها يدويًا. ستبقى الإعدادات المطبقة سارية داخل جلسة Binary Ninja.

تتيح لك نافذة الإعدادات تحديد عنوان IP والمنفذ والنموذج المراد استخدامه داخل ollama. يمكن فقط اختيار النماذج التي تم تنزيلها.

Plugin settings option Plugin connection options Plugin model options

المشكلات المعروفة

  • في الدوال الأكبر حجمًا، يتجاهل الذكاء الاصطناعي المطالبة ويعيد كتلًا كبيرة من النص لوصف الدالة. يتم التخفيف من هذا بتجاهل القيمة المُعادة وتسجيل رسالة "لا يمكن إعادة تسمية الدالة'، ولكن يمكن التحقيق في الأمر بشكل أعمق
  • يمكن تحسين التعامل مع حالة عدم وجود الخادم المختار.

طلب ميزة

  • هل هناك أي شيء يهمك غير مضمّن؟

    • افتح issue!
    • أنشئ pull request.
  • أفكار:

    • استهداف تسمية متغير واحد بدلاً من جميع المتغيرات في السطر
    • توليد تعليقات بالذكاء الاصطناعي تصف الكود
    • استعادة البنية

الترخيص

تم إصدار هذه الإضافة بموجب ترخيص MIT.

تنزيل الأداة