پایگاه دانش

پروتکل SMB چیست؟ سرویس Server Message Block چگونه کار میکند؟ برسی نسخه‌ها، مزایا و معایب

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

پروتکل SMB چیست؟

پروتکل SMB (Server Message Block) یکی از پروتکل‌های مهم شبکه است که امکان اشتراک‌گذاری فایل‌ها، چاپگرها، پورت‌های سریال و دیگر منابع بین دستگاه‌های متصل به یک شبکه را فراهم می‌کند. این پروتکل که ابتدا در دهه 1980 توسط IBM توسعه یافت، به عنوان یکی از ابزارهای اصلی برای تسهیل ارتباطات در محیط‌های شبکه‌ای شناخته می‌شود. SMB بر اساس معماری کلاینت-سرور عمل می‌کند و به کاربران این امکان را می‌دهد تا فایل‌های ذخیره‌شده در سرورهای راه دور را به‌گونه‌ای مدیریت کنند که گویی روی هارد دیسک محلی ذخیره شده‌اند.

مزایای SMB
معایب SMB

اشتراک‌گذاری آسان فایل‌ها

آسیب‌پذیری در نسخه‌های قدیمی

پشتیبانی از اکثر سیستم عامل‌ها با سرعت و کارایی بالا

مصرف بالای پهنای باند

قابلیت رمزگذاری و امنیت بالا

پیچیدگی در پیکربندی و مدیریت امنیت

پروتکل SMB چگونه کار می‌کند؟

پروتکل SMB در لایه 7 یعنی لایه اپلیکیشن عمل می‌کند. این پروتکل برای انتقال داده‌ها به پروتکل‌های زیرساختی مانند NetBIOS over TCP/IP (NBT) وابسته است. در شرایطی که دستگاهی از SMB بر پایه TCP/IP پشتیبانی نکند، از NetBIOS بر روی پروتکل‌های انتقال دیگر مانند TCP/IP استفاده می‌شود. با پیشرفت تکنولوژی، SMB به طور مستقیم از TCP/IP روی پورت 445 برای ارتباطات بهره می‌برد، اما نسخه‌های اولیه از پروتکل‌های قدیمی‌تر نظیر Internetwork Packet Exchange یا NetBEUI استفاده می‌کردند.

SMB به صورت یک پروتکل کلاینت-سروری طراحی شده است که از مجموعه‌ای از بسته‌های داده‌ای برای مدیریت ارتباطات بهره می‌گیرد. این بسته‌ها شامل درخواست‌هایی از سوی کلاینت و پاسخ‌هایی از سوی سرور هستند. بسته‌های کنترل نشست برای مدیریت اتصال و اشتراک منابع استفاده می‌شوند، در حالی که بسته‌های دسترسی فایل برای خواندن، نوشتن یا تغییر فایل‌ها و دایرکتوری‌ها به کار می‌روند. بسته‌های پیام عمومی نیز برای ارسال اطلاعات به صف‌های پرینت، mailslotها و named pipe‌ها استفاده می‌شوند. برای کاهش تأخیر و بهینه‌سازی پهنای باند، بسته‌ها اغلب به صورت گروهی منتقل می‌شوند که این تکنیک به عنوان Packet Batching شناخته می‌شود.

تاریخچه و نسخه‌های SMB

پروتکل SMB (Server Message Block) یک پروتکل ارتباطی شبکه‌ای است که امکان اشتراک‌گذاری فایل‌ها، پرینترها و دیگر منابع شبکه‌ای را میان کلاینت‌ها و سرورها فراهم می‌کند. این پروتکل در طول سال‌ها با بهبودها و تغییرات متعددی روبه‌رو شده و نسخه‌های مختلفی از آن برای افزایش کارایی، امنیت و سازگاری منتشر شده‌اند. در ادامه به بررسی مختصر نسخه‌های اصلی این پروتکل می‌پردازیم:

  • SMB 1.0:

در سال 1984 توسط IBM برای اشتراک‌گذاری فایل در DOS ارائه شد. این نسخه با معرفی قفل‌های موقتی (OpLocks) توانست ترافیک شبکه را کاهش دهد. بعدها مایکروسافت این نسخه را در محصول LAN Manager خود گنجاند.

  • CIFS (SMB 1.0 توسعه‌یافته):

در سال 1996 با ویندوز 95 معرفی شد. این نسخه از فایل‌های بزرگ‌تر، انتقال مستقیم از طریق TCP/IP، و لینک‌های نمادین و سخت پشتیبانی می‌کرد، اما به دلیل تعداد زیاد Acknowledgementها در شبکه‌های WAN کارایی پایینی داشت.

CIFSvsSMB min

  • SMB 2.0:

در سال 2006 با ویندوز ویستا و ویندوز سرور 2008 منتشر شد. این نسخه با کاهش دستورات به 19 دستور و بهبود WAN acceleration کارایی و انعطاف‌پذیری پروتکل را افزایش داد.

  • SMB 2.1:

