شما رایانه قابل‌حمل خود را به شبکه وای‌فای اشتراکی در یک سالن فرودگاه یا فضای کار اشتراکی متصل می‌کنید. تنها چند میلی‌ثانیه پس از برقراری پیوند رادیویی، دستگاهی نفوذگر در همان زیرشبکه اقدام به ارسال رگباری از فریم‌های دستکاری‌شده پروتکل تفکیک نشانی (ARP) می‌نماید. سیستم‌عامل کاربر هیچ‌گونه هشدار امنیتی صادر نمی‌کند و اتصال به اینترنت بدون اختلال ظاهری ادامه می‌یابد؛ اما جدول نگاشت سخت‌افزاری دستگاه بازنویسی شده و نفوذگر در جایگاه نامرئی مرد میانی (Man-in-the-Middle یا MitM) میان شما و مسیریاب شبکه قرار می‌گیرد.

این تهاجم فراگیر در شبکه‌های محلی با عناوینی نظیر جعل پروتکل ARP یا مسموم‌سازی حافظه پنهان ARP (ARP Cache Poisoning) شناخته می‌شود. این پروتکل که در نوامبر ۱۹۸۲ توسط دیوید سی. پلامر در سند RFC 826 سازمان IETF استانداردسازی شد، برای شبکه‌های اترنت محلی بر پایه اعتماد مطلق میان گره‌ها طراحی گردید. در این استاندارد هیچ‌گونه ساختار احراز هویت داخلی، امضای دیجیتال رمزنگاری‌شده یا سازوکار اعتبارسنجی جفت‌های درخواست و پاسخ تعبیه نشده است.

در نتیجه، هر گره در بستر شبکه محلی اترنت یا وای‌فای می‌تواند مالکیت هر نشانی IP دلخواهی را ادعا کند و بستری شفاف برای استراق سمع داده‌های خام، تنزل اتصال‌های رمزنگاری‌شده از طریق SSL Stripping و دستکاری جریان‌های متنی ایجاد نماید.

[رایانه میزبان کاربر]                   [گره نفوذگر میانی (MitM)]              [مسیریاب درگاه محلی]
  IP: 192.168.1.50                        IP: 192.168.1.105                      IP: 192.168.1.1
  MAC: AA:AA:AA:AA:AA:AA                  MAC: BB:BB:BB:BB:BB:BB                 MAC: CC:CC:CC:CC:CC:CC
         │                                       │                                         │
         │ <── پاسخ جعلی پروتکل ARP ─────────────┤                                         │
         │     "192.168.1.1 دارای مک BB:BB است"  │                                         │
         │                                       ├──── پاسخ جعلی پروتکل ARP ─────────────> │
         │                                       │     "192.168.1.50 دارای مک BB:BB است"
         ▼                                       ▼                                         ▼
   [حافظه مسموم‌شده ARP]                   [پل استراق سمع و رصد داده]                [حافظه مسموم‌شده ARP]
   192.168.1.1 -> BB:BB:BB:BB:BB:BB        تحلیل و بازفروشی بسته‌های خام             192.168.1.50 -> BB:BB:BB:BB:BB:BB

کاستی ساختاری: سازوکار بدون وضعیت در استاندارد RFC 826

برای درک چگونگی اجرای این حمله، لازم است پیوند میان لایه ۳ (لایه شبکه در IPv4) و لایه ۲ (لایه پیوند داده در اترنت 802.3) واکاوی شود.

هنگامی که رایانه قصد دارد بسته‌ای را به مقصدی در خارج از زیرشبکه محلی ارسال کند، داده‌ها درون یک فریم اترنت قرار می‌گیرند. سرآیند فریم به نشانی فیزیکی MAC درگاه محلی نیازمند است. اگر این نگاشت در حافظه پنهان هسته وجود نداشته باشد، درخواستی همگانی (ARP Request) ارسال می‌شود:

"Who has 192.168.1.1? Tell 192.168.1.50" (انتشار همگانی: FF:FF:FF:FF:FF:FF)

مسیریاب معتبر با یک پیام پاسخ انفرادی (ARP Response) واکنش نشان می‌دهد:

"192.168.1.1 is at CC:CC:CC:CC:CC:CC" (تک‌پخشی به: AA:AA:AA:AA:AA:AA)

آسیب‌پذیری ریشه‌ای در شیوه مواجهه هسته سیستم‌عامل با این پاسخ‌ها نهفته است: ۱. پذیرش بدون بررسی وضعیت پیشین (Stateless Acceptance): سامانه‌ها با دریافت هر پاسخ ARP، جدول نگاشت خود را بی‌درنگ به‌روزرسانی می‌کنند، حتی اگر اساساً درخواستی ارسال نکرده باشند. به این بسته‌ها Gratuitous ARP گفته می‌شود. ۲. اولویت قطعی آخرین بسته دریافتی: در صورت ورود پاسخ‌های متناقض، بسته‌ای که دیرتر می‌رسد ورودی‌های قبلی حافظه موقت را بازنویسی می‌کند. ۳. نبود سازوکار تایید هویت فرستنده: پشته شبکه هیچ امکانی برای ارزیابی صحت مالکیت نشانی اعلام‌شده ندارد.

با ارسال رگباری پاسخ‌های ساختگی با فاصله‌های زمانی ۱ تا ۲ ثانیه برای کاربر و مسیریاب، نفوذگر موقعیت استراق سمع پایدار خود را حفظ می‌کند. کلیه بسته‌های متصل به اینترنت ابتدا از کارت شبکه متخاصم عبور کرده و سپس بازهدایت می‌گردند.

+-----------------------------+-------------------------------+---------------------------------+
| لایه‌بندی مدل OSI           | پروتکل اجرایی                 | وضعیت امنیت در شبکه محلی        |
+-----------------------------+-------------------------------+---------------------------------+
| لایه ۲ (پیوند داده)         | ARP RFC 826 / اترنت           | بدون احراز هویت، اعتماد کورکورانه|
| لایه ۳ (شبکه)               | IPv4 / ICMP                   | مستعد انحراف مسیر فیزیکی        |
| لایه ۴ (انتقال)             | TCP / UDP (پورت‌های ۵۳، ۸۰)   | نمایان بودن درگاه و تاخیرها     |
| لایه ۷ (کاربرد)             | HTTP، پرس‌وجوی آشکار DNS       | افشای محتوای متن‌های خام        |
+-----------------------------+-------------------------------+---------------------------------+

بردارهای تهاجمی ناشی از استراق سمع فریم‌های ARP

تسلط بر مسیر تبادل داده میان میزبان و مسیریاب، مجاری نفوذ گسترده‌ای پیش روی مهاجم می‌گشاید:

  • شنود محتوا و استخراج متاداده: تبادلات غیررمزنگاری‌شده نظیر استعلام‌های استاندارد پورت ۵۳ در سامانه DNS و ترافیک پورت ۸۰ کاملاً افشا می‌شوند. حتی در پیوندهای امن TLS، آدرس‌های IP میزبان و اندازه‌های تبادل داده در صورت غیرفعال بودن ECH آشکار باقی می‌مانند.
  • تنزل پروتکل امنیتی (SSL Stripping): با به‌کارگیری ابزارهایی مانند sslstrip، نفوذگر مانع هدایت موفق کاربر از پروتکل ناامن HTTP به پروتکل امن HTTPS می‌شود و قربانی را در شرایط ارتباط متن آشکار نگه می‌دارد.
  • جعل و تغییر پاسخ‌های DNS: از آنجا که بسته‌های خروجی UDP 53 در اختیار مهاجم است، وی با تولید سریع پاسخ‌های گمراه‌کننده، کاربر را به درگاه‌های فیشینگ و سرقت داده هدایت می‌کند.
  • مسدودسازی پنهانی ارتباط (Blackholing DoS): مهاجم پس از مسموم‌سازی جدول، تمامی بسته‌ها را بی‌صدا نابود ساخته و بدون قطع ارتباط وای‌فای، دسترسی به اینترنت را قطع می‌کند.

خنثی‌سازی ساختاری از طریق رمزنگاری تونل VPN لایه ۳

تمهیدات سخت‌افزاری مانند بازرسی پویای ARP (DAI) مختص شبکه‌های محلی شرکتی است. در محیط‌های وای‌فای عمومی، کاربران امکان دخالت در معماری سوئیچ‌ها را ندارند.

راهکار بنیادین، پوشش داده‌ها درون یک مجرای رمزنگاری‌شده در لایه ۳ (لایه شبکه) از طریق پروتکل‌های نوین VPN است.

[داده‌های لایه کاربردی: وب، پیام‌رسان]
                  │
                  ▼
[لایه ۳: موتور پردازش رمزنگاری WireGuard / RiceGuard]
  ├─ الگوریتم احراز هویت‌شده: ChaCha20-Poly1305 (کلید ۲۵۶ بیتی)
  └─ رابط مجازی شبکه: tun0 / wg0 (مجرای نقطه به نقطه مجزا)
                  │
                  ▼
[لایه ۲ فیزیکی: فریم اترنت بر روی wlan0]
  ├─ مک مقصد: BB:BB:BB:BB:BB:BB (نشانی فیزیکی مهاجم مسموم‌کننده)
  └─ محتوای بسته: متن رمزشده کدر با حداکثر بی‌نظمی آنتروپی
                  │
                  ▼
[گره استراق سمع نفوذگر]
  ├─ به چنگ آوردن فریم اترنت: موفق (در لایه فیزیکی)
  ├─ خواندن محتوای بسته: ناممکن (متن رمزشده کاملاً ناخوانا)
  ├─ دستکاری محتوای بسته: ناممکن (برچسب Poly1305 مانع پذیرش بسته می‌شود)
  └─ اجرای SSL Stripping: ناممکن (فقدان نشست متنی در لایه خارجی)

با فعال‌سازی اتصال امن VPN: ۱. پوشش داده‌های فیزیکی در قالب رمز: هرچند فریم‌های اترنت فیزیکی به سوی نشانی کارت مهاجم رانده می‌شوند، کلیه بایت‌های محموله متنی کدر و غیرقابل شکستن خواهند بود. ۲. اعتبارسنجی تمامیت داده‌ها: پروتکل‌های WireGuard و RiceGuard از شناسه اعتبارسنجی ۱۲۸ بیتی بهره می‌برند. در صورت تغییر حتی یک بیت، سرور درگاه بدون درنگ بسته را منهدم می‌نماید. ۳. تفکیک کامل پرس‌وجوهای DNS: تمامی درخواست‌های ترجمه دامنه به صورت رمزشده درون مجرای VPN به کارگزارهای بازگشتی اختصاصی ارسال می‌گردد. ۴. خنثی شدن تکنیک SSL Stripping: فرآیند مبادله داده‌ها از درون بستر رمزشده آغاز می‌شود و نفوذگر امکان دخل و تصرف در سازوکار ارتقای پروتکل وب را از دست می‌دهد.

توصیه‌های ایمنی برای کاربران شبکه‌های اشتراکی

  • بهره‌گیری مستمر از VPN با کلید قطع اضطراری: هنگام اتصال به وای‌فای عمومی، ارتباط رمزشده را دائم فعال نگاه داشته و مطمئن شوید سازوکار Kill Switch در صورت نوسان ارتباط، خروج داده‌ها را مسدود می‌سازد.
  • تعریف ایستا برای درگاه در سامانه‌های ثابت: در منزل یا محیط‌های اداری، نشانی فیزیکی مسیریاب را ثابت سازید:
    ip neigh add 192.168.1.1 lladdr CC:CC:CC:CC:CC:CC nud permanent dev eth0
    
    یا در محیط ویندوز با فرمان arp -s 192.168.1.1 CC-CC-CC-CC-CC-CC.
  • فعال‌سازی حالت اجباری HTTPS در مرورگر: مرورگر خود را روی حالت "تنها HTTPS" تنظیم کنید تا از تنزل ناخواسته نشست‌های وب جلوگیری شود.
  • به‌کارگیری ابزارهای پایش ARP: در سیستم‌های لینوکسی استفاده از برنامه‌هایی همچون Arpwatch به منظور آگاهی فوری از تغییر آدرس‌های مک توصیه می‌گردد.