
مكوّن إضافي للهندسة العكسية يتيح التعاون بين أدوات فك الترجمة، مبني على git.
BinSync هي أداة تعاون لفك الترجمة (decompiler) مبنية على نظام إدارة الإصدارات Git لتمكين التعاون الدقيق في الهندسة العكسية بغض النظر عن أداة فك الترجمة المستخدمة. تم بناء BinSync بواسطة mahaloz، وفريق angr، ومختبر أبحاث SEFCOM. ويعود الفضل أيضًا بشكل كبير إلى استخدامه من قبل فريق الاختراق Shellphish.
تتشارك جميع أدوات فك الترجمة الجيدة كائنات مشتركة تُسمى آثار الهندسة العكسية (REAs). هذه الـ REAs هي مركز قدرة المزامنة في BinSync. فيما يلي الـ REAs المدعومة:
ملاحظة: جميع الأنواع تدعم الأنواع التي ينشئها المستخدم مثل البنى.
انضم إلى الديسكورد الخاص بنا أدناه للحصول على مزيد من المساعدة عبر الإنترنت:
لجميع عمليات التثبيت، من الأفضل استخدام أداة التثبيت المكوّنة من جزأين مع Python:
pip3 install binsync && binsync --install
BinSync متاح أيضًا في مدير إضافات Binary Ninja.
إذا كنت تخطط لاستخدام BS مع Ghidra، فيجب تشغيله في وضع PyGhidra.
إذا كنت تخطط لاستخدام ميزات BS الإضافية، مثل مستخدم ChatGPT، فثبّت الحزمة بهذه الطريقة: pip3 install binsync[extras]، والتي ستثبّت حزمًا إضافية للدعم.
للحصول على معلومات التثبيت الكاملة، يرجى قراءة وثائق البدء السريع.
للمطورين، ثبّت الحزمة لتكون قابلة للتحرير (-e) وتأكد من أن pip>=23.0.0.
تتطلب جميع الإصدارات Python >= 3.10 وGit مثبتًا على نظامك. دعم Ghidra لا يزال في مرحلة مبكرة جدًا، لذا توقّع فقط الميزات الأساسية مثل مزامنة أسماء الآثار والتعليقات.
على الرغم من أننا ندعم أدوات فك الترجمة المذكورة في القسم السابق، إلا أنه ليس كل أداة فك ترجمة مدعومة بنفس مستوى المزامنة. لفهم الفرق بين دعم الآثار، والسحب (pull)، والدفع (push)، والدفع التلقائي (auto push)، اقرأ مقدمة استخدام أدوات فك الترجمة.
| Operations | Function Headers | Stack Vars | Global Vars | Structs | Enums | Comments |
|---|---|---|---|---|---|---|
| Symbols | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Types | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Pull | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Push | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Auto Push | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Operations | Function Headers | Stack Vars | Global Vars | Structs | Enums | Comments |
|---|---|---|---|---|---|---|
| Symbols | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Types | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Pull | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Push | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Auto Push | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |