
حمله مرد میانی (MITM) چیست؟
حمله Man in the Middle (MITM) یک اصطلاح کلیه که زمانی به کار میره که مهاجم خودش رو بین یک کاربر و یک برنامه قرار میده یا برای شنود اطلاعات یا برای جعل هویت یکی از طرفین بهطوریکه به نظر برسه یک تبادل اطلاعات عادی در حال انجامه.
هدف این حمله سرقت اطلاعات شخصی مثل اطلاعات ورود به حساب کاربری، جزئیات حسابها و شماره کارتهای اعتباری هست.
معمولاً کاربران برنامههای مالی، کسبوکارهای SaaS، سایتهای تجارت الکترونیک و هر وبسایتی که نیاز به ورود کاربر داره، در معرض این نوع حمله قرار میگیرن.
اطلاعاتی که در طول این حمله به دست میاد میتونه برای اهداف مختلفی مورد استفاده قرار بگیره، مثل:
- سرقت هویت
- انتقال غیرمجاز وجه
- تغییر غیرقانونی رمز عبور
علاوه بر این، هکرها میتونن از این حمله برای نفوذ به محیطهای امنیتی و به دست آوردن دسترسی در مراحل اولیه یک حمله پیچیده و مداوم (Advanced Persistent Threat – APT) استفاده کنن.
به طور کلی، یک حمله MITM مثل اینه که نامهرسان شما پاکت حاوی صورتحساب بانکیتون رو باز کنه، اطلاعات حساب شما رو یادداشت کنه و بعد دوباره پاکت رو ببنده و به دست شما برسونه، بدون اینکه شما متوجه این نفوذ بشید.

