آسیب پذیری اجرای کد از راه دور در پروتکل Credential Security Support Provider (CredSSP) وجود دارد. مهاجمی که با موفقیت از این آسیب پذیری سو استفاده کرده می تواند اطلاعات کاربری ریموت دسکتاپ را رد کند و از آنها برای اجرای کد در سیستم هدف استفاده کند.
CredSSP یک ارائه دهنده احراز هویت است که درخواست های تأیید اعتبار برای برنامه های دیگر را پردازش می کند. هر برنامه ای که برای احراز هویت به CredSSP بستگی دارد ممکن است در برابر این نوع حمله آسیب پذیر باشد.
به عنوان نمونه ای از اینکه چگونه یک مهاجم می تواند از این آسیب پذیری در برابر پروتکل دسک تاپ از راه دور سوء استفاده کند، مهاجم باید یک برنامه خاص ساخته شده را اجرا کند و یک حمله man-in-the-middle را در برابر نشست RDP انجام دهد. سپس یک مهاجم می تواند برنامه ها را نصب، مشاهده ، تغییر یا داده ها را حذف کند یا حسابهای جدید با حقوق کامل کاربر ایجاد کند.
به روزرسانی امنیتی با تصحیح چگونگی اعتبارسنجی پروتکل Credential Security Support Provider (CredSSP) در طی مراحل احراز هویت ، این آسیب پذیری را برطرف می کند.
man in the middle attack
به روزرسانی منتشر شده توسط مایکروسافت (KB 4093492) در تاریخ 8 مه 2018 برای سیستم عامل ویندوز 10 برای تغییر تنظیمات پیش فرض CredSSP از Vulnerable به Mitigated در نظر گرفته شد.
لیست کاملی از به روزرسانی ها و وصله های مربوط به همه سیستم عامل ها را می توانید از اینجا دریافت کنید.
با این حال ، وصله ارائه شده این مسئله باعث شد که ارتباط کلاینت های وصله شده با سرورهای وصله نشده از طریق پروتکل های RDP مسدود شود.
گزارش شده است که این امر باعث ایجاد خطایی توسط Windows RDP می شود به شرح زیر:
[Window Title]
Remote Desktop Connection
[Content]
An authentication error has occurred.
The function requested is not supported
Remote computer: XXX.XXX.XXX.XXX
This could be due to CredSSP encryption oracle remediation.
For more information, see https://go.microsoft.com/fwlink/?linkid=866660
اول اینکه سیستمی که به آن ریموت می زنید را آپدیت نمایید، در صورت آپدیت شدن این خطا رفع خواهد شد ولی اگر به هر حالت ممکن قادر به آپدیت کردن سیستم نبودید از راه کارهای بعدی استفاده نمایید.
در سیستم کلاینت Run (Win+R) رو باز کنید و از طریق دستور gpedit.msc وارد Local Group Policy میشویم.
computer configuration > administrative Template > system > Credential Deligation
در local group policy مسیر زیر را دنبال کنید:
computer configuration > administrative Template > system > Credential Deligation
فایل Encryption Oracle Remediation را ویرایش کرده و مطابق شکل زیر انجام دهید.
در انتها دستور gpupdate /force را در محیط cmd اجرا کنید تا group policy آپدیت شود:
یک فایل رجیستری به نام rdp_insecure_on.reg با محتویات زیر ایجاد کنید و بر روی سیستم مورد نظر اجرا و سپس اقدام به ریستارت مجدد کنید.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters] “AllowEncryptionOracle”=dword:00000002
برداشتن تیک allow connections only from computers running remote desktop with network level authentication
توجه: بهترین روش و پیشنهاد مایکروسافت، نصب آخرین آپدیت ها بر روی سرور می باشد.
پایان مقاله.