شرکت دیپ اینستینکت (Deep Instinct) در گزارشی به بررسی نحوه بهرهگیری مهاجمان از Visual Studio Tools for Office – به اختصار VSTO – برای انتشار بدافزارها پرداخته است.
VSTO، یکی از ابزارهای توسعه نرمافزار در مجموعه Visual Studio IDE است. VSTO امکان ساخت افزونه (Add-in) برای برنامههای مختلف Office را در بستر NET. فراهم میکند. با VSTO میتوان فایلهایی را نیز ایجاد کرد تا در زمان باز شدن در برنامههای Office افزونه را نصب و اجرا کنند.
شرکت مایکروسافت (Microsoft) از سال میلادی گذشته اقدام به اعمال محدودیتهای سختگیرانه برای اجرای قابلیت ماکرو (Macros) در مجموعه نرمافزاری Office کرده است. هدف از این کار مقابله با آن دسته بدافزارهایی است که طریق قابلیت مذکور به دستگاه کاربران راه پیدا میکنند.
در نتیجه اعمال این محدودیتهای مایکروسافت، اکنون، مدتی است که مهاجمان در حال روی آوردن به روشهای جایگزین هستند.
بکارگیری VSTO میتواند جایگزینی کارآمد برای مهاجمانی باشد که همچنان در پی انتشار بدافزارهای خود توسط فایلهای Office هستند.
افزونههای مبتنی بر VSTO میتوانند هم در یک فایل Office – نظیر docx – جاسازی شده و به صورت محلی (Local) اجرا شوند و هم میتوانند بهصورت از راه دور فراخوانی و در ادامه اجرا شوند.
اگر چه بسیاری از مهاجمان، اجرای Local را به جهت احتمال بیشتر در عبور از سد کنترلهای امنیتی ترجیح میدهند اما دیپ اینستینکت کارزارهایی را شناسایی کرده که در آن از روش Remote برای اجرای افزونههای مبتنی بر VSTO بهره گرفته شده است. نشانه این فایلها، وجود پارامتر custom.xml است که برنامه Office را از مسیر افزونه آگاه میکند.
Local VSTO
در این روش، معمولاً فایل Office همراه با متعلقات در قالب یک فایل ISO به قربانی ایمیل میشود. مهاجمان، به منظور عدم شناسایی فایلهای مضاعف توسط قربانی، ویژگی “Hidden” را بر روی آنها اعمال میکنند.
همانطور که در روش انتشار از طریق ماکرو شاهد بودیم تبهکاران سایبری با بهرهگیری از تکنیکهای مهندسی اجتماعی، محتوای فایل را به نحوی طراحی میکنند که قربانی متقاعد به فعالسازی قابلیت مورد نظر – در اینجا اجرای افزونه – شود.
تصویر زیر، محتوای فایل custom.xml افزوده شده به فایل docx را نمایش میدهد که در آن به فایل افزونه اشاره میشود.
برای اجرای افزونه مذکور کاربر باید با اجرای آن موافقت کند (تصویر زیر).
در جریان یکی از این کارزارها، افزونه مخرب اقدام به اجرای یک اسکریپت PowerShell رمزگذاری و فشردهشده بر روی سیستم میکرد.
Remote VSTO
روش Remote نیز مشابه با روش Local است؛ با این تفاوت که در فایل custom.xml آن به افزونهای اشاره میشود که بر روی یک سرور از راه دور قرار دارد.
علاوه بر بهرهگیری از راهکارهای امنیت نقاط پایانی، آموزش کاربران نقشی مؤثر در مقابله با این تهدیدات دارد.
مشروح گزارش شرکت دیپ اینستینکت، همراه با نشانههای آلودگی (IoC) تهدیدات بررسیشده در آن در لینک زیر قابل دریافت و مطالعه است:
https://www.deepinstinct.com/blog/no-macro-no-worries-vsto-being-weaponized-by-threat-actors