امیرحسین تنگسیری نژاد
مهندس و مدرس شبکه و امنیت سایبری و مدیر کل جزیره هک و امنیت اطلاعات توسینسو

بررسی آسیب پذیری RCE در SMB

در یکم ژوئن امسال(2020) آسیب پذیری خطرناکی با دسترسی اجرای کد از راه دور از سمت یک تیم امنیتی با نام Malware Hunter Team از پروتکل SMBv3 کشف شد. این آسیب پذیری با CVSS(استاندارد طبقه بندی آسیب پذیری) برابر High-Level و CVE-2020-0796 ثبت گردید که به افراد مهاجم این امکان را می‌دهد بتوانند به راحتی به سیستم های که SMBv3 بر روی آن‌ها فعال است نفوذ کند و دسترسی اجرای کد از راه دور(RCE) به فرد مهاجم دهد. این آسیب پذیری با نام های مختلفی شناخته می‌شود از جمله CoronaBlue، SMBGhost و SMBBleedingGhost

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
  • پروتکل SMB که تشکیل شده از کلمات Server Message Block می‌باشد این امکان را برای ما فراهم می‌سازد که بتوانیم  منابع مختلف را همچون پورت ها,پرینتر ها و فایل هارا بین افراد درون شبکه به اشتراک بگذاریم

بررسی نحوه کار آسیب پذیری SMBGhost

این آسیب پذیری به گونه ایی‌ می‌باشد که فرد مهاجم با ارسال بسته های ساخته شده از قبل می‌تواند به راحتی دستورات سیستمی خود را از طریق سرور SMBv3 بر روی سیستم فرد قربانی اجرا سازد، پروتکل SMBv3 با بررسی نکردن بسته های خاص موجب سریز شدن بافر سیستم می‌شود و در هسته ویندوز اختلالاتی را به وجود می‌آورد 

مقاوم سازی سیستم دربرابر این آسیب پذیری

به گفته کارشناسان شرکت ماکروسافت می‌بایست در فایروال سیستم خود دسترسی به پورت TCP 445 که شماره پورت پروتکل SMB است را ببندید اما از این رو شما فقد از حملات بیرون محافظت می‌شوید و حملات از داخل هنوز امکان پذیر می‌باشد. همچنین شما می‌توانید قابلیت SMB Compress را نیز غیرفعال سازید اینکار موجب مقاوم شدن سیستم شما در برابر این آسیب پذیری می‌شود.

  • نکته: با غیرفعال سازی SMB Compress ممکن است کمی با کندی د شبکه مواجب شوید

برای غیرفعال سازی SMB Compress از این دستور در محیط PowerShell استفاده کنید

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" DisableCompression -Type DWORD -Value 1 -Force

کشف سیستم های آسیب پذیر به SMBGost و بکارگیری آن‌ها

یک ‌اسکنر به منظور اسکن سیستم های مختلف به منظور تست آسیب پذیر بودن دربرابر SMBGhost ارائه شده است به این صورت که با برقراری یک گفت و گو بین سرور SMB اینکار را انجام می‌دهد در این گفت و گو سعی دارد که دو چیز را بفهمد، اول اینکه سرور از SMBv3.1.1 استفاده می‌کند و دوم اینکه SMB Compress بر روی آن فعال می‌باشد یا خیر. به منظور اینکار از پارامتر Dialect: 0x0311 برای تشخیص ورژن و از NegotiateContextCount: 2 به منظور کشف فعال بودن SMB Compress

بررسی آسیب پذیری RCE در SMB

نویسنده: امیرحسین تنگسیری نژاد


امیرحسین تنگسیری نژاد
امیرحسین تنگسیری نژاد

مهندس و مدرس شبکه و امنیت سایبری و مدیر کل جزیره هک و امنیت اطلاعات توسینسو

متخصص امنیت اطلاعات و کارشناس شکار تهدیدات بانک ملی ایران ، دارای مدارک مختلف از Splunk و AWS و Fortinet و Huawei حوزه اصلی فعالیت بنده در زمینه شبکه مباحث R&S و Service Provider می‌باشد و در زمینه امنیت نیز در موقعیت های مختلفی مانند PenTest و SoC فعالیت داشته و دارم. سابقه همکاری با بعضی سازمان های در قالب پروژه و... را داشته ام الان به عنوان تحلیلگر امنیت سایبری در زیرساخت بانک ملی مشغول به کار هستم. لینکداین: https://www.linkedin.com/in/amirhoseintangsirinezhad/

نظرات