
استخراج تكوين البرامج الضارة والحمولة
يُستخدم الصندوق الرملي لتنفيذ الملفات الخبيثة في بيئة معزولة مع تتبع سلوكها الديناميكي وجمع الأدلة الجنائية.
اشتُق CAPE من Cuckoo v1 الذي يتميز بقدرات أساسية التالية على منصة Windows:
يُكمل CAPE مخرجات الصندوق الرملي التقليدية لـ Cuckoo بعدة إضافات رئيسية:
هناك نسخة تجريبية مجانية متاحة على الإنترنت يمكن لأي شخص استخدامها:
https://capesandbox.com - لتفعيل الحساب تواصل عبر https://twitter.com/capesandbox
بدأ Cuckoo Sandbox كمشروع Google Summer of Code في عام 2010 ضمن The Honeynet Project. صُمم وطُوّر في الأصل بواسطة Claudio Guarnieri، ونُشرت أول نسخة تجريبية في عام 2011. في يناير 2014، صدر Cuckoo v1.0.
كان عام 2015 عامًا محوريًا، مع انشقاق كبير في تاريخ Cuckoo.
توقف تطوير المُراقب الأصلي وطريقة اعتراض API في
مشروع Cuckoo الرئيسي. واستُبدل بـ مُراقب بديل
يستخدم صيغة توقيع مبنية على restructuredText تُجمّع عبر سلسلة أدوات Linux،
أنشأها Jurriaan Bremer.
في الوقت نفسه تقريبًا، أُنشئ انشقاق يُسمى Cuckoo-modified بواسطة Brad 'Spender' Spengler لمواصلة تطوير المُراقب الأصلي مع تحسينات كبيرة تشمل دعم 64-بت والأهم من ذلك إدخال مُجمّع Microsoft Visual Studio.
خلال العام نفسه بدأ تطوير أداة سطر أوامر ديناميكية لاستخراج التهيئة والحمولات تُسمى CAPE في Context Information Security بواسطة Kevin O'Reilly. صيغ الاسم كاختصار لـ 'Config And Payload Extraction' وركّز البحث الأصلي على استخدام اعتراضات API التي توفرها مكتبة Microsoft Detours لالتقاط حمولات البرمجيات الخبيثة المفكوكة والتهيئة. ومع ذلك، أصبح واضحًا أن اعتراضات API وحدها توفر قوة ودقة غير كافيتين لفك تغليف الحمولات أو التهيئات من برمجيات خبيثة عشوائية.
لهذا السبب بدأ البحث في مفهوم مُنقّح مبتكر للسماح بالتحكم الدقيق في البرمجيات الخبيثة وتتبعها مع تجنب استخدام واجهات تصحيح Microsoft، ليكون خفيًا قدر الإمكان. دُمج هذا المُنقّح في الأداة الأولية القائمة على Detours، متحدًا مع اعتراضات API مما أسفر عن قدرات قوية جدًا.
عندما أظهر العمل الأولي أنه سيكون من الممكن استبدال Microsoft Detours بـ محرك اعتراض API الخاص بـ Cuckoo-modified، وُلدت فكرة CAPE Sandbox. مع إضافة المُنقّح، وفك التغليف الآلي، والتصنيف القائم على YARA، واستخراج التهيئة المدمج، في سبتمبر 2016 في 44con، صدر CAPE Sandbox علنًا لأول مرة: CAPE الإصدار 1.
في صيف 2018 حالف الحظ المشروع ببداية مساهمات ضخمة من Andriy 'doomedraven' Brukhovetskyy، وهو مساهم قديم في Cuckoo. في عام 2019 بدأ المهمة الهائلة لنقل CAPE إلى Python 3 وفي أكتوبر من ذلك العام صدر CAPEv2.
استمر تطوير CAPE وتحسينه لمواكبة التقدم في كل من البرمجيات الخبيثة وقدرات أنظمة التشغيل. في عام 2021، أُضيفت القدرة على برمجة مُنقّح CAPE أثناء التفجير عبر فحوصات YARA الديناميكية، مما أتاح إنشاء تجاوزات ديناميكية لتقنيات مكافحة الصندوق الرملي. أصبح Windows 10 نظام التشغيل الافتراضي، ومن الإضافات المهمة الأخرى سطح المكتب التفاعلي، والتقاط حمولات AMSI (Anti-Malware Scan Interface)، و'اعتراض syscall' القائم على Microsoft Nirvana والإجراءات المضادة المباشرة/غير المباشرة لـ syscall القائمة على المُنقّح.
في عام 2024 أنشأ enzok CAPEsolo، نسخة تفاعلية من CAPE لسطح مكتب Windows، باستخدام wxPython للواجهة الرسومية، بالإضافة إلى إدخال توافق Python للضيف 64-بت. في عام 2026، أُضيف دعم لجميع إصدارات Windows 10 و Windows 11 23H2.

يمكن تصنيف البرمجيات الخبيثة في CAPE عبر ثلاث آليات:

يمكن إجراء التحليل باستخدام إطار عمل CAPE الخاص، أو بدلاً من ذلك تُدعم الأطر التالية: RATDecoders، DC3-MWCP، MalDuck، أو MaCo
تُصان محللات التهيئة الأساسية والمجتمعية لـ CAPE في مستودع
CAPE-parsers المنفصل وتُثبّت
كاعتمادية CAPE-parsers. أرسل الإضافات والإصلاحات لتلك المحللات
هناك؛ يصف ملف README الخاص بها حقول التهيئة المتوقعة.
def extract_config(data): التي سيستدعيها cape_utils.py و0 تعقيدات.

يستفيد CAPE من العديد من تقنيات أو سلوكيات البرمجيات الخبيثة للسماح بالتقاط الحمولات المفكوكة:
ستؤدي هذه السلوكيات إلى التقاط الحمولات التي تُحقن أو تُستخرج أو تُفك ضغطها لمزيد من التحليل. بالإضافة إلى ذلك، يُنشئ CAPE تلقائيًا تفريغًا للعملية لكل عملية، أو، في حالة DLL، صورة وحدة DLL في الذاكرة. هذا مفيد للعينات المُغلّفة بأدوات تغليف بسيطة، حيث غالبًا ما يكون تفريغ صورة الوحدة مفكوكًا بالكامل.
بالإضافة إلى آليات فك التغليف 'السلبية' الافتراضية لـ CAPE، من الممكن تمكين فك التغليف 'النشط' الذي يستخدم نقاط التوقف لاكتشاف الكتابة إلى مناطق ذاكرة مُخصصة حديثًا أو محمية، من أجل التقاط الحمولات المفكوكة في أقرب وقت ممكن قبل التنفيذ. يُفعّل هذا عبر مربع اختيار الإرسال عبر الويب أو بتحديد الخيار unpacker=2 ويُترك معطلاً افتراضيًا لأنه قد يؤثر على جودة التفجير.
يمكن برمجة CAPE عبر توقيع YARA لفك تغليف أدوات تغليف محددة. على سبيل المثال، أدوات تغليف من نوع UPX شائعة جدًا وعلى الرغم من أن CAPE يؤدي فيها إلى التقاط الحمولات المفكوكة سلبيًا، فإن الالتقاط الافتراضي يتم بعد أن تبدأ الحمولة المفكوكة بالتنفيذ. لذلك من خلال اكتشاف أدوات التغليف المشتقة من UPX ديناميكيًا عبر توقيع YARA مخصص ووضع نقطة توقف على تعليمة أداة التغليف النهائية، يصبح من الممكن التقاط الحمولة عند نقطة دخولها الأصلية (OEP) قبل أن تبدأ بالتنفيذ.


يتيح الخيار dump-on-api تفريغ وحدة عندما تستدعي دالة API محددة يمكن تحديدها في واجهة الويب (مثل dump-on-api=DnsQuery_A).