آموزش انجام حمله Arp Spoofing و روش جلوگیری از آن
با سلام خدمت تمامی کاربران عزیز سایت Vip Security ^_^
در این پست قصد داریم در رابطه با حملات Arp Spoofing یا Arp Poisoning توضیح بدیم که arp چی هست و چه کاربردی دارد و حمله arp spoofing چیست و چگونه جلوی این نوع حملات را بگیریم !
ARP Poisoning:
حمله ARP Poisoning، حمله ای از نوع Man in the Middle می باشد و در سطح شبکه داخلی(LAN) است که در آن هکر با فرستادن پیغام های جعلی ARP در شبکه داخلی، قادر به شنود تمامی بسته های کاربر هک شده، می شود.
پروتکل Address Resolution Protocol:
پروتکل ARP) Address resolution protocol) عمل تبدیل IP به MAC را برای ما انجام می دهد. نحوه کارکرد آن بدین صورت است که درخواست هایی در شبکه پخش می شود که آیا IP شما ***.***.***.*** است؟ اگر درست است مک خود را ارسال کنید.در همین حین تمامی کلاینت های شبکه IP خود را چک می کنند که در صورت درست بودن یک پاسخ همراه مک به فرستنده ارسال می کنند.
برای این که این درخواست پیوسته در شبکه ارسال نشود و ترافیک بیهوده ایجاد نشود.هر کلاینت یکبار این درخواست را ارسال کرده و سپس جوابهای ارسالی را بصورت یک جدول در ARP Cache نگه داری می کند. این جدول شامل Mapping بین IP و MAC می باشد. هر زمان که بسته ای به یک کلاینت در یک شبکه داخلی ارسال می شود، باید از Gateway عبور کند سپس Gateway با استفاده از ARP، آدرس MAC کلاینتی که بسته به آن مربوط می شود را با استفاده از IP موجود در بسته پیدا کرده و آن بسته را به کلاینت مورد نظر ارسال می کند.
آموزش عملی حمله Arp Spoofing :
برای مشاهده ویدیو حتما vpn خود را روشن کنید و حتما کانال یوتوب ما رو هم دنبال کنید !
چگونه حملات ARP Poisoning را شناسایی کنیم؟
روش های مختلفی برای شناسایی حمله ARP Poisoning وجود دارد. Command Prompt ویندوز، برنامه هایی مانند Snort ، ArpWatch ، ArpAlert ،XArp و … قابلیت شناسایی این نوع حملات را دارند. در ادامه با نحوه شناسایی هکر با استفاده از برخی از روش های ذکر شده آشنا می شویم
استفاده از ابزار Command Prompt ویندوز
اگر به اینکه کامپیوتر شما مورد حمله ARP Poisoning قرار گرفته یا خیر مشکوک هستید، یک راه ساده استفاده از Command Prompt است. با استفاده از دستور “arp -a” می توانید ARP Table خود را مشاهده کنید.
در این جدول اگر دو دستگاه با آدرس IP های مختلف دارای آدرس MAC یکسانی باشند آنگاه احتمالا کامپیوتر شما مورد حمله ARP Poisoning قرار گرفته است. البته این موضوع را نمی توان با قطعیت بیان کرد زیرا در بعضی مواقع در برخی روترها آدرس IP ابتدا و انتهای آن با یک آدرس MAC در ARP Table ذخیره می شود. این مورد یکی از استثناها می باشد.
مشابه این سناریو در دستگاه های لینوکسی و مک نیز قابل اجراست اما برای دستگاه های اندرویدی نیاز به دسترسی روت خواهید داشت.
ابزار قدرتمند XArp
این ابزار پیشرفته برای لینوکس و ویندوز منتشر شده است که در Background اجرا شده و حملات را به طور آنی شناسایی می کند.
با تنظیم Security Level به minimal یا basic یا high و یا aggressive می توانید حساسیت برنامه را تنظیم کنید.
چگونه از حملات ARP Poisioning در امان بمانیم؟
حال که با نحوه شناسایی حمله ARP Poisoning آشنا شدیم، بهتر است از روش هایی برای حفاظت دستگاه و داده های خود در برابر این نوع حملات استفاده کنید.
استفاده از VPN
یک روش برای جلوگیری از مورد تهاجم گرفتن توسط حمله هکرها استفاده از VPN است. در حالت عادی، وقتی که به اینترنت متصل می شوید در ابتدا به یک ISP وصل می شوید تا با شبکه جهانی اینترنت ارتباط برقرار کنید اما با استفاده از VPN، یک تونل Encrypted بین شما و سرور VPN برقرار می شود که فعالیت شما را از هکرها مخفی نگاه میدارد. البته VPN ها به دلیل بودن زمان بر بودن عملیات Encryption و Decryption ممکن است سرعت دسترسی آنلاین شما را کم کنند.
استفاده از Static ARP
درج رکوردهای ARP به صورت Static می تواند ریسک مورد تهاجم قرار گرفتن را کاهش دهد. اگر در شبکه داخلی شما دو کلاینت اغلب اوقات باهم در ارتباط اند، تنظیم جدول ARP به طور Static برای این دو کلاینت می تواند یک لایه حفاظتی برای در امان ماندن از حملات اضافه کند.
روتر های CISCO می توانند تشخیص دهند عمل ARP Poisoning رخ می دهد یا خیر و در صورت رخداد آن، فعالیت آن را از سر گیرند.
اعتبارسنجی IP ها
در حالت معمول، کلاینت ها تنها از آدرس IP برای تشخیص هویت کلاینت دیگر استفاده می کنند که این عامل باعث می شود کار هکرها برای Spoofing راحت شد. یک راه حل دیگر برای در امان ماندن از حملات ARP Poisoning استفاده از نام کاربری و رمز عبور برای اعتبارسنجی کلاینت ها است. برای ساخت یک سیستم اعتبارسنجی باید آن را در سطح سازمان خود تعریف کنید و به کلاینت های معتبر، نام کاربری و رمز عبور مخصوص بدهید. این تکنیک ساده می تواند یک لایه حفاظتی دیگر به شبکه شما اضافه کند و هکرهایی که میخواهند به شبکه دسترسی غیرمجاز داشته باشند را شناسایی کند.
فیلتر کردن بسته ها (Packet Filtering)
این فیلترها بسته هایی که در شبکه ارسال می شوند را آنالیز می کنند و بسته های جعلی و کلاینت هایی که بسته جعلی می فرستند را فیلتر می کنند. علاوه بر این فیلترها می توانند بسته هایی که در واقع از بیرون آمده است ولی ادعا می کند منشاء داخلی دارند را تشخیص دهند. این امر شانس هکرها برای یک حمله موفقیت آمیز را کاهش می دهد.
استفاده از امکانات Switch ها و مودم ها
مودم هایی مانند مودم های شرکت DLink قابلیتی برای جلوگیری از حملات ARP Poisoning دارند
با وارد کردن آدرس IP روتر، gateway یا firewall و مک آدرس آن و همچنین پورتی که به آن متصل است، مودم از حملات ARP Poisoning جلوگیری می کند.
در Switch ها نیز با استفاده از Dynamic ARP inspection که با DHCP Snooping کار می کند می توان جلوی این حملات را گرفت. در Dynamic ARP inspection پورت های trusted و untrusted مشخص می شوند و آدرس IP و MAC بسته های دریافتی ARP با استفاده از دیتابیس DHCP Snooping بررسی می شوند. پورت های Access باید به عنوان untrusted و پورت های متصل به روتر و دستگاه هایی که نمی خواهید بسته های ARP آنها چک شوند را در حالت trusted قرار می دهید. از دستورات زیر برای فعال سازی این قابلیت استفاده می شود:
Switch(config)# ip arp inspection vlan 1
با استفاده از دستور زیر پورت را در حالت trusted می توانید قرار دهید:
Switch(config-if)# ip arp inspection trust
نقاط ضعف این حمله
- وقتی در یک شبکه ARP Poisoning رخ میدهد ترافیک شبکه بالا میرود و باعث DELAY یا تاخیر می شود. فرض کنید تمام ترافیکی که بین کلاینت ها رد و بدل می شود باید اول از اسنیفر عبور کند یعنی اسنیفر واسط بین کلاینت ها و GATEWAY می شود که باعث پایین آمدن سرعت می شود.
- از طرفی دیگر باید ARP Cache Entryوجود داشته باشد یعنی اسنیفر برای تولید بسته ARP جعلی به سراغ ARP Cache Table میرود و آن را Update می کند ولی خود اسنیفر نمی تواند یک نسخه Entry در جدول مک ادرس تولید کند یعنی باید از قبل وجود داشته باشد و اسنیفر، آدرس MAC کلاینت هدف را داشته باشد تا اسنیفر بتواند آن را اصلاح کند.
- از طرف دیگر این حمله با استفاده از ARP کار میکند که این پروتکل درون لایه ۲ قرار دارد یعنی برای این کار شما باید درون LAN باشید و بیرون از این Network شما نمی توانید اسنیف کنید.
مطالب زیر را حتما مطالعه کنید
DNS Rebinding چیست و چگونه کار می کند؟
کاربرد هوش مصنوعی ( ChatGPT ) در امنیت سایبری
autonomous system یا ASN چیست؟
IP spoofing چیست ؟ و استفاده از uPRF به منظور جلوگیری از این حمله
تحلیل و اکسپلویت آسیب پذیری Spring4Shell
APT چیست؟ : ( Advanced Persistent Threat )
1 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
awli