
تنفيذ PoC للإخفاء الديناميكي لمكدسات الاستدعاء باستخدام المؤقتات.
يستعرض هذا المستودع تقنية إثبات مفهوم (PoC) للانتحال الديناميكي لمكدسات الاستدعاءات باستخدام المؤقتات. قبل أن يدخل الـ implant في وضع السكون، يمكننا جدولة مؤقتات لاستبدال مكدس الاستدعاءات الخاص به بمكدس مزيف، ثم استعادته إلى الأصل قبل استئناف التنفيذ. وبالتالي، وبنفس الطريقة التي يمكننا بها إخفاء الذاكرة التابعة لـ implant أثناء السكون، يمكننا أيضًا إخفاء مكدس الاستدعاءات الخاص بالخيط الرئيسي.
للحصول على شرح تقني كامل، راجع منشور المدونة المصاحب من هنا: https://www.cobaltstrike.com/blog/behind-the-mask-spoofing-call-stacks-dynamically-with-timers/.
افتراضيًا، سيحاكي إثبات المفهوم مكدس استدعاءات ثابتًا مأخوذًا من spoolsv.exe:

إذا تم توفير علامة --dynamic، فسيقوم CallStackMasker بتعداد جميع الخيوط القابلة للوصول، والعثور على خيط في الحالة المطلوبة (WaitForSingleObjectEx)، ومحاكاة مكدس الاستدعاءات وعنوان البداية الخاص به. وهذا موضح أدناه:

ملاحظة: ككلمة تحذير، تم اختبار إثبات المفهوم هذا على إصدار Windows التالي:
22h2 (19045.2486)
لم يتم اختباره على أي إصدارات أخرى وقد يتعطل على إصدارات Windows مختلفة.