کشف چند آسیب‌پذیری با شدت بالا در نصب‌کننده Splashtop Streamer

کشف چند آسیب‌پذیری با شدت بالا در نصب‌کننده Splashtop Streamer

تاریخ ایجاد

SplashTop یکی از نرم‌افزارهای مدیریت و کنترل سیستم از راه دور است. نسخه Personal این نرم‌افزار را می‌توان به منظور دسترسی به سیستم‌های موجود در شبکه‌های محلی خانگی (Local) مورد استفاده قرار داد.
اخیرا چند آسیب‌پذیری با شدت‌های بالا در نصب‌کننده‌ی این نرم‌افزار کشف شده‌اند که همگی آن‌ها از استفاده‌ی این نصب‌کننده از پوشه‌ای موقت با دسترسی‌های ضعیف برای ذخیره و بارگذاری فایل‌ها ناشی می‌شوند و امکان ارتقاء سطح دسترسی مهاجم به سطح دسترسی SYSTEM را فراهم می‌کند.
با ارتقاء سطح دسترسی به SYSTEM، مهاجم می‌تواند به تمام فایل‌ها و تنظیمات سیستمی دسترسی پیدا کند. این دسترسی کامل، شامل دسترسی به اطلاعات حساس و قابلیت‌های مدیریت سیستم نیز می‌شود. همچنین می‌تواند کد دلخواه خود را با سطح دسترسی SYSTEM اجرا کند. این به معنای امکان نصب بدافزار، تغییرات مخرب در تنظیمات سیستم، و یا بهره‌برداری از سیستم برای اهداف دیگر است. به علاوه، قادر خواهد بود تغییراتی در رجیستری ویندوز ایجاد کند یا با اجرای کدهای دلخواه باعث آسیب زدن به سیستم‌عامل، داده‌ها، و عملکرد کلی سیستم شود.
رجیستری ویندوز (Windows Registry) یک پایگاه داده‌ی سلسله ‌مراتبی و متمرکز است که تنظیمات پیکربندی و اطلاعات حیاتی برای سیستم‌عامل ویندوز و نرم‌افزارهای نصب‌شده روی آن را ذخیره می‌کند. این پایگاه داده به عنوان یک هسته مرکزی برای مدیریت تنظیمات سیستم‌عامل، دستگاه‌های سخت‌افزاری، برنامه‌ها و کاربران عمل می‌کند.
هرگونه تغییر نادرست در رجیستری می‌تواند منجر به ناپایداری سیستم، خطاهای اجرایی، اجرای نامناسب نرم‌افزارها یا حتی ناتوانی در راه‌اندازی سیستم‌عامل شود. مهاجمان می‌توانند از رجیستری برای نصب بدافزار، تغییر تنظیمات امنیتی، و ایجاد دسترسی‌های غیرمجاز استفاده کنند. برای مثال، تنظیمات Startup در رجیستری می‌توانند برای اجرای برنامه‌های مخرب در هر بار راه‌اندازی سیستم استفاده شوند. در ادامه، توضیحات 4 مورد آسیب‌پذیری ذکر شده آورده شده است.
 

  •  CVE-2024-42050:

این آسیب‌پذیری با شدت بالا و امتیاز CVSS 7.0 ارزیابی شده‌ است. همانطور که گفته شد، در فرآیند نصب نرم‌افزار، نصب‌کننده MSI از پوشه‌ای موقت با دسترسی‌های ضعیف برای ذخیره و بارگذاری فایل‌ها استفاده می‌کند. این پوشه‌ی موقت معمولاً در دایرکتوری %TEMP% قرار دارد و کاربران می‌توانند به آن دسترسی پیدا کنند و فایل‌هایی را در این پوشه قرار داده یا تغییر دهند.
در طی نصب، فایل CredProvider_Inst.reg از این پوشه‌ی موقت بارگذاری می‌شود. این فایل REG می‌تواند مقادیر و کلیدهای جدیدی را به رجیستری ویندوز اضافه کند. اگر فایل MSI نصب‌کننده هنوز در مکان اصلی خود موجود باشد یا مهاجم بتواند فایل را دوباره به آن مکان بازگرداند، می‌تواند فرآیند نصب را دوباره اجرا کند. در این صورت، موفق خواهد شد با تنظیم قفل‌های موقت (oplocks) روی فایل CredProvider_Inst.reg، آن را با محتوای دلخواه تغییر دهد.
Oplock (Opportunistic Lock) مکانیزمی برای بهبود عملکرد سیستم‌های فایل در سیستم‌عامل‌های ویندوز است. این مکانیزم به برنامه‌ها اجازه می‌دهد تا با قرار دادن قفل‌هایی موقت روی فایل‌ها از تغییرات همزمان توسط سایر برنامه‌ها جلوگیری کرده و در نتیجه عملکرد بهتری داشته باشند. مهاجمان می‌توانند با بهره‌برداری از ویژگی Oplock فایل‌های حساس را در مسیرهای موقتی جایگزین کنند. این کار امکان اینکه آن‌ها کد دلخواه خود را در سطح سیستمی اجرا کنند را فراهم می‌کند. علی الخصوص در فرآیندهای نصب نرم‌افزار که از پوشه‌های موقت استفاده می‌کنند، اگر مهاجم بتواند با تنظیم Oplock روی فایل‌های مورد نظر، آن‌ها را تغییر دهد، می‌تواند به ارتقاء سطح دسترسی یا اجرای کد دلخواه در سطح بالاتری برسد.
نصب‌کننده MSI فایل CredProvider_Inst.reg تغییر یافته را بارگذاری کرده و آن را به رجیستری اضافه می‌کند. اگر مهاجم بتواند محتوای این فایل REG را به‌گونه‌ای تغییر دهد که به طور غیرمستقیم به اجرای کد دلخواه منجر شود (مثلاً با تغییر مسیر اجرای برنامه‌های سیستمی)، می‌تواند سطح دسترسی SYSTEM را برای خود فراهم سازد.
 

  •  CVE-2024-42051:

