وجود چندین آسیب پذیری در محصولات VNC

vnc

ابزارهای VNC[1]  که عموما در محیط های صنعتی اجرا می شود دارای 37 آسیب پذیری مختلف از نوع memory-corruption می باشند که برخی از آن ها می تواند منجر به اجرای کد از راه دور (RCE) شوند.

به گفته محققان Kaspersky این آسیب پذیری ها به طور بالقوه بر 600000 سرور موجود و قابل دسترس از طریق اینترنت تاثیر می گذارد.

تقریبا 32 درصد از رایانه های شبکه های صنعتی نوعی از ابزارهای دسترسی از بیرون از جمله VNC را دارا می باشند. تحقیقات انجام شده بر 4 سیستم مبتنی بر VNC که به صورت فعال و به منظور فراهم سازی امکان کنترل از راه دور سیستم ها در تاسیسات صنعتی استفاده می شوند انجام شده است که عبارتند از:

  1. LibVNC
  2. UltraVNC
  3. TurboVNC
  4. TightVNC1.X

Kaspersky نه تنها آسیب پذیری هایی را در سمت کلاینت، بلکه در سمت سرور سیستم نیز یافته است. با این حال بسیاری از آسیب پذیری های سمت سرور تنها پس از احراز هویت قابل بهره برداری هستند. این شرکت اعلام کرده است که  در میان 37 آسیب پذیری ، دو نوع حمله وجود دارد:

  1. یک مهاجم که با سرور VNC در یک شبکه قرار دارد به آن حمله می کند تا بتواند با استفاده از امتیازات سرور ، قابلیت اجرای کد روی سرور را داشته باشد.
  2. یک کاربر با استفاده از یک سرویس دهنده VNC به “سرور” مهاجم متصل می شود و مهاجم از آسیب پذیری های موجود در کلاینت برای حمله به کاربر و اجرای کد در دستگاه کاربر استفاده می کند.

به عنوان مثال یکی از موارد حساسی که به تازگی کشف شده است و دارای مقیاس رتبه بندی CVSS=9.8/10 می باشد عبارت است از آسیب پذیری سرریز بافر پشته پایگاه داده[2]  در کد سرور TurboVNC که می تواند منجر به RCE شود. به عبارتی هرچند به منظور بهره برداری از این ضعف امنیتی صدور مجوز از سمت سرور لازم و ضروری است اما مشکل مربوط به  CVE-2019-15683 به دلیل عدم محافظت فریم پشته وجود دارد .

همچنین یک اسیب پذیری بحرانی سرریزعددی [3] با شناسه CVE-2018-15361 (دارای مقیاس رتبه بندی CVSS=9.9/10 )در کد سمت کلاینت UltraVNC وجود دارد.

در همین حال ، آسیب پذیری مهم CVE-2019-8262  با CVSS=9.8/10 در کنترل داده های رمزگذاری شده با استفاده از عملکرد رمزگذاری UltraVNC وجود دارد که می تواند باعث افشای اطلاعات شود .

Kaspersky در کد TightVNC نسخه 1.3.10 ، سرریز بافر جهانی بحرانی CVE-2019-8287  در عملکرد ماکرو HandleCoRREBBP وجود دارد ، همچنین با درجه CVSS از 9.8 از 10. این نیز به طور بالقوه می تواند نتیجه RCE باشد.

محققان همچنین اخیراً یک نقص با شدت بالا در LibVNC  مشاهده کرده اند (CVE-2019-15681) که دارای امتیاز CVSS 7.7 از 10 است. این نقص شامل یک نشت حافظه است که از طریق اتصال به شبکه در کد سرور VNC قابل بهره برداری است ، و به مهاجم امکان خوانش حافظه پشته را می دهد و در نتیجه مهاجم می تواند برای افشای اطلاعات از آنان سوء استفاده نماید. براین اساس همراه با آسیب پذیری دیگری ، می توان از آن برای نشت حافظه پشته و دور زدن ASLR استفاده کرد.

Kaspersky با توسعه دهندگان آسیب دیده تماس گرفته و وصله هایی نیز برای محصولات پشتیبانی شده صادر شده است. به عنوان مثال TightVNC توسعه محصول TightVNC 1.X را متوقف کرده است و پایان عمر آن را بدون وصله امنیتی اعلام کرده است.

آسیب پذیری های زیر در این گزارش مورد نظر می باشد:

  1. LibVNC
  1. TightVNC
  1. TurboVNC
  1. UltraVNC

پیشنهادات:

  • به روز رسانی سرویس دهنده VNC استفاده شده توسط کاربر از این حمله جلوگیری میکند.
  • اجرای فازی و آزمایش پروژه بر روی کلیه معماری هایی که پروژه در دسترس است. برخی از آسیب پذیری ها به دلیل ویژگی های خاص آن ، ممکن است فقط در یکی از سیستم عامل ها ظاهر شوند.
  • احراز هویت رمز عبور معمولاً برای سوءاستفاده از آسیب پذیری های سمت سرور لازم است و سرور ممکن است مانند آنچه درخصوص UltraVNC وجود دارد، به دلایل امنیتی به کاربران اجازه ندهد که یک روش احراز هویت بدون رمز عبور را پیکربندی کنند.
  • به عنوان یک راه پیشگیری از این دست حملات ، کلاینت ها نباید به سرورهای VNC ناشناخته متصل شود و سرپرستان باید با استفاده از یک رمز عبور قوی و منحصر به فرد ، احراز هویت را بر روی سرور پیکربندی کنند.

[1] open-source Virtual Network Computing

[2] database stack buffer overflow

[3] integer-overflow vulnerability

منبع : https://ics-cert.kaspersky.com/reports/2019/11/22/vnc-vulnerability-research/

اخبار

KasperskyLibVNCmemory-corruptionRCETightVNC1.XTurboVNCUltraVNCVNC

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

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