ARP Spoofing که همچنین به عنوان ARP flooding یا ARP poisoning شناخته میشود روشی است که برای حمله به یک شبکه وایرلس و Ethernet wired استفاده میشود. ARP Spoofing به یک نفوذگر این اجازه را میدهد تا اطلاعات را در یک شبکه محلی (LAN) اسنیف، یا ترافیک را دستکاری کند و یا حتی تمام ترافیک را متوقف کند. به یاد داشته باشید این روش فقط روی شبکه هایی که واقعا از ARP استفاده میکنند، مورد استفاده قرار میگیرد.
قاعده اصلی ARP Spoofing بنا بر ارسال پیام های ARP جعلی و تقلبی به یک شبکه LAN است، با این قصد که مک آدرس نفوذگر با IP یکی از نود های شبکه (مثلا default gateway که بسیار ارزشمند است) یکی یا وابسته میشود. در این حالت تمام ترافیک شبکه که قرار بود به سمت IP اصلی هدایت شود در واقع به سمت نفوذگر فرستاده میشوند. سپس نفوذگر میتواند انتخاب کند که آیا اطلاعات به سمت default gateway فرستاده شوند یا اطلاعات مورد نظر را قبل از فرستادن ویرایش کند.
همچنین نفوذ گر میتواند با اختصاص دادن مک آدرس غیر واقعی به IP آدرس default gateway متعلق به قربانی، یک حمله DoS را اجرا کند.
حملات ARP Spoofing میتوانند توسط کامپیوتر نفوذگر یا یک هاست هک شده که مستقیما به شبکه قربانی متصل است، انجام گیرند.
کاربرد
ARP یک پروتکل Layer 2است که درخواست های ARP به عنوان Broadcast Traffic هستند در حالی که پاسخ های صحیح ARP این چنین نیستند. همچنین ARP برای تایید شناسه (ID Validation) در تبادل طراحی نشده است وARP Spoofing میتواند در جهت تبادل صحیح ARP صورت گیرد.
روش های مقابله
یک راه حل متن باز، ArpOn است (Arp handler inspectiON) یک کنترل کننده ARP قابل حمل که تمامی حملات ARP Spoofing را شناسایی کرده و بلاک میکند.
روش دیگر DHCP Snooping است که میتواند روی شبکه های بزرگ استفاده شود ولی محدود به کلاینت های DHCP هست و میتوان به راحتی جلوی حمله را گرفت. سرویس DHCP بر روی شبکه، مک آدرسهایی که به هر پورت وصل هستند را ثبت میکنند. در این صورت به راحتی میتوان فهمید که یک بسته ی جعلیARP فرستاده شده است. این روش روی تجهزات شبکه ای که ساخت کمپانی هایی مثل سیسکو، دی لینک و . . . است اجرا میشود
شناسایی حمله و دفاع در برابر ARP Spoofing دو مبحث جدا از هم هستند که برای شناسایی این نوع حملات قصد معفرفی چند ابزار را داریم:
- ARPDefender : یک برنامه پرکاربرد در این زمینه هست که در بسیاری از موسسات تجاری به کار میرود
- Arpwatch : یک برنامه تحت یونیکس هست که به پاسخ های ARP در شبکه گوش میدهد و در صورت هر گونه تغییری مدیر شبکه را از طریق ایمیل آگاه میسازد
- XArp : نرم افزاری که برای دو پلتفورم ویندوز و لینوکس در دسترس است. این نرم افزار پکت های ARP را مورد بررسی قرار میدهد و قابلیت ایجاد فیلتر بر روی پکت ها را دارد. در این حالت حملات احتمالی شناسایی میشوند و جلوی آن ها گرفته میشود.
البته نرم افزار های دیگری هم هستند که عملکرد خوبی دارند ولی نمیتوان به همه آن ها در اینجا اشاره کرد.
بررسی کردن برای مک آدرس های مشابه در شبکه میتواند در تشخیص حملات ARP Spoofing موثر باشد. البته گاهی اوقات از MAC Address Cloningاستفاده های درستی میشود یعنی اگر بیشتر از یک IP نمایان شود پس این یک حمله نیست و MAC Address Cloning رخ داده است.
یکی از روش های جلوگیری از حملات ساده ARP Spoofing این است که برای هر مک آدرس یک IP تعیین شود. به یاد داشته باشید که این روش فقط با حملات ARP Spoofing از نوع ساده و ضعیف مقابله میکند.
استفاده صحیح
- ARP Spoofing حتی میتواند برای مقاصد درست هم استفاده شود. برای مثال: ابزار های شبکه میتوانند، هاست هایی که رجیستر نشده اند را قبل از اینکه به شبکه دسترسی کامل داشته باشند به صفحه ی عضویت (Sign Up) هدایت کنند
- استفاده درست دیگری که میتوان از ARP Spoofing کرد برای کاربرانی است که از لپتاپ استفاده میکنند . این کاربران میتوانند بدون توجه به IPآدرس خود با استفاده از دستگاهی به نام (HEP) به شبکه متصل شوند،
- از یک حمله ARP Spoofing میتوان برای عیب یابی روی سرویس های شبکه استفاده کرد. یک سرور پشتیبان میتواند با استفاده ازARP Spoofing وارد سرور معیوب شود و به طور شفاف پیشنهاد بررسی داده را بکند.
ابزار های حمله
چند ابزار موثر و مفید مورد استفاده در این نوع حملات:
- Arpspoof (بخشی از پکیج نرم افزاری DSniff)
- Arpoison (Cain and Abel)
- Ettercap
- ARP-FILLUP
- arp-sk
- ARPOc
- Arpalert
- Arping
- Arpmitm
- Arpoison
- ArpSpyX
- ArpToXin
موفق باشید.