امیرحسین کریم پور
مدیر ارشد توسینسو و متخصص سرویس های مایکروسافت

آموزش حذف و غیرفعال کردن SMB در ویندوز سرور و ویندوز 10

به زبان ساده SMB یا Server Message Block پروتکلی است که به کاربران این امکان را می دهد که بتوانند از منابع به اشتراک گذاشته شده در شبکه که شامل فایل ها ، پرینتر ها و سایر سرویس های موجود در شبکه است استفاده کنند. بصورت پیش فرض SMB 1.0 در ویندوز 10 و ویندوز سرور 2016 فعال است و پشتیبانی می شود. اگر در سازمان تان از ویندوز های قدیمی مثل ویندوز XP ، ویندوز سرور 2003 و ... استفاده نمی کنید بهتر است SMB 1.0 را کلا در شبکه غیر فعال و یا حذف کنید. آسیب پذیری های موجود در SMB 1.0 نیز برای شبکه شما بسیار میتواند خطرناک باشد و با غیر فعال کردن SMB 1.0 تا حدی میتوانید جلوی آلوده شدن شبکه تان به باج افزار ها را بگیرید.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

قبل از اینکه بخواهید SMB 1.0 را بصورت کلی در شبکه غیر فعال و یا حذف کنید ابتدا بایستی مطمئن شوید که ویندوز های کلاینت از رده خارج شده مانند ویندوز XP و ویندوز سرور 2003 در شبکه تان وجود ندارد. بهمین منظور ما Auditing را روی فایل سرور فعال می کنیم تا ببینیم که کلاینت ها از SMB 1.0 در شبکه استفاده می کنند یا خیر. برای انجام این کار دستور زیر را در PowerShell اجرا کنید :

Set-SmbServerConfiguration –AuditSmb1Access $true

در کنسول Event Viewer در مسیر زیر میتوانید Event های SMB را مشاهده کنید :

Applications and Services -> Microsoft -> Windows -> SMBServer -> Audit

با اجرای دستور زیر نیز میتوانید Log های مربوط به SMB را در خروجی مشاهده کنید :

Get-WinEvent -LogName Microsoft-Windows-SMBServer/Audit

در مثال زیر Log نشان می دهد که کلاینتی با IP آدرس 192.168.1.10 به فایل سرور SMB 1.0 وصل شده است. EventID این Log با شماره 3000 ثبت و ضبط شده است.

SMB1 access
Client Address: 192.168.1.10
Guidance:
This event indicates that a client attempted to access the server using SMB1. To stop auditing SMB1 access, use the Windows PowerShell cmdlet Set-SmbServerConfiguration.

غیر فعال سازی SMB 1.0 در ویندوز سرور 2016

SMB 1.0 هم در سمت سرور و هم در سمت کلاینت میتواند غیر فعال شود. همانطور که میدانید SMB 1.0 در سمت سرور به کلاینت ها این امکان را می دهد که به منابع Share شده روی فایل سرور دسترسی داشته باشند. و در سمت کلاینت ، کلاینت ها بوسیله SMB Client میتوانند به SMB Server ( فایل سرور ) متصل شوند و از منابع شبکه استفاده کنند. ابتدا با اجرای دستور زیر در PowerShell وضعیت فعال بودن یا نبودن SMB 1.0 را چک کنید :

Get-SmbServerConfiguration

اگر در مقابل پارامتر EnableSMB1Protocol نوشته شده بود True پس SMB 1.0 فعال است. با اجرای دستور زیر SMB 1.0 را بصورت اجباری غیر فعال می کنیم :

Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force

حالا اگر دوباره دستور Get-SmbServerConfiguration را اجرا کنید مشاهده می کنید که در مقابل پارامتر EnableSMB1Protocol کلمه False نوشته شده است.

برای آنکه کلا درایور SMB 1.0 را حذف کنید دستور زیر را در PowerShell اجرا کنید :

Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -Remove

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

Get-WindowsOptionalFeature –Online -FeatureName SMB1Protocol

ترجیحا یکبار سرور را Restart کنید تا کاملا مطمئن شوید که SMB 1.0 غیر فعال شده است.

غیر فعال سازی SMB 1.0 در ویندوز 10

حالا که در سمت سرور SMB 1.0 را غیر فعال کرده اید نوبت آن است که در سمت کلاینت نیز همین کار را انجام دهید تا کلاینت نتوانند به هیچ SMB Server نسخه 1.0 در شبکه متصل شوند. اما در هر حال کلاینت ها با استفاده از ابزار های Third-Party میتوانند به منابع شبکه متصل شوند. برای غیر فعال سازی SMB 1.0 در کلاینت ها دستورات زیر را در PowerShell ویندوز 10 اجرا کنید :

sc.exe config lanmanworkstation depend= bowser/mrxsmb20/nsi
sc.exe config mrxsmb10 start= disabled

حالا که شما توانستید SMB 1.0 رو در ویندوز غیرفعال کنید شبکه تان از آسیب پذیری های SMB 1.0 در امان است. آخرین آسیب پذیری مهمی که در SMB 1.0 کشف شد به فرد مهاجم این امکان را میداد که هر دستوری را از راه دور در سیستم شما اجرا کند. این آسیب پذیری در مارس 2017 برطرف شد. امیدوارم مورد توجه شما قرار گرفته باشد.


امیرحسین کریم پور
امیرحسین کریم پور

مدیر ارشد توسینسو و متخصص سرویس های مایکروسافت

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

نظرات