فریب‌کاری آرپ
فریبکاری آرپ یا جعل آرپ (Arp spoofing) تکنیکی است که در آن حمله‌کننده پیام‌های جعلی آرپ را به شبکه محلی ارسال می‌کند. در اصل، هدف قرار دادن آدرس مک حمله‌کننده به همراه آدرس آی پی میزبانی دیگر (همچون درگاه پیش فرض) است، که باعث می‌شود به جای اینکه هر ترافیکی که قرار است به آن میزبان ارسال شود، به حمله‌کننده ارسال گردد.
جعل آرپ به حمله‌کننده این امکان را می دهد که فریم‌های داده را بر روی شبکه محلی از هم جدا کند، ترافیک را تغییر دهد، یا کل ترافیک را متوقف نماید. اغلب این حمله به عنوان ورودی دیگر حملات استفاده می‌شود. حملاتی نظیر محروم‌سازی از سرویس، مرد میانی، یا استراق نشست.
این حمله فقط در شبکه‌هایی قابل استفاده است که از آرپ استفاده می‌کنند و به سگمنت‌های محلی محدود شده‌اند.
آرپ پروتکل نگاشت آدرس یک پروتکل نگاشت آدرس هایلایه شبکه به آدرس‌های لایه پیوند است که به‌طور گسترده مورد استفاده قرار می‌گیرد.
زمانی که یک دیتاگرام آی پی درون شبکه محلی از میزبانی به میزبان دیگر ارسال می‌شود، آدرس آی پی مقصد باید به آدرس MAC تبدیل شود تا بتواند از طریق لایه پیوندداده ارسال گردد. وقتی که آدرس آی پی میزبان دیگر معلوم باشد و آدرس MAC آن نیاز باشد، یک بسته انتشاری بر روی شبکه محلی ارسال می‌شود. این بسته به عنوان درخواست آرپ شناخته می‌شود. ماشین مقصد با آی پی مورد نظر در درخواست آرپ، با جواب آرپ پاسخ می دهد که این پاسخ شامل آدرس MAC برای آن آدرس می‌باشد.
آرپ یک پروتکل بدون حالت است. میزبان‌های شبکه بطور خودکار تمامی جواب‌های آرپی را که دریافت می‌کنند، بدون توجه به اینکه درخواست داده باشند یا خیر، آن‌ها را کش می‌کنند. حتی مقادیر آرپی که هنوز منقضی نشده اند، با دریافت آرپ جدید از بین می روند. هیچ تابعی در پروتکل آرپ وجود ندارد که بتوان با استفاده از آن منبع ارسال‌کننده جواب آرپ را احراز هویت نماید. این رفتار یک آسیب‌پذیری است که اجازه می دهد فریب کاری آرپ اتفاق افتد.
ایده اصلی در جعل آرپ مورد حمله قرار دادن آسیب‌پذیری پروتکل آرپ، از طریق فرستادن پیام‌های جعلی آرپ درون شبکه محلی است. حملات جعل آرپ می‌تواند از جانب میزبان قربانی در شبکه محلی یا مستقیماً از سمت ماشین حمله‌کننده که مستقیماً به شبکه متصل است، انجام گیرد.
در اصل، هدف قرار دادن آدرس MAC حمله‌کننده به همراه آدرس آی پی میزبانی دیگر (همچون درگاه پیش فرض) است، که باعث می‌شود به جای اینکه هر ترافیکی که قرار است به آن میزبان ارسال شود، به حمله‌کننده ارسال گردد. حمله‌کننده می‌تواند یکی از موارد زیر را انتخاب نماید:
نگاشت‌های آی پی-به-MAC می‌تواند در کش آرپ محلی به صورت ایستا تعریف شده، و سپس میزبان‌ها از تمامی بسته‌های جواب آرپ را صرف نظر نمایند. هرچند مدخل‌های ایستا در صورت مدیریت صحیح توسط سیستم عامل، امنیت کاملی را در مقابل فریب کاری آرپ ارائه می دهند، منجر به تلاش برای پشتیبانی در درجه دوم است، به صورتی که تمام نگاشت‌های آی پی-MAC در شبکه باید به تمامی ماشین‌های دیگر توزیع شود.
نرم‌افزاری که فریب کاری آرپ را کشف می‌کند، اصولاً بر پایه بعضی از فرم‌های گواهی کردن یا چک کردن‌های بینابینی جواب‌های آرپ استوار است. سپس جواب‌های آرپی که معتبر نیستند، بلوکه خواهند شد. این تکنیک‌ها بهتر است به همراه سرور DHCP یکپارچه شود که هر دو آدرس‌های آی پی ایستا و پویا معتبر شوند. ممکن است این توانایی در میزبان‌ها به صورت جداگانه یا در سوئیچ‌های شبکه یا دیگر تجهیزات شبکه پیاده‌سازی شوند. وجود چندین آی پی که دارای یک آدرس MAC مشترک هستند ممکن است نشان دهنده حمله جعل آرپ باشد، هرچند بعضی از موارد چنین استفاده‌ای کاملاً مجاز است. در یک دیدگاه مجهولتر، دستگاهی به جواب‌های آرپ شبکه گوش داده و در صورت تغییر یک مدخل آرپ، پیام‌های ملاحظه‌ای را از طریق رایانامه ارسال می‌کند.
سیستم عاملها به صورت‌های مختلف عمل می‌کنند، به عنوان مثال، لینوکس جوابهای ناخواسته را نادیده می‌گیرد، ولی از سمتی دیگر از درخواست‌های ارسالی مشاهده شده از دیگر ماشین ها برای بروزرسانی کش خود استفاده می نماید. سولاریس فقط بروز رسانی‌هایی را قبول می‌کند که بعد از انقضای زمانی اتفاق افتد. در مایکروسافت ویندوز، مدخل‌های آرپ می‌تواند از طریق مدخل‌های رجیستری مختلفی تنظیم شود: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters, ArpCacheLife, ArpCacheMinReferenceLife, ArpUseEtherSNAP, ArpTRSingleRoute, ArpAlwaysSourceRoute, ArpRetryCount.
AntiARP نیز عمل جلوگیری از فریب کاری آرپ در سیستم عامل ویندوز در سطح کرنل انجام می‌دهد. ArpStar ماژولی برای لینوکس جهت کرنل 2.6 و روترهای Linksys است، که بسته‌هایی که نگاشت را تهدید می‌کنند را حذف می‌کند و دارای گزینه سمی کردن/التیام دادن است.
ساده‌ترین شکل گواهی کردن، استفاده از مدخل‌های فقط خواندنی و ایستا در سرویس‌های بحرانی برای کش کردن در یک میزبان می‌باشد. این امر فقط می‌تواند از حملات ساده جلوگیری کرده و قابل گسترش در شبکه‌های بزرگ نیست، چرا که نگاشت باید به ازای هر ماشین داخل شبکه انجام می‌گیرد که منجر به ایجاد یک کش آرپ (n*n) می‌شود.
تکنیک‌هایی در جعل آرپ استفاده می‌شود می‌تواند برای پیاده‌سازی تکرارهای سرویس‌های شبکه نیز مورد استفاده قرار گیرد. برای مثال، برخی نرم‌افزارها به یک سرور پشتیبان اجازه ایجاد درخواست‌های آرپ بلاعوض را می دهند، بدین منظور که سرورهای خراب را پوشش داده و به صورت شفاف تکرار را ارائه دهند.
جعل آرپ معمولاً توسط توسعه دهندگان برای ردیابی ترافیک آی پی بین دو میزبان زمانی که از یک سوئیچ استفاده می‌شود، به کار گرفته می‌شود. بعضی از ابزارهایی که می‌توان در تشخیص حملات جعل آرپ استفاده نمود: