09163195258 33384456 - 061
aziz.0114@hotmail.com

Rogue DHCP چیست ؟ جلوگیری از آن در WISP ها

Rogue DHCP چیست ؟ جلوگیری از آن در WISP ها
Rogue DHCP
۵ شهر ۱۳۹۶

Rogue DHCP چیست ؟ جلوگیری از آن در WISP ها

Rogue DHCP چیست ؟ جلوگیری از آن در WISP  ها

Rogue DHCP  سرور ها در واقع DHCP سرور هایی هستند که یا بصورت مناسبی تنظیم نشده اند و یا اینکه ناخواسته یا بدون مجوز و بدون اطلاع مدیر شبکه در شبکه فعالیت میکنند . بیشتر اینگونه سرور ها برای فعالیت های مخرب مورد استفاده قرار می گیرند و در حملات مخرب به شبکه کاربر دارند. حتی اگر این سرور ها عملیات تخریبی انجام نداده و صرفا بصورت تصادفی در شبکه ایجاد شده باشند می توانند عملکرد سیستم ها و به ویژه کلاینت های شبکه را مختل کنند ، در صورت وجود چنین DHCP سرور هایی در شبکه کلاینت ها از این سرویس استفاده کرده و تنظیمات IP دریافت می کنند که مرتبط با شبکه فعلی نبوده و یا تنظیمات نادرستی می باشد ، برای مثال آدرس Gateway و یا DNS متفاوتی با آنچه در محیط واقعی شبکه وجود دارد دریافت می کنند ، یک هکر می تواند با راه اندازی یک DHCP سرور به این شکل خود را به عنوان سرویس دهنده به کلاینت معرفی کند و کلیه ترافیکی که توسط وی تولید می شود را مانیتور یا بهتر بگوییم Sniff کند.

برای درک این موضوع به سناریوی زیر دقت کنید:

Rogue DHCP

شکل ۱ –  WISP

در این سناریو ما یک WISP هستیم  و قصد داریم مشترک های خود را طریق دو عدد  AP به PPPOE Server متصل کنیم.

کلاینت ها از طریق Bridge  به AP ها متصل هستند و از طریق کانکشن PPPOE در اکسس پوینت به اینترنت متصل میشن.

در حالت کلی هر کلاینت شبکه داخلی خود را دارد و از DHCP  Server موجود در اکسس پوینت Ip می گیرد.

همانطور که می دانید ازتباط Bridge یک ارتباط لایه ۲ می باشد. Bridge  نیز همانند Switch قادر است دو یا چند شبکه همنوع (Ethernet) را به هم پیوند بزند و فریمها را بین انها مبادله نماید ، از این دیدگاه فرقی با هم ندارند و متخصصین شبکه این دو را معادل یکدیگر میدانند. تنها نکته ای که Bridge را از Switch متمایز میکند آنست که Bridge می توانند دو شبکه غیر همنوع (مثل Wireless و Ethernet)را بهم متصل کرده و عملیات تغییر و تبدیل فریمها و نهایتا هدایت آنها را انجام بدهد.

 

 

برای درک بهتر موضوع ابتدا با نحوه عملکرد پروتکل DHCP آشنا می شویم.

Rogue DHCP

شکل ۲ – DHCP operation

عملکرد DHCP به چهار قسمت پایه تقسیم می‌گردد:

  • اکتشاف (DHCP Discovery)
  • پیشنهاد (DHCP Offer)
  • درخواست (DHCP Request)
  • تصدیق (DHCP Acknowledgement)

این چهار مرحله به صورت خلاصه با عنوان DORA شناخته می‌شوند که هر یک از حرف‌ها، سرحرف مراحل بالا می‌باشد.

DHCP Discovery (اکتشاف DHCP)

هر سرویس گیرنده (کاربر) برای شناسایی سرورهای DHCP موجود اقدام به فرستادن پیامی در زیر شبکه خود می‌کند. مدیرهای شبکه می‌توانند مسیریاب محلی را به گونه ایی پیکربندی کنند که بتواند بسته داده‌ای DHCP را به یک سرور DHCP دیگر که در زیر شبکه متفاوتی وجود دارد، بفرستد. این مهم باعث ایجاد بسته داده با پروتکل UDP می‌شود که آدرس مقصد ارسالی آن ۲۵۵٫۲۵۵٫۲۵۵٫۲۵۵ و یا آدرس مشخص ارسال زیر شبکه می‌باشد. کاربر (سرویس گیرنده) DHCP همچنین می‌تواند آخرین آی پی آدرس شناخته شده خود را درخواست بدهد. اگر سرویس گیرنده همچنان به شبکه متصل باشد در این صورت آی پی آدرس معتبر می‌باشد و سرور ممکن است که درخواست را بپذیرد. در غیر اینصورت، این امر بستگی به این دارد که سرور به عنوان یک مرجع معتبر باشد. یک سرور به عنوان یک مرجع معتبر درخواست فوق را نمی‌پذیرد و سرویس گیرنده را مجبور می‌کند تا برای درخواست آی پی جدید عمل کند. یک سرور به عنوان یک مرجع غیرمعتبر به سادگی درخواست را نمی‌پذیرد و آن را به مثابهی یک درخواست پیاده‌سازی از دست رفته تلقی می‌کند؛ و از سرویس گیرنده می‌خواهد درخواست را لغو و یک آی پی آدرس جدید درخواست کند.

DHCP Offer (پیشنهاد DHCP)

زمانی که یک سرور DHCP یک درخواست را از سرویس گیرنده (کاربر) دریافت می‌کند، یک آی پی آدرس را برای سرویس گیرنده رزو می‌کند و آن را با نام DHCP Offer برای کاربر می‌فرستد. این پیام شامل: MAC آدرس (آدرس فیزیکی دستگاه) کاربر؛ آی پی آدرسی پیشنهادی توسط سرور؛ Subnet Mask آی پی؛ زمان تخصیص آی پی (lease Duration) و آی پی آدرس سروری می‌باشد که پیشنهاد را داده است.

DHCP Request (درخواست DHCP)

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

DHCP Acknowledgement (تصدیق DHCP)

هنگامی که سرور DHCP، پیام درخواست DHCP را دریافت می‌کند، مراحل پیکربندی به فاز پایانی می‌رسد. مرحله تصدیق شامل فرستادن یک بسته داده‌ای (DHCP Pack) به کاربر می‌باشد. این داده بسته ای شامل: زمان تخصیص آی پی و یا هرگونه اطلاعات پیکربندی که ممکن بوده است که سرویس گیرنده درخواست کرده باشد، می‌باشد. در این مرحله فرایند پیکربندی آی پی کامل شده است.

حال تصور کنید که ما یک DHCP Server  در روی اینترفیس Bridge یکی  از رادیو های کلاینت قرار بدیم. چه اتفاقی میافتد؟

به تصویر زیر دقت کنید:

Rogue DHCP

شکل ۳ – DHCP Offer

یکت DHCP Offer  از ذوی بستر Bridge عبور می کند و به مقصد همه ی کلاینت های روی هر دو AP ارسال می شود و هر Node در شبکه که روی DHCP Client تنظیم شده باشد و این پکت را دریافت کند به آن پاسخ می شدهد و یک DHCP Request به به سمت آن DHCP Server ارسال می کند.

Rogue DHCP

شکل ۴ –  DHCP Request

DHCP Server  در پاسخ یک پکت DHCP ACK ارسال می کند که حاوی IP , Gateway , DNS و … می باشد.

Rogue DHCP

شکل ۵ – DHCP ACK

با تعییر Gateway , DNS , IP Address می توان گفت که شبکه ما مختل شده است. به این می گویند Roge DHCP که خواسته یا ناخواسته توسط کلاینت ها در شبکه و عدم دقت کافی  در کانفیگ AP ها توسط WISP ها بوجود می آید.

اکنون برای جلوگیری از این مشکل چه باید کرد:

  • جلوگیری از ارتباط کلاینت های یک AP با سایر کلاینت های همان AP

برای این کار وارد تنظیمات کارت شبکه AP می شویم و  مراحل زیر را انجام می دهیم

Rogue DHCP

شکل ۶ – AP Config

گزینه Defualt Forward را غیر فعال می کنیم

Rogue DHCP

شکل ۷ – AP Config

اگر مراحل فوق را به درستی طی کرده باشد نتیجتا دیگر کلاینت های روی این AP نمی توانند با یکدیگر ارتباط برقرار کنند.

  • جلوگیری از ارتباط کلاینت های AP1 با کلاینت های AP2

این کار به دو روش امکان پذیر است:

  • جدا کردن Broadcast هر AP توسط Vlan

در این روش ما AP ها را بوسیله یک Management Switch به PPPOE Server متصل می کنیم و هر کدام از پورت های Switch که AP ها به آنها متصل هستند را در یک Broadcact منحصر به فرد قرار می دهیم. با این کار مشترک های هر AP را از سایر AP ها جدا میکنیم و کلاینت ها دیگر نمی توانند به کلاینت های سایر AP ها پکت ارسال کنند.

  • با استفاده از Bridge Filter Rule

به این نکته دقت کنید که ما سرویس اینترنت را بصورت PPPOE به کلاینت ها  عرضه می کنیم پس ضرورتی ندارد که پروتکل های دیگری بغیر از PPPOE  از بستر Bridge ما عبور کنند. برای جلوگیری از عبور سایر پروتکل کد های زیر را در ترمینال روتر کپی می کنیم:

/**
/interface bridge filter

add action=accept chain=forward in-interface=wlan1 in-interface-list=all \

    mac-protocol=pppoe-discovery

add action=accept chain=forward in-interface=wlan1 in-interface-list=all \

    mac-protocol=pppoe

add action=drop chain=forward in-interface=wlan1 in-interface-list=all */

و یا مراحل زیر را انجام می دهیم:

Rogue DHCP Rogue DHCP Rogue DHCP

شکل ۸-۹-۱۰ – Bridge Filter Config

اگر مراحل فوق را به درستی انجام داده باشید دیگر هیچ کلاینتی نمی تواند به AP ها پروتکلی غیر از PPPOE ارسال کند.

 

نویسنده : مهندس عزیزاله بندزن

شهریور ۱۳۹۶

ذکر بدون نام منبع اشکال شرعی دارد

 

ارسال پاسخ