یکی از مهمترین مسئولیتهای مدیران شبکه سازمانها، برقراری امنیت شبکه داخلی در برابر تهدیدات خارجی و داخلی میباشد. چراکه حمله به زیرساختهای سازمان میتواند خسارتهای جبران ناپذیری را به آنها وارد کند.
در کنار توجه به رعایت استانداردهای معتبر فنی در حوزه طراحی و پیاده سازی زیرساختهای فناوری اطلاعات (مانند DNS, NTP)، لازم است به مفاهیم امنیت چند لایه در پیاده سازی آنها توجه نمود.
در این مقاله ابتدا برخی مفاهیم پایه شبکه مطرح و سپس برخی از انواع حملات در لایه دو شبکه معرفی شده و مورد بررسی قرار می گیرد تا در صورت وقوع آنها، چگونگی مقابله با آن مشخص شود. مدیران و مسولین شبکه نیز ضمن آشنایی با این نوع از حملات، با ارزیابی امنیتی دوره ای زیرساختهای سازمان متبوع خود می توانند از این حملات مصون بمانند. این ارزیابی های می تواند مکمل تستهای نفوذ بر روی برنامه های کاربردی تحت وب باشد.
نتایج این ارزیابی های می تواند جهت امن سازی زیرساختهای فناوری اطلاعات سازمانها و شرکتها مورد استفاده قرار گیرد.
سازمانها بهمنظور افزایش امنیت شبکه داخلی به ایجاد VLAN های مختلف برای هر یک از دپارتمانها اقدام میکنند. ازجمله پرکاربردترین این بخشبندیها نیز ایجاد یک VLAN جداگانه برای دپارتمان مالی یا دپارتمان منابع انسانی میباشد. بنابراین کاربران بخشهای دیگر نمیتوانند به ترافیک عبوری از این VLAN ها دست یابند. برای ایجاد ارتباط بین VLANها، باید از Inter VLAN Routing براساس نیازها و سیاست های مورد نظر استفاده کرد. اما مسئله آنجا مهم میشود که روش هایی وجود دارد که نفوذ گر به صورت غیر مجاز از یک VLAN به VLAN دیگر نفوذ می کند.
Dynamic Trunking Protocol (DTP) یک پروتکل ترانکینگ اختصاصی در Cisco است که با هدف مذاکره در مورد اتصال بین سوئیچ های Cisco استفاده می شود. این پروتکل به صورت پویا اتصال بین سوئیچ های Cisco را انجام می دهد و روی لایه 2 مدل OSI کار می کند.
این حمله به دو روش قابل انجام است: نوع اول آن Switch Spoofing و نوع دوم Double Tagging است که در این مقاله به هر دو نوع از حملات و راه های جلوگیری از آن ها خواهیم پرداخت.
در روش Switch Spoofing با توجه به اینکه پورت های سوییچ در وضعیت پیش فرض در حالت Dynamic است و امکان Trunk شدن را دارد، نفوذگر با اتصال به یک سوئیچ یا یک دستگاه دیگر که امکان معرفی خود به عنوان یک پورت Trunk را داشته باشد، درصورتی که در وضعیت Allowed vlan all باشد (که پیش فرض نیز در همین وضعیت است) می تواند به دیگر VLANها دسترسی پیدا کند.
ابتدا باید وضعیت پورت ها مشخص و پورت های غیر لازمDTP از حالت ترانک و سپس پورت ها از حالت Dynamic Auto Negotiation خارج شوند. همچنین پورتی که به یک کاربر نهایی متصل است، نباید در حالت Dynamic باشد. لذا لازم است وضعیت آن با دستور زیر به وضیعت Access تغییر یابد:
Switch(config)#interface fastethernet 0/1
Switch(config-if)#switchport mode access
با توجه به اینکه ترافیک Native VLAN بدون تگ از سویچ خارج می شود و عموماً هم VLAN شماره یک Native VLAN می باشد، اگر نفوذگر تگ VLAN دومی را در کنار تگ Native VLAN قرار دهد، بسته ارسالی در سمت مقابل، هنگام دریافت شامل تگ مازادیست که نفوذگر کنار تگ Native قرار داده؛ لذا ترافیک به VLAN این تگ هدایت می شود.
به طور مثال VLAN 10 به عنوان Native VLAN ما است و نفوذ گر که در Native VLAN قرار دارد می خواهد به VLAN 20 نفوذ کند. نفوذ گر بسته مورد نظر خود را با Tag 20 ارسال می کند. سوئیچ با دریافت فریم روی پورت سوئیچ ، Tag 10 را روی آن می زند که باعث می شود فریم ما دارای دو Tag شود. این فریم هنگامی که روی پورت Trunk ارسال می شود Tag مربوط به Native VLAN آن حذف می شود، اما همچنان Tag 20 را دارد. در نتیجه هنگام دریافت فریم توسط سوئیچ مقابل، با دیدن Tag 20 روی فریم آنرا تحویل VLAN 20 می کند. به این صورت نفوذگر از VLAN 10 به VLAN 20 نفوذ کرده است.
ابتدا باید Native Vlan را از حالت پیش فرض خارج کرده و روی یک VLAN غیر فعال قرار داد و Allowed VLAN طوری تنظیم شود که شامل همان VLAN نباشد؛ یا سوئیچ بگونه ای تنظیم شود که هنگام ارسال ترافیک به پورت ترانک، Native VLAN را هم تگ بزند. برای این کار می توان از دستور زیر استفاده کرد:
Switch(config-if)# switchport trunk native vlan tag
cisco-devices-security-MAC-flooding-01
حمله MAC address flooding یا حمله CAM table flooding نوعی حمله به شبکه سازمان ها میباشد که در آن حملهکننده به یک سوئیچ در شبکه متصل است و این سوئیچ را با بسیاری از Ethernet Frame ها که تماماً دارای MAC Address های جعلی میباشند، پر میکند. از این پس سوئیچ بدلیل پر شدن جدول CAM خود نمی تواند MAC جدید را دریافت کند؛ در نتیجه سوئیچ بسته های دریافتی که آدرس مقصد آنها را در جدول CAM ندارد، روی تمام پورت ها ارسال می کند. سیستم حمله کننده نیز این Frameها را دریافت کرده و میتواند بهراحتی به Capture کردن این ترافیکها بپردازد و اطلاعات حساسی نیز از این بررسیها به دست آورد.
این پر شدن جدول CAM دو مشکل به وجود می آورد:
تصاویر زیر جدول MAC Address را قبل و بعد از انجام حمله نشان میدهد.
در مرحله بعد با ساختن MAC آدرس جعلی و ارسال آن به سمت CAM، جدول از داده های جعلی اشباع می شود.
در تصویر زیر تعداد MAC های داخل جدول قبل و بعد از حمله در قسمت Total MAC address قابل مشاهد است.
به منظور مقابله با حمله MAC flooding می توان قابلیت امنیتی Port Security را بر روی سوئیچ فعال کرد.
ARP مخفف Address Resolution Protocol است که در حمله مرد میانی نیز مورد سو استفاده قرار می گیرد. این پروتکل برای نگاشت آدرس آی پی به آدرس های فیزیکی [MAC] روی سیستم عامل استفاده می شود.
نفوذگر می تواند در پاسخ های ارسالی ARP ضمن ارسال یک بسته GARP، خود را بعنوان Gateway شبکه معرفی کند. با این روش نفوذگر سعی نمی کند که دسترسی بقیه سیستم ها را به اینترنت و منابع دیگر مسدود کند، بلکه فقط جهت حرکت داده ها را تغییر می دهد. در نتیجه ترافیک شبکه به جای ارسال به مقصد اصلی به کامپیوتر نفوذگر ارسال می شود. بنابراین نفوذگر ترافیک شبکه را به سمت کامپیوتر خود منحرف کرده و با حمله men in the middle و با استفاده از ابزاری مانند wireshark شروع به شنود ترافیک شبکه می کند.
نمونه ای از شنود ترافیک شبکه با این روش در شکل زیر نشان داده شده است.
برای جلوگیری از این حمله از Dynamic ARP inspection استفاده می شود. در Dynamic ARP inspection پورت های trusted و untrusted مشخص می شود و IP Address و MAC بسته های دریافتی ARP را با استفاده از دیتابیس DHCP بررسی می کند. پورت های Access باید به عنوان untrusted و پورت های متصل به روتر و دستگاه هایی که نیازی نیست بسته های ARP آنها چک شوند، در حالت trusted قرار داده می شوند. این کار با استفاده از دستور زیر قابل انجا م است:
Switch(config)# ip arp inspection vlan 1
راه حل دوم استفاده از نرم افزار های شناسایی مسمومیت های ARP است. این سیستم ها می توانند برای بررسی آدرس های ip / MAC و تایید آن ها (اگر اعتبار آن ها تایید شده باشد)، مورد استفاده قرار گیرند. آدرس IP / MAC غیرقانونی می تواند مسدود شود. لیست زیر شامل برخی از نرم افزارهایی است که برای محافظت از شبکه در برابر شنود می تواند مورد استفاده قرار گیرد.
دستگاه های واقع در یک شبکه به طور معمول، اطلاعات مربوط به آدرس IP خود را از سروری به نام DHCP Server می گیرند. برای درک کاملتر مفهوم DHCP و سایر مبانی شبکه، اینجا را کلیک کنید. این حمله به دو صورت انجام می پذیرد:
برخی از روشهای مقابله با این نوع از حملات در سطح شبکه عبارتند از:
از این روش می توان برای رفع حملاتی که برای از کار انداختن DHCP Server صورت می گیرد، استفاده کرد.
با استفاده از این روش، Mac Address های مشخصی به یک پورت خاص در شبکه اجازه دسترسی دارند. در این صورت دیگر فرد نفوذگر قادر به ارسال بسته های حاوی در خواست IP با چند Mac Address نخواهد بود.
به طور خلاصه می توان DHCP Snooping را به این گونه شرح داد که مانند فایروالی میان DHCP Sever و Host های نا معتبر و غیرقابل اطمینان است و روش کار آن به این گونه است که :
این روش به این گونه است که در بازه زمانی مشخصی تنها می توان تعداد خاصی درخواست به DHCP Server ارسال کرد و به این ترتیب می توان از حمله به DHCP Server و خالی کردن لیست IP آن جلوگیری کرد.
در کنار موارد فوق استفاده از فایروال و پیکربندی دقیق آن، استقرار مراکز عملیات امنیت (SOC)، استفاده از ابزارهای مدیریت اطلاعات و رخدادهای امنیتی (SIEM) و همچنین انجام امن سازی های دوره ای بر روی کلیه تجهیزات و سرویسها می تواند تا حد زیادی ضریب امنیت سازمانها را بالا ببرد.
در صورت علاقمندی به کسب اطلاعات بیشتر در مورد سایر آسیب پذیری های شناخته شده شبکه، و چگونگی امن سازی آنها، شما را به مطالعه مقالات تخصصی وبلاگ آشنا ایمن دعوت می کنیم.