امنیت لایه پیوند

امنیت لایه پیوند (به انگلیسی: Link layer security) به مجموعه اقدامات و پروتکل‌هایی گفته می‌شود که برای تأمین امنیت در لایه پیوند مدل مجموعه پروتکل اینترنت (TCP/IP) به کار می‌روند. لایه پیوند، پایین‌ترین لایه در این مدل است و گاهی «لایه رابط شبکه» (Network Interface Layer) نیز نامیده می‌شود. این لایه تقریباً معادل لایه پیوند داده (Data Link Layer) به همراه لایه فیزیکی (Physical Layer) در مدل مرجع OSI است. این لایه دارای چندین آسیب‌پذیری امنیتی منحصربه‌فرد است که می‌تواند توسط یک مهاجم بهره‌برداری شود.

 لایه رابط شبکه 
لایه پیوند، رابط بین سیستم میزبان (Host) و سخت‌افزار شبکه است. این لایه نحوه قالب‌بندی بسته‌های داده برای انتقال و مسیریابی را تعریف می‌کند. برخی از پروتکل‌های رایج لایه پیوند شامل IEEE 802.2 و X.25 هستند. لایه پیوند داده و پروتکل‌های مرتبط با آن، رابط فیزیکی بین کامپیوتر میزبان و سخت‌افزار شبکه را مدیریت می‌کنند. هدف این لایه، برقراری ارتباط قابل اطمینان بین میزبان‌های متصل به یک شبکه است. خدمات ارائه شده توسط این لایه از پشته پروتکل شبکه عبارتند از:

 قالب‌بندی داده (Data Framing) – شکستن جریان داده به فریم‌ها یا بسته‌های جداگانه.

 چک‌جمع (Checksums) – ارسال دادهٔ چک‌جمع برای هر فریم تا گره دریافت‌کننده بتواند تشخیص دهد آیا فریم بدون خطا دریافت شده است یا خیر.
 تأییدیه (Acknowledgment) – ارسال تأییدیه مثبت (داده دریافت شد) یا منفی (داده مورد انتظار دریافت نشد) از گیرنده به فرستنده برای اطمینان از انتقال قابل اطمینان داده.
 کنترل جریان (Flow Control) – بافر کردن انتقال داده‌ها برای اطمینان از اینکه فرستنده سریع، گیرندهٔ کندتر را تحت تأثیر قرار ندهد.

 آسیب‌پذیری‌ها و راهکارهای مقابله 

 شبکه‌های سیمی 

 حملهٔ خستگی جدول CAM 
لایه پیوند داده، بسته‌های داده را بر اساس آدرس کنترل دسترسی به رسانه (MAC) فیزیکی سخت‌افزار مقصد آدرس‌دهی می‌کند. سوئیچ‌های داخل شبکه، جداول CAM (حافظه قابل آدرس‌دهی توسط محتوا) نگهداری می‌کنند که پورت‌های سوئیچ را به آدرس‌های MAC خاص نگاشت می‌کند. این جداول به سوئیچ اجازه می‌دهد بسته را تنها به آدرس فیزیکی مقصد خود تحویل دهد. استفاده از سوئیچ برای اتصال فقط سیستم‌هایی که در حال ارتباط هستند، امنیت بسیار بیشتری نسبت به هاب شبکه فراهم می‌کند، زیرا هاب تمام ترافیک را روی همه پورت‌ها پخش می‌کند، و این امکان را به یک استراق‌سامع می‌دهد تا تمام ترافیک شبکه را رهگیری و نظارت کند. حمله خستگی جدول CAM اساساً یک سوئیچ را به هاب تبدیل می‌کند. مهاجم جدول CAM را با نگاشت‌های جدید MAC به پورت آنقدر پر می‌کند تا حافظه ثابت جدول کاملاً پر شود. در این نقطه، سوئیچ دیگر نمی‌داند چگونه ترافیک را بر اساس نگاشت MAC به پورت تحویل دهد و به حالت پیش‌فرض (پخش همگانی ترافیک روی همه پورت‌ها) بازمی‌گردد. سپس مهاجم می‌تواند تمام ترافیک شبکه عبوری از سوئیچ را از جمله رمزهای عبور، ایمیل‌ها، پیام‌های فوری و غیره رهگیری و نظارت کند.

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

 جعل پروتکل ARP 

در لایه پیوند داده، یک آدرس IP منطقی که توسط لایه شبکه تعیین شده، به یک آدرس MAC فیزیکی ترجمه می‌شود. برای اطمینان از ارتباط قابل اطمینان داده، همه سوئیچ‌های شبکه باید جداول به‌روزی برای نگاشت آدرس منطقی (IP) به فیزیکی (MAC) داشته باشند. اگر یک کلاینت یا سوئیچ از نگاشت IP به MAC یک بسته داده‌ای که دریافت کرده مطمئن نباشد، یک پیام پروتکل تفکیک آدرس (ARP) به نزدیکترین سوئیچ می‌فرستد و آدرس MAC مرتبط با آن آدرس IP خاص را می‌پرسد. پس از انجام این کار، کلاینت یا سوئیچ جدول خود را به‌روز می‌کند تا نگاشت جدید را منعکس کند. در یک حمله جعل ARP، مهاجم آدرس IP دستگاه مورد حمله را همراه با آدرس MAC خود پخش می‌کند. سپس همه سوئیچ‌های همسایه جداول نگاشت خود را به‌روز کرده و شروع به ارسال داده‌هایی می‌کنند که مقصدشان آدرس IP سیستم مورد حمله است، به آدرس MAC مهاجم. چنین حمله‌ای معمولاً «حمله مرد میانی» نامیده می‌شود.

دفاع در برابر جعل ARP عموماً به نوعی تأیید اعتبار یا بررسی متقابل پاسخ‌های ARP متکی است. پاسخ‌های ARP تأیید نشده مسدود می‌شوند. این تکنیک‌ها می‌توانند با سرور DHCP ادغام شوند تا هر دو آدرس IP پویا و ایستا تأیید اعتبار شوند. این قابلیت همچنین می‌تواند در میزبان‌های منفرد پیاده‌سازی شود یا در سوئیچ‌های اترنت یا سایر تجهیزات شبکه ادغام گردد.

 گرسنگی پروتکل DHCP 
هنگامی که یک سیستم کلاینت بدون آدرس IP وارد شبکه می‌شود، یک آدرس IP از سرور DHCP مقیم درخواست می‌کند. سرور DHCP یک آدرس IP را ذخیره می‌کند (به طوری که شخص دیگری که درخواست دهد این آدرس به او تعلق نگیرد) و آن آدرس IP را همراه با یک اجاره‌نامه (lease) که مشخص می‌کند آدرس تا چه مدت معتبر است، برای دستگاه می‌فرستد. به طور معمول، از این نقطه به بعد، دستگاه با تأیید آدرس IP نزد سرور DHCP پاسخ می‌دهد و سرور DHCP در نهایت با یک تأییدیه پاسخ می‌دهد.

در یک حمله گرسنگی DHCP، پس از اینکه مهاجم آدرس IP و دوره اجاره را از سرور DHCP دریافت کرد، مهاجم با تأییدیه پاسخ نمی‌دهد. در عوض، مهاجم سرور DHCP را با درخواست‌های آدرس IP آنقدر غرق می‌کند تا تمام آدرس‌های موجود در فضای آدرس سرور ذخیره شوند (خالی شوند). در این نقطه، هر میزبانی که بخواهد به شبکه بپیوندد، دسترسی اش رد می‌شود و در نتیجه حمله محرومیت از سرویس رخ می‌دهد. سپس مهاجم می‌تواند یک سرور DHCP جعلی راه‌اندازی کند تا کلاینت‌ها تنظیمات نادرست شبکه را دریافت کرده و در نتیجه داده‌ها را به ماشین مهاجم ارسال کنند.

یکی از روش‌های کاهش این نوع حمله، استفاده از قابلیت «محافظت از منبع IP» (IP source guard) است که در بسیاری از سوئیچ‌های اترنت موجود می‌باشد. محافظت IP در ابتدا همه ترافیک به جز بسته‌های DHCP را مسدود می‌کند. هنگامی که یک کلاینت یک آدرس IP معتبر از سرور DHCP دریافت می‌کند، رابطه بین آدرس IP و پورت سوئیچ در یک لیست کنترل دسترسی (ACL) محدود می‌شود. سپس ACL ترافیک را فقط به آن آدرس‌های IP پیکربندی شده در محدودیت محدود می‌کند.

 شبکه‌های بی‌سیم 

 حملهٔ گره پنهان 
در یک شبکه بی‌سیم، بسیاری از میزبان‌ها یا گره‌ها یک رسانه مشترک را به اشتراک می‌گذارند. اگر گره A و گره B هر دو رایانه‌های لپ‌تاپ بی‌سیمی باشند که در یک محیط اداری ارتباط برقرار می‌کنند، جدایی فیزیکی آنها ممکن است ایجاب کند که از طریق یک نقطه دسترسی بی‌سیم با هم ارتباط برقرار کنند. اما برای جلوگیری از برخورد بسته‌ها، فقط یک دستگاه می‌تواند در یک زمان ارسال کند. قبل از ارسال، گره A یک سیگنال «آماده برای ارسال» (RTS) می‌فرستد. اگر ترافیک دیگری دریافت نمی‌کند، نقطه دسترسی یک سیگنال «پاک برای ارسال» (CTS) را روی شبکه پخش می‌کند. سپس گره A شروع به ارسال می‌کند در حالی که گره B می‌داند فعلاً از ارسال داده خودداری کند. حتی اگر نتواند مستقیماً با گره A ارتباط برقرار کند (یعنی گره A پنهان است)، بر اساس ارتباطش با نقطه دسترسی می‌داند که صبر کند. یک مهاجم می‌تواند با غرق کردن شبکه با پیام‌های CTS از این قابلیت سوءاستفاده کند. سپس هر گره فرض می‌کند یک گره پنهان در حال تلاش برای ارسال است و ارسال‌های خود را نگه می‌دارد، که منجر به حمله محرومیت از سرویس می‌شود.

جلوگیری از حملات گره پنهان نیازمند یک ابزار شبکه مانند NetEqualizer است. چنین ابزاری ترافیک نقطه دسترسی را نظارت کرده و یک سطح پایه از ترافیک ایجاد می‌کند. هر جهشی در سیگنال‌های CTS/RTS فرض می‌شود نتیجه یک حمله گره پنهان باشد و متعاقباً مسدود می‌شود.

 حملهٔ عدم تأیید اعتبار (De-auth) 
هر کلاینتی که وارد یک شبکه بی‌سیم می‌شود، ابتدا باید با یک نقطه دسترسی (AP) احراز هویت شود و پس از آن با آن نقطه دسترسی مرتبط می‌گردد. هنگامی که کلاینت خارج می‌شود، یک پیام «عدم تأیید اعتبار» (deauth) می‌فرستد تا خود را از نقطه دسترسی جدا کند. یک مهاجم می‌تواند پیام‌های deauth را به یک نقطه دسترسی که به آدرس‌های IP کلاینت متصل است بفرستد و در نتیجه کاربران را آفلاین کند و مجبور به احراز هویت مجدد مداوم نماید، که به مهاجم بینش ارزشمندی در مورد فرایند دست دادن (handshake) احراز هویت مجدد می‌دهد.

برای کاهش این حمله، می‌توان نقطه دسترسی را به گونه‌ای تنظیم کرد که اثرات درخواست‌های عدم تأیید اعتبار یا جداسازی را به تأخیر بیندازد (مثلاً با قرار دادن چنین درخواست‌هایی در صف به مدت ۵–۱۰ ثانیه) و بدین ترتیب به نقطه دسترسی فرصت دهد تا بسته‌های بعدی از کلاینت را مشاهده کند. اگر یک بسته داده پس از قرار گرفتن درخواست عدم تأیید اعتبار یا جداسازی در صف برسد، آن درخواست دور انداخته می‌شود، زیرا یک کلاینت قانونی هرگز بسته‌ها را به آن ترتیب تولید نمی‌کند.

 منابع 

رده:امنیت شبکه‌های رایانه‌ای
رده:پروتکل‌های لایه پیوند