آسیب پذیری جدی در دات نت فریمورک 4 - CVE-2017-8759

آسیب پذیری جدی در دات نت فریمورک 4 – CVE-2017-8759

Uncovers CVE-2017-8759: Zero-Day مورد استفاده در Wild برای توزیع FINSPY فایر آی اخیرا یک داکیومنت مخرب مایکروسافت آفیس RTF را شناسایی کرد که با کمک آسیب پذیری CVE-2017-8759،توانست  SOAP WSDL…

Uncovers CVE-2017-8759: Zero-Day مورد استفاده در Wild برای توزیع FINSPY

فایر آی اخیرا یک داکیومنت مخرب مایکروسافت آفیس RTF را شناسایی کرد که با کمک آسیب پذیری CVE-2017-8759،توانست  SOAP WSDL parser code injection  انجام دهد. این آسیب پذیری اجازه می دهد که شخص نفوذگر درهنگام تجزیه محتوای SOAP WSD بتواند کد دلخواه  را تزریق کند.فایرآی  یک داکیومنت مایکروسافت ورد را تحلیل کرد که در آن نفوذگران از تزریق کد دلخواه برای دانلود و اجرای یک اسکریپت ویژوال بیسیک که شامل دستورات PowerShell بود استفاده کردند.

فایر آی  جزئیات آسیب پذیری را با مایکروسافت به اشتراک گذاشت و هماهنگی اعلان عمومی ،همزمان با انتشار پچ برای رسیدگی به آسیب پذیری و راهنمایی های امنیتی، را انجام داد.

ایمیل فایرآی ، نقطه پایان و محصولات شبکه ،اسناد مخرب را شناسایی کردند.

آسیب پذیری مورد استفاده برای هدف گیری سخنرانان روسی

سند مخرب، )”Проект.doc” (MD5: fe5c4d6bb78e170abf5cf3741868ea4c، ممکن است برای هدف یک سخنران روسی مورد استفاده قرار گیرد. پس از بهره برداری موفق CVE-2017-8759، سند چند مولفه را دریافت می کند (از جزئیات پیروی می کند)، و در نهایت یک FINSPY payload  (MD5: a7b990d5f57b244dd17e9a937a41e7f5) را راه اندازی می کند.

بدافزار FINSPY، همچنین به عنوان FinFisher یا WingBird نیز گزارش شده است، به عنوان بخشی از قابلیت “lawful intercept”، برای خرید در دسترس است. بر اساس این استفاده  و استفاده قبلی از FINSPY، ما با اعتماد به نفس متوسطی ارزیابی می کنیم که این سند مخرب توسط یک دولت ملی برای هدف قراردادن نهادهای روسی برای اهداف جاسوسی سایبری مورد استفاده قرار می گیرد. تشخیص های دیگری توسط سیستم اطلاعات دینامیکی خطرناک FireEye نشان می دهد که فعالیت هایی مرتبط با این بدافزار، اگر چه به طور بالقوه برای یک مشتری متفاوت، ممکن است در اوایل ژوئیه 2017 رخ داده باشد.

CVE-2017-8759 WSDL Parser Code Injection

تزریق کد در ماژول تجزیه کننده WSDL دارای آسیب پذیری است. این آسیب در روش PrintClientProxy  (http://referencesource.microsoft.com/ – System.Runtime.Remoting/metadata/wsdlparser.cs,6111) موجود است.

IsValidUrl اگر اطلاعات ارائه شده حاوی دنباله CRLF باشند اعتبار سنجی صحیحی را انجام نمی دهد واین به مهاجم اجازه می دهد تا کد دلخواه را تزریق و اجرا کند.بخشی از کد آسیب پذیر در شکل 1 نشان داده شده است.

 

CVE 2017 8759 WSDL Parser Code Injection

هنگامی که تعاریف چندین آدرس در پاسخ SOAP ارائه می­شود، کد پس از اولین آدرس، عبارت “//base.ConfigureProxy(this.GetType(),”  را وارد می کند ،وآدرس های باقیمانده را حذف می کند،اگر یک توالی CRLF در آدرس های اضافی باشد، کد زیر CRLF را نمی شود در نظر گرفت. شکل 2 نشان می دهد که به علت عدم اعتبار CRLF، یک فراخوانی متد System.Diagnostics.Process.Start تزریق می­شود. کد تولید شده توسط csc.exe از .NET framework کامپایل خواهد شد است. و به عنوان  یک فایل اجرایی با پسوند DLL.به وسیله Office بارگذاری می­شود.

System.Diagnostics.Process.Start

The In-the-Wild Attacks

از حملاتی که فایرآی در wild مشاهده کرد ، یک داکیومنت مانند آنچه قبلا در گزارشهای CVE-2017-0199 منتشر کرده بود تهیه کرد ، The malicious sampled contained an embedded SOAP monikers to facilitate exploitation

حملاتی که FireEye در wild مشاهده کرد، یک سند Rich Text Format) RTF) را مانند آنچه که قبلا در گزارشهای CVE-2017-0199 منتشر کرد، مورد استفاده قرار داد. نمونه های مخرب حاوی یک پیشنهاد تعبیه شده SOAP برای تسهیل بهره برداری است

