
مكوّن إضافي للهندسة العكسية يتيح التعاون بين أدوات فك الترجمة، مبني على git.
BinSync هي أداة تعاون لمفككات الترجمة مبنية على نظام إصدارات Git لتمكين التعاون في الهندسة العكسية بدقة عالية بغض النظر عن مفكك الترجمة. تم بناء BinSync بواسطة mahaloz، وفريق angr، ومختبر الأبحاث SEFCOM. ويعود الفضل أيضًا إلى حد كبير إلى استخدامها من قبل فريق القرصنة Shellphish.
جميع مفككات الترجمة الجيدة تشترك في كائنات شائعة تسمى Reverse Engineering Artifacts (REAs). هذه الـ REAs هي مركز قدرة المزامنة في BinSync. فيما يلي الـ REAs المدعومة:
ملاحظة: تدعم جميع الأنواع الأنواع التي ينشئها المستخدم مثل الهياكل.
انضم إلى ديسكوردنا أدناه لمزيد من المساعدة عبر الإنترنت:
لجميع عمليات التثبيت، من الأفضل استخدام المثبّت ثنائي الأجزاء الخاص بنا مع Python:
pip3 install binsync && binsync --install
تتوفر BinSync أيضًا في مدير إضافات Binary Ninja.
إذا كنت تخطط لاستخدام BS مع Ghidra، فيجب عليك تشغيله في وضع PyGhidra.
إذا كنت تخطط لاستخدام ميزات BS الإضافية، مثل ChatGPT User، فثبّت الحزمة بهذه الطريقة: pip3 install binsync[extras]، والتي ستقوم بتثبيت حزم إضافية للدعم.
للحصول على معلومات التثبيت الكاملة، يرجى قراءة مستندات البدء السريع.
للمطورين، قم بتثبيت الحزمة لتكون قابلة للتحرير (-e) وتأكد من pip>=23.0.0.
تتطلب جميع الإصدارات تثبيت Python >= 3.10 وGit على نظامك. لا يزال دعم Ghidra في مرحلة مبكرة جدًا، لذا توقع فقط الميزات الأساسية مثل مزامنة أسماء الأدوات والتعليقات.
على الرغم من أننا ندعم مفككات الترجمة المذكورة في القسم السابق، إلا أنه ليس كل مفكك ترجمة مدعوم بنفس مستوى المزامنة. لفهم الفرق بين دعم الأدوات، والسحب، والدفع، والدفع التلقائي، اقرأ مقدمة استخدام مفككات الترجمة.
للسكربتات، يرجى الاطلاع على DecLib، الذي يتيح لك القيام بجميع عمليات الرفع (lifting) ومعالجة البيانات في Python.
لم يكن بإمكان BinSync ومشاريعها المرتبطة أن تكون ممكنة بدون الرعاية. دون ترتيب معين، نود أن نشكر جميع المنظمات التي رعت سابقًا أو ترعى حاليًا أحد مشاريع BinSync العديدة.
| العمليات | ترويسات الدوال | متغيرات المكدس | المتغيرات العامة | الهياكل | التعدادات | التعليقات |
|---|
| الرموز | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| الأنواع | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| سحب | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| دفع | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| دفع تلقائي | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| العمليات | ترويسات الدوال | متغيرات المكدس | المتغيرات العامة | الهياكل | التعدادات | التعليقات |
|---|
| الرموز | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| الأنواع | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| سحب | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| دفع | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| دفع تلقائي | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| العمليات | ترويسات الدوال | متغيرات المكدس | المتغيرات العامة | الهياكل | التعدادات | التعليقات |
|---|
| الرموز | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| الأنواع | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| سحب | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| دفع | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
| دفع تلقائي | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
| العمليات | ترويسات الدوال | متغيرات المكدس | المتغيرات العامة | الهياكل | التعدادات | التعليقات |
|---|
| الرموز | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
| الأنواع | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
| سحب | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
| دفع | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
| دفع تلقائي | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |