عن المشروع

Capstone Engine هو إطار عمل مفتوح المصدر للتفكيك، مكتوب بلغة C الخالصة ومصمم لتحليل الملفات الثنائية والهندسة العكسية في مجتمع الأمن السيبراني. أنشأه Nguyen Anh Quynh، وتتولى صيانته مجموعة صغيرة من المطورين، ويُوزَّع بموجب رخصة BSD المتساهلة. تُعد تغطية المعماريات إحدى السمات المميزة لـ Capstone. فهو يتعامل مع شفرة الآلة عبر طيف واسع من المعماريات المادية والافتراضية: ARM، وAArch64 (ARMv8)، وAlpha، وARC، وBPF، وEthereum Virtual Machine، وLoongArch، وHPPA (PA-RISC)، وM68K، وM680X، وMIPS، وMOS65XX، وPowerPC، وRISC-V (rv32G/rv64G)، وSH، وSPARC، وSystemZ، وTMS320C64X، وTriCore، وWebAssembly، وXCore، وXtensa، وx86 بالأنماط ذات 16 بت و32 بت و64 بت. وبالإضافة إلى تحويل شفرة الآلة إلى نص بلغة التجميع، يوفر Capstone معلومات تفصيلية عن كل تعليمة مُفكَّكة — وهي قدرة تسميها أدوات أخرى أحيانًا decomposition — بما في ذلك دلالات التعليمة، مثل السجلات الضمنية التي تتم قراءتها وتلك التي تتم كتابتها. صُممت واجهة API لتكون نظيفة وخفيفة ومحايدة تجاه المعمارية، بحيث يعمل الواجهة نفسها عبر جميع الأهداف المدعومة. Capstone آمن للاستخدام متعدد الخيوط بحكم التصميم، ويتضمن دعمًا خاصًا لتضمينه في البرامج الثابتة أو أنوية أنظمة التشغيل، مما يجعله مناسبًا للبيئات منخفضة المستوى والمقيدة. يصف المشروع نفسه بأنه عالي الأداء وقادر على التعامل مع مختلف حِيَل البرامج الضارة الخاصة بـ x86، ما يجعله مخصصًا لحالات استخدام تحليل البرامج الضارة. ومع أن النواة منفذة بلغة C، فهناك روابط متاحة — إما ضمن قاعدة الشيفرة الرئيسية أو توفرها komunitas خارجيًا — لقائمة طويلة من اللغات: Python، وC++، وC#، وJava، وGo، وRust، وNodeJS، وRuby، وPerl، وPHP، وLua، وHaskell، وOCaml، وClojure، وF#، وCommon Lisp، وSwift، وD، وVisual Basic، وPowerShell، وEmacs Lisp، وDelphi، وFree Pascal، وVala. تُنشر حزمة Python على PyPI. وتُ_supported عمليات البناء الأصلية على Windows وmacOS وiOS وAndroid وLinux و*BSD وSolaris. يشارك المشروع في برنامج Google OSS-Fuzz المستمر للفحص الضبابي، وتغطي وثائقه البناء والتثبيت، وبُنية البرمجيات، والاختبار، ومكون تحديثزامن تلقائي. وتدار النقاشات المجتمعية في مجموعة Telegram، وترد إرشادات المساهمة في المستودع. يشمل المستخدمون النموذجيون باحثي الأمن ومحللي البرامج الضارة والمطورين الذين ينشئون أدوات تصحيح أو تتبع أو غيرها من الأدوات التي تحتاج إلى تفسير شفرة الآلة برمجيًا. تجدر الإشارة إلى أن Capstone مكتبة وإطار عمل، وليس تطبيق واجهة رسومية مستقلًا: إذ يدمجه المستخدمون عبر واجهة C API الخاصة به أو عبر واحد من الروابط العديدة المتاحة للغات البرمجة.