#Office #Macro #Evasion
در ارائه امسال Blackhat اروپا، یک PoC مطرح شد در خصوص طراحی Macro برای اجرای کد مخرب بصورت نا محسوس.

نکته ای که محقق مبتنی بر اون روش منطق طراحی Macro خودش قراره داده، این است که بجای استفاده از یک Pattern کد معمول، سعی کرده ساختار Initialize کد برای رسیدن به نهایتا اجرای کد Powershell در تابع Shell، بصورت غیر معمول انجام بده.

یعنی معمولا برای دستیابی به اجرای کد بر روی خط فرمان، میتوان مستقیما از Wscript.Shell یک Object ساخته و مقدار مربوطه رو وارد کرد، این روش قطعا تشخیص داده خواهد شد، چرا که مقادیر Macro برای AMSI سیستم عامل ویندوز ارسال میشه و اونجا بواسطه تشخیص مبتنی بر امضا دیده خواهد شد.

محقق در کد مطرح شده خودش اومده از یک COM به نام winmgmts استفاده کرده برای زدن یک Query به Win32_PhysicalMemory که مقدار واحد RAM رو دریافت خواهد کرد، در ادامه این واحد رو جمع به خود میکنه تا در شرط در ادامه طراحی شده، مقدار dRam بیش از 20000000000 بشه تا شرط برقرار بشه.

با برقراری شرط به تابع Shell تماسی زده میشه و کد Powershell اجرا میشه مبنی بر دانلود و اجرای یک فایل EXE.

@Unk9vvN