مایکروسافت نسبت به یک آسیبپذیری بحرانی در سرویس Remote Desktop Gateway هشدار داد. این ضعف امنیتی میتواند به مهاجمان اجازه دهد کد مخرب خود را از راه دور روی سیستمهای آسیبپذیر اجرا کنند. این آسیبپذیری با شناسه CVE-2025-21297 در ژانویه ۲۰۲۵ توسط مایکروسافت منتشر شد و از آن زمان به طور فعال در سطح گسترده مورد سوءاستفاده قرار گرفته است.
این آسیبپذیری توسط VictorV (Tang Tianwen) از آزمایشگاه Kunlun کشف و گزارش شده است و ناشی از یک باگ از نوع use-after-free(UAF) است که هنگام راهاندازی سرویس Remote Desktop Gateway و در اثر برقراری همزمان چند اتصال سوکت به وجود میآید.
به طور مشخص، این آسیبپذیری در کتابخانه aaedge.dll و در تابع CTsgMsgServer::GetCTsgMsgServerInstance وجود دارد. در این تابع، یک اشارهگر global pointer به نام m_pMsgSvrInstance بدون Thread Synchronization مناسب، مقداردهی اولیه میشود.
این آسیبپذیری زمانی رخ میدهد که چند Thread به طور همزمان بتوانند یک اشارهگر global یکسان را بازنویسی کنند. این موضوع باعث خراب شدن reference counts شده و در نهایت منجر به ارجاع به یک dangling pointer میشود که یک نمونه کلاسیک از UAF است.
همچنین، این آسیبپذیری ناشی از یک مشکل مرتبط با زمانبندی است که در آن تخصیص حافظه و اختصاص اشارهگر به درستی همگام سازی نمیشوند. چنین وضعیتی به مهاجمان این امکان را میدهد که با استفاده از این ناهماهنگی، کدهای مخرب خود را روی سیستم قربانی اجرا کنند. شدت این مشکل به حدی است که مایکروسافت آن را با نمره ۸.۱ در استاندارد CVSS طبقه بندی کرده است، که نشان دهنده خطر بالای آن برای امنیت سیستمها است. بنابراین، توجه ویژه به رفع این نقص و به روزرسانی سریع سیستمها امری بسیار ضروری است.
آسیبپذیری UAF در Windows Remote Desktop Gateway
طبق گفته محققان، بهرهبرداری موفقیتآمیز از این آسیبپذیری مستلزم آن است که مهاجم بتواند شرایط زیر را ایجاد نماید:
- به سیستمی که نقش RD Gateway را ایفا میکند، متصل شود.
- اتصالات همزمان به RD Gateway (از طریق چندین سوکت) ایجاد کند.
- از مشکل مرتبط با زمانبندی که در آن تخصیص حافظه و انتساب اشارهگر به صورت ناهماهنگ اتفاق میافتد، سوءاستفاده کند.
- باعث شود یک اتصال قبل از اینکه اتصال دیگر کار با اشارهگر(Pointer) را تمام کند، آن را overwrite کند.
این اتفاق شامل یک روند نه مرحلهای است که در آن heap collisions بین Threads اتفاق میافتد و در نهایت منجر به استفاده از یک بلوک حافظه آزاد شده میشود، که در نتیجه مهاجمان میتوانند کد دلخواه خود را اجرا کنند.
چندین نسخه از ویندوز سرور که برای دسترسی امن از راه دور از RD Gateway بهره میبرند، در معرض این آسیبپذیری قرار دارند، از جمله:
- Windows Server 2016 (Core and Standard installations)
- Windows Server 2019 (Core and Standard installations)
- Windows Server 2022 (Core and Standard installations)
- Windows Server 2025 (Core and Standard installations)
سازمانهایی که از RD Gateway به عنوان نقطه دسترسی اصلی برای کارمندان یا شرکایی که به صورت دورکاری با آنها همکاری میکنند استفاده میکنند، در معرض خطرات بیشتری قرار دارند.
مایکروسافت در به روزرسانی امنیتی Patch Tuesday ماه مه ۲۰۲۵ این آسیبپذیری را با اضافه کردن mutex-based synchronization برطرف کرد، به طوری که تنها یک Thread در هر زمان قادر است global instance را مقداردهی اولیه کند. در این راستا به روزرسانیهای امنیتی زیر در دسترس هستند:
- Windows Server 2016: Update KB5050011
- Windows Server 2019: Update KB5050008 (Build 10.0.17763.6775)
- Windows Server 2022: Update KB5049983 (Build 10.0.20348.3091)
- Windows Server 2025: Update KB5050009 (Build 10.0.26100.2894)
کارشناسان امنیتی با تأکید فراوان هشدار دادهاند که سازمانها باید هرچه سریعتر به روزرسانیهای امنیتی مربوط به آسیبپذیری Remote Desktop Gateway را نصب کنند. این نقص امنیتی، تهدیدی جدی برای محیطهای سازمانی محسوب میشود که برای دسترسی امن از راه دور به این سرویس وابسته هستند و در صورت عدم رفع به موقع میتواند زمینه سوءاستفاده مهاجمان را فراهم کند.
تا زمانی که به روزرسانیها نصب شوند، به سازمانها توصیه میشود لاگهای RD Gateway را برای شناسایی هرگونه فعالیت غیرمعمول زیر نظر داشته باشند و همچنین تدابیر حفاظتی در سطح شبکه به کار بگیرند تا اتصالات ورودی فقط از منابع معتبر مجاز باشند.
منبع: cybersecuritynews.com