حمله مرد میانی

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

حملهٔ مرد میانی (اغلب با مخفف MITM و همچنین با عنوان حمله ی bucket brigade یا گاهی اوقات با عنوان حمله ی ژانوس شناخته شده‌است.) در رمزنگاری و امنیت رایانه شکلی از استراق سمع فعال می‌باشد که در آن حمله کننده اتصالات مستقلی را با قربانیان برقرار می‌کند و پیام‌های مابین آن‌ها را بازپخش می‌کند، به گونه‌ای که آن‌ها را معتقد می‌کند که با یکدیگر به طور مستقیم در طول یک اتصال خصوصی، صحبت می‌کنند در حالی که تمام مکالمات توسط حمله کننده کنترل می‌شود. حمله کننده باید قادر به استراق سمع تمام پیام‌های رد و بدل شده مابین دو قربانی و گذاشتن پیغام جدید که در بسیاری از شرایط درست کار کند، باشد.(برای مثال، حمله گری با حوزهٔ دریافت یک پیام Wi-Fi wireless access point، می‌تواند خودش را به عنوان یک مرد میانی جا بزند).

یک مهاجم مرد میانی در صورتی می‌تواند موفق شود که هر نقطهٔ انتهایی را با رضایت دیگری جعل هویت کند. این یک حمله (یا نبودِ) احراز هویت دو جانبه‌است. اکثر پروتکل‌های رمز¬نگاری شامل بعضی از اشکال احراز هویت نقاط انتهایی به خصوص برای جلوگیری از حملات MITM می‌باشند. برای مثال، SSL می‌تواند یک یا هردو طرف را با استفاده از مجوز گواهی مورد اعتماد دو طرفه، احراز هویت کند.

نیازی به انتقال بیش تر در طول یک کانال امن[ویرایش]

به استثنای پروتکل Interlock، همهٔ سیستم‌های رمزنگاری که در مقابل حملهٔ MITM ایمن هستند، نیازمند تبادل یا انتقال اطلاعات اضافی روی بسیاری از کانال‌های امن می‌باشند. بسیاری از روش‌های توافق کلید، با نیازهای امنیتی مختلف برای کانال‌های ایمن، گسترش داده شده‌است.

نمونه‌ای از یک حمله[ویرایش]

فرض کنید Alice می‌خواهد با Bob ارتباط برقرار کند. ضمناً، Mallory می‌خواهد که جلوی این مکالمه را با استراق سمع و احتمالاً، رساندن پیغام غلط به Bob، بگیرد.

ابتدا، Alice کلید عمومی اش را از Bob درخواست می‌کند. اگر Bob کلید عمومی اش را به Alice بدهد و Mallory قادر به استراق سمع آن باشد، یک حملهٔ مرد میانی شروع می‌شود. Mallory یک پیام جعلی را که مدعی ارسال از طرف Bob است، به Alice ارسال می‌کند، اما به جای آن کلید عمومی خودش را جایگزین آن می‌کند.

Alice با اعتقاد به اینکه کلید عمومی Bob را در اختیار دارد، پیامش را با کلید Mallory رمز می‌کند و پیام رمز شده را به Bob برمی گرداند. Mallory دوباره جلوی پیام را می‌گیرد و آن را با استفاده از کلید خصوصی او رمزگشایی می‌کند و احتمالاً اگر بخواهد، آن را تغییر داده و دوباره آن را با استفاده از کلید عمومی Bob رمز کرده و به Alice بر می‌گرداند. هنگامی که Bob پیام رمز شدهٔ جدید را دریافت می‌کند، او گمان می‌کند که پیام از طرف Alice آمده‌است.

Alice پیامی را به Bob ارسال می‌کند. در حالی که، توسط Mallory استراق سمع می‌شود.

Alice "Hi Bob, it's Alice. Give me your key"-->  Mallory      Bob

Mallory دوباره این پیام را برای Bob مخابره می‌کند. Bob توانایی تشخیص پیام واقعی از سوی Alice را ندارد.

Alice      Mallory "Hi Bob, it's Alice. Give me your key"-->   Bob

Bob با کلید رمز شده‌اش پاسخ می‌دهد.

Alice      Mallory   <--[Bob's_key] Bob

Mallory کلید Bob را با کلید خودش معاوضه کرده و پیامی را که مدعی کلید Bob است، مجدداً برای Alice ارسال می‌کند.

Alice   <--[Mallory's_key] Mallory      Bob

Alice با اعتقاد به این موضوع که کلید در دست او متعلق به Bob است، پیام را رمز کرده و گمان می‌کندکه فقط Bob می‌تواند آن را بخواند.

Alice "Meet me at the bus stop!"[encrypted with Mallory's key]-->   Mallory      Bob

با این وجود، به دلیل اینکه پیام با کلید Mallory رمز شده‌است، Mallory می‌تواند آن را رمزگشایی، خوانده و مدیریت کند(و در صورت مطلوب بودن)، دوباره آن را با کلید عمومی Bob رمز کرده و به سمت Bob هدایت کند.

Alice'      Mallory "Meet me at 22nd Ave!"[encrypted with Bob's key]-->   Bob

Bob تصور می‌کند که این پیام، یک ارتباط ایمن از طرف Alice است.

این مثال نیاز Alice و Bob را برای داشتن راهی به منظور اطمینان از این که آن‌ها به درستی از کلید عمومی یکدیگر به جای کلید عمومی مهاجم استفاده کنند، نشان می‌دهد. در غیر این صورت، چنین حملاتی معمولاً ممکن و اصولاً در مقابل هر پیامی است که با استفاده از فناوری کلید عمومی ارسال می‌شود. خوشبختانه تکنیک‌های مختلفی برای کمک به دفاع در برابر حملات MITM وجود دارند.

دفاع در برابر حمله[ویرایش]

انواع دفاع در برابر حملات MITM، از تکنیک‌های احراز هویت استفاده می‌کنند که بر پایهٔ موارد زیر است:

  • زیرساخت کلید عمومی
    • احراز هویت متقابل PKI. دفاع عمده در یک سناریو احراز هویت دو طرفه‌است. در این مورد علاوه بر این که برنامه کاربر را اعتبارسنجی می‌کند (در صورتی که برنامه گول زننده باشد، استفادهٔ زیادی ندارد)، دستگاه‌های کاربران نیز برنامه را تایید می‌کند. از این رو برنامه‌های گول زننده را از برنامه‌های اصلی تشخیص می‌دهد.
  • احراز هویت دو طرفه قوی تر، همچون:
    • کلیدهای محرمانه (معمولاً با رمزی حاوی بی نظمی زیاد اطلاعات و بنابراین، ایمنی بالا) و یا
    • گذرواژه‌ها (معمولاً با رمزی حاوی بی نظمی کم اطلاعات و بنابراین، دارای ایمنی کمتر است.)
  • آزمون تاخیر زمانی، از جمله محاسبات طولانی رمزنویسی تابع hash، که به ۱۰ ثانیه منجر می‌شود. اگر کار هر دو طرف به طور معمول ۲۰ ثانیه طول بکشد و محاسبات برای رسیدن به هر یک از طرفین ۶۰ ثانیه طول بکشد، این می‌تواند نشان دهندهٔ شخص ثالث باشد.
  • one time padکه نسبت به حملات MITM مصون می‌باشند، با فرض امنیت و اطمینان به one time pad.
  • تصدیق Carry-forward
  • آزمودن که با حذف گواهی‌های به خطر افتادهٔ صادره از مراجع صادرکنندهٔ گواهی برای رایانه‌های واقعی، انجام می‌شود و گواهی‌های به خطر افتاده، پیش از حذف برای تحلیل، به ناحیهٔ sandbox فرستاده می‌شوند.

به طور کلی، درستی کلیدهای عمومی را باید از طریق روشی مطمئن شد، اما احتیاج به محرمانه بودن کلید ندارد. گذرواژه‌ها و کلیدهای رمز به اشتراک گذاشته شده، نیازهای محرمانگی بیش تری را طلب می‌کنند. کلیدهای عمومی به وسیلهٔ یک مرکز تایید گواهی که کلید عمومی آن از طریق یک کانال امن (برای نمونه، توسط یک مرورگر وب یا یک برنامهٔ نصب شدهٔ سیستمی) توزیع شده‌است، بررسی می‌شود. کلیدهای عمومی نیز می‌توانند از طریق یک وب سایت مورد اعتماد که کلید عمومی اش را از طریق یک کانال امن (برای نمونه با جلسات چهره به چهره)توزیع کرده، تایید بشود.

به منظور طبقه بندی پروتکل‌هایی که با استفاده از شکل‌های گوناگون کلید و گذرواژه از حملات مرد میانی جلوگیری می‌کنند، به پروتکل Key-agreement نگاهی بیندازید.

تجزیه و تحلیل قانونی حملات MITM[ویرایش]

برای پی بردن به این موضوع که واقعاً حملهٔ MITM رخ داده‌است یا خیر، می‌توان ترافیک شبکهٔ تصرف شده را با توجه به مواردی که مشکوک به حملهٔ MITM هستند، تجزیه و تحلیل کرد. شواهد مهم برای تجزیه و تحلیل شبکه توسط افراد مظنون به حملهٔ SSL MITM، عبارتند از:

  • آدرس IP سرور
  • نام DNS سرور
  • گواهی X.509 سرور
    • آیا گواهی امضاء شده‌است؟
    • آیا گواهی توسط یک CA مورد اعتماد امضاء شده‌است؟
    • آیا گواهی باطل شده‌است؟
    • آیا گواهی به تازگی تغییر کرده‌است؟
    • آیا کاربران دیگر، در جای دیگر محیط اینترنت، گواهی مشابهی را اخذ کرده‌اند؟

رمزنویسی کوانتوم[ویرایش]

پروتکل‌های رمزنویسی کوانتوم به طور معمول همه یا بخشی از ارتباطات کلاسیک خود را با یک رویهٔ احراز هویت ایمن و بی قید و شرط، احراز هویت می‌کنند. برای مثال احراز هویت Wegman-Carter.

آن سوی رمزنویسی[ویرایش]

MITM باید به عنوان مشکلی کلی که ناشی از حضور عناصر واسطه به عنوان نمایندهٔ کاربران هر دو طرف است، دیده شود. اگر آن‌ها دارای صلاحیت و قابل اعتماد باشند، همه چیز ممکن است خوب باشد. اما اگر آن‌ها دارای این ویژگی‌ها نباشند، هیچ چیز خوب نخواهد بود. چگونه می‌توان این موارد را تشخیص داد؟ با عملکردی در نقش یک پروکسی و معرفی خود به عنوان کاربر مورد اطمینان به هر دو طرف، مهاجم میانی می‌تواند شرارت‌های زیادتری را انجام دهد که شامل حملات مختلف علیه محرمانه بودن یا درستی دادهٔ در حال عبور از آن، می‌باشد.

یک حملهٔ مرد میانی رمزنگاری نشدهٔ قابل توجه، توسط یکی از نسخه‌های روتر شبکهٔ بی سیم Belkin در سال ۲۰۰۳ انجام شد. به گونه‌ای که به صورت تناوبی، بر روی یک اتصال HTTP، که از طریق آن مسیر یابی انجام می‌شد، تسلط می‌یافت. این موضوع برای هدایت ترافیک به سمت مقصد شکست می‌خورد، اما در عوض، خودش به عنوان سرور منتخب پاسخ می‌داد. پاسخی که ارسال می‌شد، در مکانی از صفحهٔ وب مورد درخواست کاربر، تبلیغات برای یکی دیگر از محصولات Belkin بود. پس از اعتراض کاربران دارای دانش فنی، این قابلیت از نسخه‌های بعدی firmware روتر برداشته شد.

نمونهٔ دیگری از حملهٔ مرد میانی رمزنگاری نشده، مزرعهٔ پورنو Turing است. Brain Warner می‌گوید: این یک "حملهٔ امکان پذیر" است که ایجادکنندگان اسپم می‌توانند از آن برای غلبه بر CAPTCHAها استفاده کنند. ایجادکنندگان اسپم‌ها یک وب سایت پورنوگرافیک راه اندازی می‌کنند که برای دسترسی به محتویات آن، کاربر می‌بایست CAPTCHAهای مربوط به پرسش‌ها را حل کند. با این حال، Jeff Atwood خاطرنشان می‌کند که این حملات صرفاً تئوری هستند. تا سال ۲۰۰۶ شواهدی مبنی بر اینکه ایجاد کنندگان اسپم‌ها یک مزرعهٔ پورن Turing ساخته باشند، وجود نداشت. بنابراین، همان طور که در داستان‌های خبری اکتبر ۲۰۰۷ گزارش شد، ایجادکنندگان اسپم‌ها در واقع یک بازی ویندوزی ساخته بودند که در آن کاربران، CAPTCHAهای سرویس ایمیل یاهو را تایپ کرده و با عکس‌های پورنو پاداش داده شده‌اند. این به ایجادکنندگان اسپم‌ها اجازهٔ ایجاد حساب کاربری پست الکترونیک، به طور موقت و مجانی و با امکان ارسال اسپم را می‌دهد.

پیاده سازی‌ها[ویرایش]

  • dsniff- ابزاری برای حملات SSH و SSL MITM
  • Cain and Abel- ابزار GUI ویندوز که توانایی انجام حملات MIMT را از طریق شنود شبکه و مسمومیت ARP دارد.
  • Ettercap- ابزاری برای حملات MITM مبتنی بر LAN
  • Karma- ابزاری که از حملات 802.11 Evil Twin، در انجام حملات MITM استفاده می‌کند.
  • [۱]- ابزاری که حملات MITM مبتنی بر ۸۰۲٫۱۱ را نشان می‌دهد.
  • SSLStrip- ابزاری برای حملات MITM مبتنی بر SSL.
  • [۲]- ابزاری برای حملات MITM مبتنی بر SSL. در آغاز، به منظور بهره برداری از نقیصه‌ای در اینترنت اکسپلورر، ساخته شد.
  • Intercepter-NG گذرواژهٔ شبکهٔ ویندوز با توانایی مسمومیت ARP. شامل SSLStrip برای حملات MITM مبتنی بر SSL است.
  • Mallory- پروکسی MiTMing TCP و UDP شفاف. قابل تعمیم به MiTM SSL, SSH و بسباری از پروتکل‌های دیگر.
  • wsniff- ابزاری برای حملات MITM مبتنی بر HTTP/پروتکل امن انتقال ابرمتن.
  • کارت خوان‌های اضافی و روشی برای جدا کردن کلید فشار بر روی یک ماشین سخنگوی خودکار.

همچنین مشاهده کنید[ویرایش]

  • Man-in-the-browser- نوعی از MITM مرورگر وب
  • Boy-in-the-browser- نوعی ساده از MITM مرورگر وب
  • Aspidistra transmitter- فرستندهٔ رادیویی بریتانیا که برای عملیات نفوذ جنگ جهانی دوم استفاده می‌شد."یک حملهٔ مرد میانی اولیه"
  • Babington Plot
  • امنیت رایانه‌ای- طراحی سیستم‌های کامپیوتری امن
  • تحلیل رمز- هنر افشای پیام‌های رمزگذاری شده با دانش ناقص در مورد این که چگونه آنها رمزگذاری شده‌اند.
  • امضای دیجیتال- رمزنگاری تضمین صحت متن، معمولاً فقط از نویسنده انتظار می‌رود که قادر به انجام نتیجهٔ یک محاسبه باشد.
  • Interlock Protocol- پروتکلی خاص برای دور زدن حملهٔ مرد میانی، زمانی که امکان به خطر افتادن کلید وجود دارد.
  • مدیریت کلید- چگونه مراحل تولید، تبادل و ذخیره سازی کلیدهای رمزنگاری را مدیریت کنیم.
  • Key-agreement protocol- پروتکلی برای ایجاد یک کلید است که در آن هر دو طرف می‌توانند اطمینان داشته باشند.
  • Mutual authentication- چگونه ارتباط دو طرفه، اطمینان از هویت یکدیگر را برقرار می‌کند.
  • توافق کلید تصدیق شده بر پایه رمزعبور- پروتکلی برای ایجاد یک کلید با استفاده از یک گذرواژه.
  • رمزنگاری کوانتومی- استفاده از مکانیک کوانتوم برای فراهم کردن امنیت در رمزنگاری (در حالی که روش قبلی به تابع یک طرفه اعتماد می‌کند).
  • Secure channel- راه برقراری ارتباط مقاوم در برابر رهگیری و دستکاری است.
  • حمله جعل

منابع[ویرایش]

  • introduction to man in the middle attacks [۳]
  • ^ "Network Forensic Analysis of SSL MITM Attacks". NETRESEC Network Security Blog. Retrieved March 27, 2011.
  • ^ Wegman-Carter authentication
  • ^ Leyden, John (2003-11-07). "Help! my Belkin router is spamming me". The Register.
  • ^ "Petmail Documentation: Steal People's Time To Solve CAPTCHA Challenges". Retrieved 2008-05-19.
  • ^ "PC stripper helps spam to spread". BBC News. 2007-10-30

پیوند به بیرون[ویرایش]