روند حمله مرد میانی (MITM)
اجرای موفق یک حمله MITM شامل دو مرحله اصلی هست: رهگیری (Interception) و رمزگشایی (Decryption)
رهگیری (Interception)
اولین مرحله از حمله، رهگیری ترافیک کاربر از طریق شبکه مهاجم قبل از رسیدن به مقصد مورد نظره.
رایجترین و سادهترین روش برای این کار یک حمله غیرفعال هست که در اون هکر یک هاتاسپات وایفای مخرب و رایگان در دسترس عموم قرار میده. این شبکهها معمولاً با نامهایی شبیه به مکانهای عمومی نامگذاری میشن و هیچ رمز عبوری ندارن.
وقتی قربانی به این هاتاسپات متصل میشه، هکر به راحتی میتونه به تمام دادههای رد و بدل شده بهصورت آنلاین دسترسی داشته باشه.
هکرهایی که میخوان بهصورت فعالتر عمل کنن، ممکنه یکی از این حملات رو اجرا کنن:
- IP Spoofing: در این روش هکر با تغییر هدرهای بستههای اطلاعاتی در یک آدرس IP، خودش رو به عنوان یک برنامه واقعی جا میزنه. در نتیجه، کاربرانی که سعی دارن به یک URL معتبر دسترسی پیدا کنن، به سایت مهاجم هدایت میشن.
- ARP Spoofing: این حمله با ارسال پیامهای جعلی ARP باعث میشه که آدرس MAC هکر با یک آدرس IP معتبر در شبکه محلی (LAN) مرتبط بشه. به این ترتیب، دادههایی که کاربر به آدرس میزبان ارسال میکنه، مستقیماً به دست هکر میرسه.
- DNS Spoofing (یا DNS Cache Poisoning): در این روش، هکر به یک سرور DNS نفوذ میکنه و رکورد آدرس یک وبسایت رو تغییر میده. در نتیجه، کاربرانی که قصد دسترسی به اون سایت رو دارن، به یک سایت جعلی که تحت کنترل هکره هدایت میشن.
رمزگشایی (Decryption)
بعد از رهگیری دادهها، هر گونه ارتباط SSL دوطرفه باید رمزگشایی بشه بدون اینکه کاربر یا برنامه متوجه بشه. برای این کار چند روش وجود داره:
- HTTPS Spoofing: وقتی کاربر درخواست اتصال به یک سایت امن میفرسته، هکر یک گواهی جعلی برای مرورگر قربانی ارسال میکنه. این گواهی دارای یک امضای دیجیتال مرتبط با اپلیکیشن آلوده است که مرورگر طبق لیست سایتهای معتبر اون رو تایید میکنه. بعد از تایید، هکر به اطلاعاتی که کاربر وارد میکنه، دسترسی پیدا میکنه.
- SSL BEAST (Browser Exploit Against SSL/TLS): این حمله یک آسیبپذیری در نسخه 1.0 پروتکل TLS رو هدف قرار میده. در این روش، سیستم قربانی به یک اسکریپت مخرب جاوا آلوده میشه که کوکیهای رمزگذاریشدهای که از یک وب اپلیکیشن ارسال میشن رو رهگیری میکنه. سپس با شکستن الگوریتم Cipher Block Chaining (CBC) کوکیها و توکنهای احراز هویت رمزگشایی میشن.
- SSL Hijacking: در این حمله، هکر در حین TCP Handshake کلیدهای احراز هویت جعلی رو به کاربر و برنامه ارسال میکنه. این کار یک اتصال ظاهراً ایمن رو ایجاد میکنه، در حالی که هکر کنترل کامل جلسه ارتباطی رو به دست میگیره.
- SSL Stripping: این روش باعث میشه یک اتصال HTTPS به HTTP تغییر پیدا کنه. مهاجم با رهگیری فرآیند احراز هویت TLS که از برنامه به کاربر ارسال میشه، نسخه رمزگذارینشده وبسایت رو به کاربر نمایش میده. در همین حال، هکر همچنان اتصال امن خودش رو با برنامه حفظ میکنه و به این ترتیب کل جلسه کاربر برای هکر قابل مشاهده میشه.
جلوگیری از حمله مرد میانی (MITM)
برای جلوگیری از حملات MITM، کاربران باید چندین اقدام عملی انجام بدن و اپلیکیشنها هم باید از روشهای رمزگذاری و احراز هویت استفاده کنن.
برای کاربران:
- از اتصال به Wi-Fiهایی که رمز عبور ندارن پرهیز کنید.
- به هشدارهای مرورگر در مورد ناامن بودن یک وبسایت توجه کنید.
- وقتی از یک برنامه امن استفاده نمیکنید، فوراً خارج بشید.
- هنگام انجام تراکنشهای حساس، از شبکههای عمومی مثل کافهها یا هتلها استفاده نکنید.
برای مدیران وبسایت:
استفاده از پروتکلهای ارتباطی ایمن مثل TLS و HTTPS به جلوگیری از حملات جعل هویت کمک میکنه، چون این پروتکلها دادههای ارسال شده رو بهصورت قوی رمزگذاری و احراز هویت میکنن. این کار از رهگیری ترافیک سایت جلوگیری میکنه و از رمزگشایی اطلاعات حساس مثل توکنهای احراز هویت ممانعت میکنه.
برای برنامهها:
بهترین روش اینه که اپلیکیشنها از SSL/TLS برای ایمن کردن تمام صفحات سایت استفاده کنن، نه فقط صفحاتی که نیاز به ورود کاربر دارن. این کار احتمال سرقت کوکیهای نشست (Session Cookies) توسط هکرها رو کاهش میده، مخصوصاً وقتی کاربر وارد حساب خودش شده و در بخشهای ناامن سایت در حال گشتوگذاره.
استفاده از Imperva برای محافظت در برابر حملات MITM
حملات MITM معمولاً به دلیل پیادهسازیهای نامناسب SSL/TLS رخ میدن، مثل مواردی که امکان بهرهبرداری از آسیبپذیریهایی مثل SSL BEAST رو فراهم میکنن یا از رمزنگاریهای قدیمی و ناامن پشتیبانی میکنن.
برای مقابله با این تهدیدها، Imperva به مشتریان خودش یک رمزگذاری SSL/TLS بهینه از ابتدا تا انتها ارائه میده که به عنوان بخشی از مجموعه خدمات امنیتی این شرکت در دسترسه.
گواهیها بر روی شبکه تحویل محتوای (CDN) Imperva میزبانی میشن و به شکلی بهینه پیادهسازی شدن تا از حملاتی که SSL/TLS رو به خطر میندازن، مثل حملات Downgrade (مثلاً SSL Stripping) جلوگیری کنن و همچنین با آخرین استانداردهای PCI DSS سازگار باشن.
این سرویس بهعنوان یک سرویس مدیریتشده ارائه میشه و پیکربندی SSL/TLS بهروز نگه داشته میشه و توسط تیمی از متخصصان امنیتی مدیریت میشه. این کار علاوه بر رعایت استانداردهای انطباق، به مقابله با تهدیدات جدید مثل آسیبپذیری Heartbleed هم کمک میکنه.
در نهایت، با استفاده از داشبورد ابری Imperva، مشتریان میتونن سیاستهای HTTP Strict Transport Security (HSTS) رو هم پیکربندی کنن تا استفاده از امنیت SSL/TLS رو در چندین زیر دامنه enforce کنن. این کار به طور مؤثری از وبسایت و برنامههای تحت وب در برابر حملات Downgrade و سرقت کوکیها محافظت میکنه.
در انتها اگر این مطلب برای شما مفید بود، خوشحال میشیم نظرات و سوالاتتون رو با ما به اشتراک بگذارین.