این آسیب‌پذیری با شدت بالا و امتیاز CVSS 7.8 ارزیابی شده ‌است. در این مورد، در فرآیند نصب، فایل InstRegExp.reg از پوشه موقتی که در دایرکتوری %TEMP% قرار دارد بارگذاری شده و به رجیستری ویندوز اضافه می‌شود. مهاجم می‌تواند فایل SetupUtil.exe را که جزء اصلی فرآیند نصب است از پوشه موقت حذف کرده و به ‌جای آن یک فایل .reg با همان نام قرار دهد. در این حالت، نصب‌کننده با نگاه به پوشه موقت، فایل .reg تغییر یافته را بارگذاری می‌کند. با این کار، مهاجم خواهد توانست محتوای فایل InstRegExp.reg را به‌گونه‌ای تغییر دهد که مقادیر یا کلیدهای دلخواه را به رجیستری اضافه کند تا به اجرای کد دلخواهش در سیستم منجر شود یا به تغییر مسیر اجرای برنامه‌های سیستم کمک کند.
 

  •  CVE-2024-42052:

در این آسیب‌پذیری نیز که با شدت بالا و امتیاز CVSS 7.8 ارزیابی شده ‌است، در طی فرآیند نصبsplashtop ، اگر فایل اجرایی wevtutil.exe در مسیر صحیح وجود نداشته باشد، نصب‌کننده تلاش می‌کند این فایل را از پوشه موقت %TEMP% بارگذاری کند. مهاجم می‌تواند از این موضوع بهره‌برداری کرده و یک فایل اجرایی مخرب با نام wevtutil.exe را در پوشه موقت قرار دهد. نصب‌کننده MSI این فایل مخرب را با دسترسی سیستمی (SYSTEM) اجرا می‌کند و امکان کنترل سیستم و اجرای کدهای دلخواه را برای مهاجم فراهم می‌آورد.
 

  • CVE-2024-42053:

در این آسیب‌پذیری که با شدت بالا و امتیاز CVSS 7.8 ارزیابی شده ‌است، مهاجم می‌تواند در طی فرآیند نصب، از طریق نصب‌کننده یک فایل DLL به نام version.dll را در صورتی که در پوشه‌ی موقت موجود باشد، بارگذاری کند. وقتی بارگذاری با موفقیت انجام شود، کد مخرب موجود در فایل DLL با سطح دسترسی SYSTEM اجرا می‌شود و امنیت سیستم را به خطر می‌اندازد.

محصولات آسیب‌پذیر
در شناسه CVE-2024-42050: نسخه‌های قبل از 3.7.0.0 آسیب‌پذیر هستند.
 در شناسه CVE-2024-42051: نسخه‌های قبل از 3.6.2.0 آسیب‌پذیر هستند.
در شناسه CVE-2024-42052: نسخه‌های قبل از 3.5.8.0 آسیب‌پذیر هستند.
در شناسه CVE-2024-42053: نسخه‌های قبل از 3.6.0.0آسیب‌پذیر هستند.

توصیه‌های امنیتی
برای کاهش خطر این آسیب‌پذیری‌ها، در ابتدا توصیه می‌شود نرم‌افزار به آخرین نسخه‌ی موجود به‌روزرسانی شود. همچنین محدودسازی دسترسی کاربران به پوشه‌های موقتی مانند %TEMP% جهت جلوگیری از قابلیت ایجاد تغییر در آن‌ها توصیه می‌گردد. ضمن ارائه‌ی حداقل سطح دسترسی به هر نرم‌افزار، باید در فرایند نصب دقت شود که فایل مشکوکی در پوشه‌های نصب موجود نباشد. به این منظور می‌توان از نرم‌افزارهای امنیتی و ابزارهای بررسی و اسکن خودکار بدافزار نیز‌ استفاده کرد.

منابع خبر:


[1] https://nvd.nist.gov/vuln/detail/CVE-2024-42050
[2] https://github.com/SpacePlant/Vulns/blob/main/Advisories/2024/4.md
[3] https://github.com/SpacePlant/Vulns/blob/main/Advisories/2024/3.md
[4] https://github.com/SpacePlant/Vulns/blob/main/Advisories/2024/1.md
[5] https://github.com/SpacePlant/Vulns/blob/main/Advisories/2024/2.md