SOAP

payload مقدار مخرب SOAP WSDL را از سرور کنترل شده مهاجم بازیابی می کند. تجزیه کننده WSDL که در System.Runtime.Remoting.ni.dll با .NET framework ایجاد شده است، محتوای متن را تجزیه و تولید می کند و کد .cs source را در دایرکتوری فعال ایجاد میکند. سپس csc.exe از.NET framework کد منبع تولید شده را در یک کتابخانه ، به نام http [url path] .dll. کامپایل می کند. سپس مایکروسافت آفیس کتابخانه را بارگذاری می کند و مرحله بهره برداری را تکمیل می کند. شکل زیر یک کتابخانه نمونه را نشان می دهد که در نتیجه اکسپلوید کردن بارگذاری شده است.

WSDL

پس از اکسپلوید موفقیت آمیز، کد تزریق یک فرایند جدید ایجاد می کند و mshta.exe را برای بازیابی یک اسکریپت HTA با نام word.db از همان سرور به کار می گیرد. اسکریپت HTA کد منبع را حذف می کند، DLL و فایل های PDB را از دیسک کامپایل می کند و سپس بدافزار FINSPY با نام “left.jpg” را دانلود و اجرا می کند، که با وجود extension jpg و image / jpeg نوع محتوا در واقع یک فایل اجرایی است. شکل 5 جزئیات PCAP این انتقال بدافزار را نشان می دهد.

FINSPY

بدافزار در %appdata%\Microsoft\Windows\OfficeUpdte-KB[ 6 random numbers ].exe.قرار داده خواهد شد. شکل 6 روند ایجاد زنجیره ای را در فرایند مانیتور نشان می دهد.

appdata

 

تروجان

(“left.jpg” (md5: a7b990d5f57b244dd17e9a937a41e7f5 یک نوع از FINSPY است. این نوع از کدهای سخت مبهم شده سوءاستفاده می­کند، به این صورت که یک ماشین مجازی توکار (built-in) را در کنار دیگر تکنیک های ضد تجزیه و تحلیل به کار می گیرد تا ردگیری آن پیچیده تر شود. به احتمال زیاد یکی دیگر از تکنیک های منحصر به فرد ضد تجزیه و تحلیل آن،این است که مسیر دقیق خود را تجزیه و تحلیل کند و به جستجوی نماینده خود به صورت MD5 hash مشغول شود. بسیاری از منابع مانند ابزارهای تجزیه و تحلیل و sandboxes، فایل ها / نمونه ها را به hash MD5 خودشان تغییر نام می­دهند تا از منحصر به فرد بودن نام فایل ها اطمینان حاصل شود. این نوع FINSPY با mutex “WininetStartupMutex0” اجرا می شود.

نتیجه

CVE-2017-8759 دومین آسیب پذیریzero day است که برای توزیع FINSPY که توسط فایرآی در سال 2017 توزیع شده است،. این تقابل منابع قابل توجهی برای شرکت های “lawful intercept” و مشتریان آنها را نشان می دهد. علاوه بر این، FINSPY به چند مشتری فروخته شده است، که نشان می دهد آسیب پذیری دراهداف دیگر نیز استفاده شده است.

ممکن است CVE-2017-8759 توسط اشخاص دیگری مورد استفاده قرار گیرد. در حالی که شواهدی از این قبیل وجود نداشت، zero day برای استفاده از FINSPY در ماه آوریل 2017 توزیع شد، CVE-2017-0199 به طور همزمان توسط یک شخص با انگیزه مالی مورد استفاده قرار گرفت. اگر اشخاص پشت FINSPY این آسیب پذیری را از همان منبع مورد استفاده قبلا به دست آوردند، ممکن است که منبع آن را به اشخاص دیگری بفروشند.

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.
برای ادامه، شما باید با قوانین موافقت کنید

keyboard_arrow_up