در سال 2010 با ویندوز سرور 2008 R2 و ویندوز 7 ارائه شد. این نسخه ویژگی‌هایی مانند صرفه‌جویی در مصرف انرژی و پشتیبانی از واحدهای انتقال بزرگ‌تر (MTU) را اضافه کرد.

  • SMB 3.0:

در سال 2012 با ویندوز 8 و ویندوز سرور 2012 معرفی شد. ویژگی‌هایی مانند SMB Multichannel، رمزگذاری SMB و failover شفاف بهبودهای قابل‌توجهی را در امنیت، مدیریت و عملکرد فراهم کردند.

  • SMB 3.0.2:

در سال 2014 با ویندوز 8.1 و ویندوز سرور 2012 R2 منتشر شد. در این نسخه پشتیبانی از SMB 1.0 به‌طور کامل غیرفعال و عملکرد بهینه‌سازی شد.

  • SMB 3.1.1:

در سال 2015 با ویندوز 10 و ویندوز سرور 2016 معرفی شد. این نسخه قابلیت رمزگذاری پیشرفته و یکپارچگی پیش از احراز هویت را برای مقابله با حملات Man-in-the-Middle (MitM) اضافه کرد.

معرفی حمله مرد میانی یا و راه حل‌های مقابله با آن

چالش‌ها و امنیت SMB 1.0

حملات باج‌افزاری WannaCry و Petya در سال 2017 ضعف‌های امنیتی SMB 1.0 را آشکار کردند. این نسخه دیگر توصیه نمی‌شود و مایکروسافت به کاربران پیشنهاد داده است که آن را غیرفعال کنند.

برقراری امنیت در SMB

پروتکل SMB به‌دلیل اهمیت آن در اشتراک‌گذاری فایل‌ها و منابع شبکه‌ای، هدف حملات سایبری مختلفی قرار گرفته است. برای افزایش امنیت این پروتکل، اقدامات زیر می‌توانند به‌طور مؤثری از سوءاستفاده‌ها جلوگیری کنند:

غیرفعال‌سازی نسخه‌های قدیمی SMB

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

استفاده از رمزگذاری در انتقال داده‌ها

نسخه‌های جدیدتر SMB، به‌ویژه SMB 3.0 و SMB 3.1.1 از قابلیت رمزگذاری داده‌ها پشتیبانی می‌کنند. فعال‌سازی SMB Encryption باعث می‌شود داده‌ها هنگام انتقال بین کلاینت و سرور رمزگذاری شوند و از دسترسی مهاجمان به اطلاعات در طول مسیر جلوگیری شود.

رمزنگاری چیست و چگونه به داده‌ها و اطلاعات امنیت می‌بخشد؟

پیکربندی مناسب فایروال و محدودسازی دسترسی

فایروال‌ها را به‌گونه‌ای پیکربندی کنید که تنها دستگاه‌های مشخص و مورد اعتماد بتوانند به پورت‌های SMB دسترسی داشته باشند. همچنین، محدودسازی دسترسی بر اساس آدرس‌های IP و محدوده‌های خاص می‌تواند از ارتباطات غیرمجاز جلوگیری کند.

استفاده از ابزارهای نظارت و تحلیل ترافیک

ابزارهایی مانند Wazuh یا Wireshark می‌توانند برای شناسایی ترافیک مشکوک و تحلیل فعالیت‌های غیرعادی در ارتباطات SMB مورد استفاده قرار گیرند. این نظارت فعال به شناسایی حملات احتمالی و اقدامات پیشگیرانه کمک می‌کند.

معرفی شرکت واژو (Wazuh): پلتفرمی فوق‌العاده در امنیت سایبری!

تفاوت Samba و SMB

SMB یک پروتکل ارتباطی برای اشتراک‌گذاری فایل‌ها و منابع در شبکه است که توسط مایکروسافت توسعه یافته و در سیستم‌عامل‌های ویندوز به‌طور گسترده استفاده می‌شود. در مقابل Samba یک نرم‌افزار منبع‌باز است که برای پیاده‌سازی پروتکل SMB بر روی سیستم‌عامل‌های غیر ویندوزی مانند لینوکس و macOS طراحی شده است. Samba به کاربران امکان می‌دهد تا به منابع ویندوزی متصل شوند یا منابع خود را با دستگاه‌های ویندوزی به اشتراک بگذارند و به عنوان پل ارتباطی بین سیستم‌عامل‌های مختلف در شبکه عمل می‌کند.

ProtocolSMB min

جمع‌بندی…

پروتکل SMB با فراهم کردن امکان اشتراک‌گذاری فایل‌ها و منابع در شبکه‌ها، نقش کلیدی در دنیای دیجیتال امروز ایفا می‌کند. با گذشت زمان، نسخه‌های مختلف این پروتکل با ویژگی‌های جدیدی برای افزایش کارایی و امنیت معرفی شده‌اند. Samba نیز به‌عنوان یک پیاده‌سازی منبع‌باز از پروتکل SMB ارتباط بین سیستم‌عامل‌های مختلف را تسهیل می‌کند و به‌ویژه در شبکه‌های مختلط بسیار مفید است.

موارد اخیر

برترین ها

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

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