خانه - ایمنی
مقررات. میانگین طلایی

اصل حمله

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

فرض کنید شی A قصد دارد اطلاعاتی را به شی B ارسال کند. شیء C در مورد ساختار و ویژگیهای روش انتقال داده مورد استفاده، و همچنین واقعیت انتقال برنامه ریزی شده اطلاعات واقعی که C قصد دارد رهگیری کند، دانش دارد. برای انجام یک حمله، C برای شیء A به‌عنوان B ظاهر می‌شود و به B به عنوان A اعتراض می‌کند. و برخی از اقدامات را با آن انجام می دهد (به عنوان مثال، کپی کردن یا اصلاح برای اهداف خود) داده ها را به خود گیرنده ارسال می کند - B; شیء B نیز به نوبه خود معتقد است که اطلاعات مستقیماً از A دریافت شده است.

نمونه حمله

تزریق کد مخرب

حمله Man-in-the-Middle به یک رمزنگار اجازه می دهد تا کد خود را در آن وارد کند ایمیل ها، عبارات SQL و صفحات وب (یعنی اجازه تزریق SQL، تزریق HTML/اسکریپت یا حملات XSS را می دهد) و حتی باینری های آپلود شده توسط کاربر را برای دسترسی به آن تغییر دهید. حسابکاربر یا تغییر رفتار برنامه ای که کاربر از اینترنت دانلود کرده است.

Downgrade Attack

اصطلاح «حمله کاهش رتبه» به حمله‌ای اشاره دارد که در آن یک تحلیلگر رمز، کاربر را مجبور می‌کند از توابع امن‌تر استفاده کند، پروتکل‌هایی که هنوز به دلایل سازگاری پشتیبانی می‌شوند. این نوع حمله را می توان بر روی پروتکل های SSH، IPsec و PPTP انجام داد.

SSH V1 به جای SSH V2

مهاجم ممکن است سعی کند پارامترهای اتصال بین سرور و سرویس گیرنده را هنگامی که ارتباط بین آنها برقرار می شود، تغییر دهد. طبق صحبتی که در کنفرانس بلک‌هت اروپا 2003 ارائه شد، یک تحلیلگر رمز می‌تواند با تغییر شماره نسخه «1.99» برای جلسه SSH به «1.51»، که به معنای استفاده از SSH V1 است، یک کلاینت را مجبور به شروع یک جلسه SSH1 به جای SSH2 کند. . پروتکل SSH-1 دارای آسیب پذیری هایی است که می تواند توسط یک تحلیلگر رمز مورد سوء استفاده قرار گیرد.

IPsec

در این سناریوی حمله، تحلیلگر رمزنگاری قربانی خود را گمراه می کند و فکر می کند که جلسه IPsec نمی تواند از انتهای دیگر (سرور) شروع شود. در صورتی که دستگاه میزبان در حالت برگشتی کار کند، پیام ها به طور صریح ارسال می شوند.

PPTP

در مرحله مذاکره با پارامترهای جلسه PPTP، مهاجم می تواند قربانی را مجبور به استفاده از احراز هویت کمتر امن PAP، MSCHAP V1 (یعنی «بازگرداندن» از MSCHAP V2 به نسخه 1) کند یا اصلاً از رمزگذاری استفاده نکند.

مهاجم می تواند قربانی خود را مجبور به تکرار مرحله مذاکره با پارامترهای جلسه PPTP (ارسال یک بسته Terminate-Ack) کند، رمز عبور را از یک تونل موجود بدزدد و حمله را تکرار کند.

آیا رمزگذاری کمک خواهد کرد؟

بیایید مورد یک تراکنش استاندارد HTTP را در نظر بگیریم. در این مورد، یک مهاجم به راحتی می تواند اتصال TCP اصلی را به دو اتصال جدید تقسیم کند: یکی بین خود و مشتری، دیگری بین خود و سرور. انجام این کار بسیار آسان است، زیرا به ندرت ارتباط بین کلاینت و سرور مستقیم است و در اکثر موارد آنها از طریق تعدادی سرور میانی متصل می شوند. یک حمله MITM می تواند بر روی هر یک از این سرورها انجام شود.

با این حال، اگر کلاینت و سرور با استفاده از HTTPS، پروتکلی که از رمزگذاری پشتیبانی می‌کند، با هم ارتباط برقرار کنند، می‌توان یک حمله man-in-the-middle نیز انجام داد. این نوع اتصال از TLS یا SSL برای رمزگذاری درخواست‌ها استفاده می‌کند، که به نظر می‌رسد کانال را در مقابل حملات MITM محافظت می‌کند. یک مهاجم می تواند دو جلسه SSL مستقل برای هر اتصال TCP ایجاد کند. کلاینت یک اتصال SSL با مهاجم برقرار می کند، که به نوبه خود با سرور ارتباط برقرار می کند. در چنین مواردی، مرورگر معمولا هشدار می دهد که گواهی توسط یک مرجع معتبر صدور گواهینامه امضا نشده است، اما کاربر عادی به راحتی این هشدار را نادیده می گیرد. علاوه بر این، مهاجم ممکن است گواهی امضا شده توسط یک مرجع صدور گواهینامه داشته باشد. بنابراین، پروتکل HTTPS را نمی توان در برابر حملات MITM ایمن در نظر گرفت.

تشخیص حمله MITM

برای تشخیص حمله مرد میانی، باید تجزیه و تحلیل کنید ترافیک شبکه. به عنوان مثال، برای شناسایی یک حمله SSL، باید به پارامترهای زیر توجه کنید:

  • آدرس آی پی سرور
  • سرور DNS
  • X.509 - گواهی سرور
    • آیا گواهی خود امضا شده است؟
    • آیا گواهی امضا شده است؟
    • آیا گواهی باطل شده است؟
    • آیا گواهی اخیراً تغییر کرده است؟
    • آیا مشتریان دیگری در اینترنت همین گواهی را دریافت کرده اند؟

پیاده سازی حمله MITM

برنامه های فهرست شده را می توان برای انجام حملات Man-in-the-Middle و همچنین برای شناسایی آنها و آزمایش سیستم از نظر آسیب پذیری استفاده کرد.

مثال در ادبیات

یک نمونه ادبی روشن را می توان در "داستان تزار سلتان" اثر A.S. Pushkin مشاهده کرد که در آن سه "مرد در وسط" ظاهر می شوند: یک بافنده، یک آشپز و باباریخا. آنها هستند که نامه های خطاب به تزار و مکاتبات پاسخ او را جایگزین می کنند.

همچنین ببینید

  • آسپیدیسترا (انگلیسی) - فرستنده رادیویی بریتانیایی که در جنگ جهانی دوم "تهاجم" مورد استفاده قرار گرفت، نوعی از حمله MITM.
  • توطئه بابینگتون (انگلیسی) - یک توطئه علیه الیزابت اول، که طی آن والسینگهام مکاتبات را رهگیری کرد.

حملات دیگر

  • "Man in the Browser" نوعی حمله است که در آن مهاجم قادر است فوراً پارامترهای تراکنش را تغییر داده و صفحات را کاملاً شفاف برای قربانی تغییر دهد.
  • حمله Meet-in-the-middle یک حمله رمزنگاری است که مانند حمله تولد، از تبادل بین زمان و حافظه سوء استفاده می کند.
  • "مسئول در حمله وسط" - روش موثربه اصطلاح رمزنگاری دیفرانسیل غیرممکن است.
  • حمله رله نوعی از حمله MITM است که بر اساس ارسال یک پیام رهگیری شده به گیرنده معتبر است، اما نه برای کسی که پیام برای او در نظر گرفته شده است.
  • روت کیت برنامه ای است که برای پنهان کردن آثار حضور مهاجم طراحی شده است.

ادبیات

پیوندها


بنیاد ویکی مدیا 2010.

ببینید «مردی در وسط» در فرهنگ‌های دیگر چیست:

    حمله «مرد در وسط» (به انگلیسی: Man in the middle, MitM attack) اصطلاحی در رمزنگاری است که به موقعیتی اشاره می‌کند که در آن مهاجم می‌تواند پیام‌های رد و بدل شده بین خبرنگاران را بخواند و به میل خود تغییر دهد، و هیچ یک از ... . ... ویکیپدیا

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

MITMf

بیایید با یکی از جالب ترین نامزدها شروع کنیم. این یک چارچوب کامل برای انجام حملات man-in-the-middle است که بر اساس sergio-proxy ساخته شده است. اخیراً در کالی لینوکس. برای خود نصبتنها کاری که باید انجام دهید این است که مخزن را شبیه سازی کنید و چند دستور را اجرا کنید:

# setup.sh # pip install -r requires.txt

# pip install -r requires.txt

دارای معماری است که از طریق افزونه ها قابل توسعه است. از جمله موارد اصلی می توان به موارد زیر اشاره کرد:

  • Spoof - به شما اجازه می دهد تا ترافیک را با استفاده از جعل ARP/DHCP، تغییر مسیرهای ICMP و اصلاح کوئری های DNS هدایت کنید.
  • Sniffer - این افزونه تلاش‌های ورود به پروتکل‌های مختلف را دنبال می‌کند.
  • BeEFAutorun - به شما امکان می دهد به طور خودکار ماژول های BeEF را بر اساس نوع سیستم عامل و مرورگر مشتری راه اندازی کنید.
  • AppCachePoison - یک حمله مسمومیت کش را انجام می دهد.
  • SessionHijacking - جلسات را ربوده و کوکی های حاصل را در نمایه Firefly ذخیره می کند.
  • BrowserProfiler - سعی می کند لیستی از افزونه های استفاده شده توسط مرورگر را دریافت کند.
  • FilePwn - به شما امکان می دهد فایل های ارسال شده از طریق HTTP را با استفاده از Backdoor Factory و BDFProxy جایگزین کنید.
  • Inject - محتوای دلخواه را به یک صفحه HTML تزریق می کند.
  • jskeylogger - یک keylogger جاوا اسکریپت را در صفحات مشتری جاسازی می کند.

اگر این قابلیت برای شما ناکافی به نظر می رسد، همیشه می توانید با اجرای برنامه افزودنی مناسب، عملکرد خود را اضافه کنید.

PuttyRider

ابزار دیگری که ارزش توجه دارد. درست است، بر خلاف تمام ابزارهای دیگری که امروزه در نظر گرفته می شود، بسیار تخصصی است. همانطور که خود نویسنده پروژه می گوید، او برای ایجاد چنین ابزاری از این واقعیت الهام گرفت که در طول آزمایش های نفوذ، مهمترین داده ها در سرورهای Linux/UNIX قرار داشتند که مدیران از طریق SSH/Telnet/rlogin به آنها متصل می شدند. علاوه بر این، در بیشتر موارد، دسترسی به دستگاه مدیران بسیار آسان تر از سرور مورد نظر بود. پس از نفوذ به دستگاه مدیر سیستم، تنها چیزی که باقی می ماند این است که مطمئن شوید که PuTTY در حال اجرا است و با استفاده از این ابزار، یک پل پشتی برای مهاجم ایجاد کنید.

این ابزار به شما امکان می دهد نه تنها "ارتباط" بین مدیر و سرور راه دور(از جمله رمزهای عبور)، اما همچنین دستورات پوسته دلخواه را در یک جلسه معین اجرا کنید. علاوه بر این، همه اینها برای کاربر (مدیر) کاملاً شفاف اتفاق می افتد. اگر به جزئیات فنی علاقه مند هستید، به عنوان مثال، نحوه پیاده سازی PuTTY در فرآیند، توصیه می کنم که ارائه نویسنده را بخوانید.

یک ابزار کاملاً قدیمی که بیش از هشت سال پیش متولد شد. برای جلسات شبیه سازی با سرقت کوکی ها در نظر گرفته شده است. برای ربودن جلسه، مهارت های اولیه تشخیص میزبان (در صورت اتصال به یک باز) را دارد شبکه بی سیمیا هاب) و انجام مسمومیت ARP. تنها مشکل این است که امروزه برخلاف هشت سال پیش، تقریباً همه شرکت های بزرگ مانند یاهو یا فیس بوک از رمزگذاری SSL استفاده می کنند که این ابزار را کاملاً بی استفاده می کند. با وجود این، هنوز منابع کافی در اینترنت وجود دارد که از SSL استفاده نمی کنند، بنابراین برای حذف این ابزار خیلی زود است. مزایای آن شامل این واقعیت است که به طور خودکار در فایرفاکس ادغام می شود و برای هر جلسه رهگیری یک نمایه جداگانه ایجاد می کند. منبعدر مخزن موجود است و می توانید خودتان با استفاده از دستورات زیر آن را بسازید:

# apt-get install build-essential libwxgtk2.8-dev libgtk2.0-dev libpcap-dev # g++ $(wx-config --cppflags --libs) -lpcap -o sessionthief *.cpp # setcap cap_net_raw,cap_net_admin=eip سارق جلسه

# apt-get install build-essential libwxgtk2.8-dev libgtk2.0-dev libpcap-dev

# g++ $(wx-config --cppflags --libs) -lpcap -o sessionthief *.cpp

# setcap cap_net_raw,cap_net_admin=eip sessionthief

ProxyFuzz

ProzyFuzz هیچ ارتباط مستقیمی با انجام حملات MITM ندارد. همانطور که از نام آن حدس می زنید، این ابزار برای fuzzing طراحی شده است. این یک شبکه fuzzer کوچک غیر قطعی است که در پایتون پیاده سازی شده است و به طور تصادفی محتویات بسته های ترافیک شبکه را تغییر می دهد. پشتیبانی می کند پروتکل های TCPو UDP شما می توانید آن را به گونه ای پیکربندی کنید که فقط یک طرف را مخدوش کند. هنگامی که نیاز به آزمایش سریع برخی از برنامه های شبکه (یا پروتکل) و توسعه یک PoC دارید، به کار می آید. مثال استفاده:

Python proxyfuzz -l -r

python proxyfuzz -l -r

لیست گزینه ها شامل:

  • w - تعداد درخواست های ارسال شده قبل از شروع فازبندی را مشخص می کند.
  • ج - فقط مشتری را fuzz کنید (در غیر این صورت هر دو طرف).
  • s - fuzz فقط سرور (در غیر این صورت هر دو طرف).
  • u - پروتکل UDP (در غیر این صورت از TCP استفاده می شود).

میدلر

ابزاری برای انجام حملات MITM بر روی پروتکل های مختلف ارائه شده در کنفرانس DEF CON. نسخه آلفا از پروتکل HTTP پشتیبانی می کرد و سه پلاگین جالب در زرادخانه خود داشت:

  • plugin-beef.py - چارچوب بهره برداری مرورگر (BeEF) را به هر درخواست HTTP که از شبکه محلی ارسال می شود، تزریق می کند.
  • plugin-metasploit.py - یک IFRAME را در درخواست های رمزگذاری نشده (HTTP) تعبیه می کند که اکسپلویت های مرورگر را از Metasploit بارگیری می کند.
  • plugin-keylogger.py - یک کنترل‌کننده رویداد جاوا اسکریپت onKeyPress را برای همه فیلدهای متنی که از طریق HTTPS ارسال می‌شوند تعبیه می‌کند و باعث می‌شود مرورگر رمز عبور وارد شده توسط کاربر را قبل از ارسال کل فرم، نویسه به نویسه به سرور مهاجم ارسال کند.

Middler نه تنها به طور خودکار ترافیک شبکه را تجزیه و تحلیل می کند و کوکی ها را در آن پیدا می کند، بلکه به طور مستقل آنها را از مشتری درخواست می کند، یعنی این فرآیند به حداکثر خودکار می رسد. این برنامه جمع آوری تمام حساب های محافظت نشده را تضمین می کند شبکه کامپیوتری(یا هات اسپات عمومی) که به ترافیک آن دسترسی دارد. برای اینکه برنامه به درستی کار کند، بسته های زیر باید روی سیستم نصب شوند: Scapy، libpcap، readline، libdnet، python-netfilter. متأسفانه، مدت زیادی است که مخزن به روز نشده است، بنابراین باید خودتان عملکرد جدیدی اضافه کنید.

یک ابزار کنسول که به شما امکان می دهد ترافیک HTTP را به صورت تعاملی بررسی و اصلاح کنید. به لطف چنین مهارت هایی، این ابزار نه تنها توسط نفوذگران/هکرها، بلکه توسط توسعه دهندگان معمولی که از آن، به عنوان مثال، برای اشکال زدایی برنامه های کاربردی وب استفاده می کنند، نیز استفاده می شود. با کمک آن می توانید دریافت کنید اطلاعات دقیقدر مورد درخواست هایی که برنامه می دهد و چه پاسخ هایی دریافت می کند. همچنین، mitmproxy می‌تواند به مطالعه ویژگی‌های عملکرد برخی از APIهای REST، به ویژه آنهایی که مستندات ضعیفی دارند، کمک کند.

نصب بسیار ساده است:

$ sudo aptitude نصب mitmproxy

شایان ذکر است که mitmproxy همچنین به شما این امکان را می دهد که با صدور گواهی امضا شده خود برای مشتری، ترافیک HTTPS را رهگیری کنید. مثال خوبمی توانید نحوه پیکربندی رهگیری و اصلاح ترافیک را بیاموزید.

Dsniff

خوب، این ابزار به طور کلی یکی از اولین چیزهایی است که باید به محض شنیدن به ذهنتان خطور کند
"حمله MITM". این ابزار بسیار قدیمی است، اما همچنان به طور فعال به روز می شود، که خبر خوبی است. صحبت با جزئیات در مورد قابلیت های آن فایده ای ندارد؛ در طول چهارده سال از عمر آن، بیش از یک بار در اینترنت پوشش داده شده است. به عنوان مثال، در راهنمایی مانند این:

یا دستورالعمل های وب سایت ما:

در آخر..

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

در این مقاله سعی می کنیم تئوری حملات Man-in-the-Middle و چند نکته کاربردی را که به جلوگیری از این نوع حملات کمک می کند، بشناسیم. این به ما کمک می‌کند تا خطری را که چنین نفوذهایی برای حریم خصوصی ما ایجاد می‌کند، درک کنیم، زیرا حملات MitM به ما اجازه می‌دهد در ارتباطات نفوذ کنیم و مکالمات خود را استراق سمع کنیم.

درک نحوه کار اینترنت

برای درک اصل حمله انسان در وسط، ابتدا ارزش دارد که بدانیم خود اینترنت چگونه کار می کند. نقاط اصلی تعامل: کلاینت ها، روترها، سرورها. رایج ترین پروتکل ارتباطی بین کلاینت و سرور، پروتکل انتقال ابرمتن (HTTP) است. گشت و گذار در اینترنت با استفاده از مرورگر، ایمیل، پیام های فوری - همه اینها از طریق HTTP انجام می شود.

وقتی وارد می شوید نوار آدرسمرورگر شما، مشتری (شما) درخواستی را برای نمایش صفحه وب به سرور ارسال می کند. بسته (درخواست HTTP GET) از طریق چندین روتر به سرور منتقل می شود. سپس سرور با یک صفحه وب پاسخ می دهد که برای مشتری ارسال می شود و در مانیتور آن نمایش داده می شود. پیام های HTTP باید به حالت امنبرای اطمینان از محرمانه بودن و ناشناس بودن

شکل 1. تعامل مشتری و سرور

ایمن سازی پروتکل ارتباطی

یک پروتکل ارتباط ایمن باید هر یک از ویژگی های زیر را داشته باشد:

  1. حریم خصوصی- فقط گیرنده مورد نظر می تواند پیام را بخواند.
  2. اعتبار- هویت طرفین متعامل ثابت شده است.
  3. تمامیت- تأیید عدم تغییر پیام در حین انتقال.

اگر هر یک از این قوانین رعایت نشود، کل پروتکل به خطر می افتد.

حمله Man-in-the-Middle از طریق پروتکل HTTP

یک مهاجم به راحتی می تواند با استفاده از تکنیکی به نام جعل ARP، یک حمله Man-in-the-Middle انجام دهد. هر کسی در شما شبکه های وای فایممکن است یک بسته ARP جعلی برای شما ارسال کند و باعث شود شما ناآگاهانه تمام ترافیک خود را به جای روتر از طریق مهاجم ارسال کنید.

پس از این، مهاجم کنترل کاملی بر ترافیک دارد و می تواند درخواست های ارسال شده در هر دو جهت را کنترل کند.

شکل 2. الگوی حمله Man-in-the-Middle


برای جلوگیری از چنین حملاتی، نسخه ای امن از پروتکل HTTP ایجاد شد. امنیت لایه حمل و نقل (TLS) و سلف آن، لایه سوکت امن (SSL)، پروتکل های رمزنگاری هستند که امنیت انتقال داده ها را از طریق شبکه فراهم می کنند. بنابراین پروتکل امن HTTPS نامیده خواهد شد. با تایپ در نوار آدرس مرورگر خود می توانید نحوه عملکرد پروتکل ایمن را مشاهده کنید (به S در https توجه کنید).

حمله Man-in-the-Middle به SSL با پیاده سازی ضعیف

استفاده های مدرن از SSL الگوریتم خوبرمزگذاری، اما اگر اشتباه اجرا شود مهم نیست. اگر یک هکر بتواند درخواست را رهگیری کند، می تواند آن را با حذف "S" از URL درخواستی تغییر دهد و در نتیجه SSL را دور بزند.

چنین رهگیری و اصلاح درخواست قابل مشاهده است. به عنوان مثال، اگر شما درخواست https://login.yahoo.com/ دارید و پاسخ آن http://login.yahoo.com/ است، این امر باعث ایجاد شک می شود. در زمان نگارش این مقاله، این حمله در واقع روی سرویس کار می کند پست الکترونیکیاهو

شکل 3. درخواست رهگیری و اصلاح


برای جلوگیری از چنین حمله ای، سرورها می توانند HTTP Strict Transport Security (HSTS) را پیاده سازی کنند، مکانیزمی که اتصال امن اجباری را روی پروتکل HTTPS امکان پذیر می کند. در این حالت، اگر مهاجم درخواست را با حذف "S" از URL تغییر دهد، سرور همچنان کاربر را با تغییر مسیر 302 به صفحه ای با پروتکل ایمن هدایت می کند.

شکل 4. نمودار عملیات HSTS


این روش پیاده سازی SSL در برابر نوع دیگری از حمله آسیب پذیر است - مهاجم یک اتصال SSL به سرور ایجاد می کند، اما از ترفندهای مختلفی استفاده می کند تا کاربر را مجبور به استفاده از HTTP کند.

شکل 5. الگوی حمله HSTS


برای جلوگیری از چنین حملاتی مرورگرهای مدرنمانند کروم، فایرفاکس و تور سایت‌ها را با استفاده از HSTS مانیتور می‌کنند و از طریق SSL به آن‌ها اتصال سمت مشتری را مجبور می‌کنند. در این مورد، مهاجمی که یک حمله Man-in-the-Middle انجام می دهد باید یک اتصال SSL با قربانی ایجاد کند.

شکل 6. الگوی حمله که در آن مهاجم یک ارتباط SSL با قربانی برقرار می کند


به منظور ارائه یک اتصال SLL به یک کاربر، یک مهاجم باید بداند که چگونه به عنوان یک سرور عمل کند. بیایید جنبه های فنی SSL را درک کنیم.

آشنایی با SSL

از نقطه نظر یک هکر، به خطر انداختن هر پروتکل ارتباطی به یافتن پیوند ضعیف در میان مؤلفه های ذکر شده در بالا (حریم خصوصی، اصالت و یکپارچگی) منجر می شود.

SSL از یک الگوریتم رمزگذاری نامتقارن استفاده می کند. مشکل رمزگذاری متقارن این است که از یک کلید برای رمزگذاری و رمزگشایی داده ها استفاده می شود، این رویکرد برای پروتکل های اینترنتی معتبر نیست زیرا مهاجم می تواند این کلید را ردیابی کند.

رمزگذاری نامتقارن شامل 2 کلید برای هر طرف است: کلید عمومی، برای رمزگذاری و یک کلید خصوصی برای رمزگشایی داده ها استفاده می شود.

شکل 7. کلیدهای عمومی و خصوصی کار می کنند

چگونه SSL سه ویژگی مورد نیاز برای ارتباطات امن را فراهم می کند؟

  1. از آنجا که رمزنگاری نامتقارن برای رمزگذاری داده ها استفاده می شود، SSL یک اتصال خصوصی را فراهم می کند. شکستن و کشف نشدن این رمزگذاری به این راحتی نیست.
  2. سرور مشروعیت خود را با ارسال یک گواهی SSL صادر شده توسط یک مرجع گواهی - یک شخص ثالث قابل اعتماد، به مشتری تأیید می کند.

اگر مهاجم به نحوی موفق به دریافت گواهی شود، می تواند در را به روی حمله مرد میانی باز کند. بنابراین، 2 اتصال ایجاد می کند - با سرور و با قربانی. سرور در این مورد فکر می کند که مهاجم یک کلاینت معمولی است و قربانی هیچ راهی برای شناسایی مهاجم ندارد، زیرا او گواهی ارائه می دهد که ثابت می کند سرور است.

پیام‌های شما به صورت رمزگذاری شده می‌رسند و می‌رسند، اما یک زنجیره را از طریق رایانه مجرم سایبری دنبال کنید، جایی که او کنترل کامل دارد.

شکل 8. الگوی حمله اگر مهاجم دارای گواهی باشد


اگر مهاجم توانایی به خطر انداختن مرورگر قربانی را داشته باشد، نیازی به جعل گواهی نیست. در این صورت، او می تواند گواهی خود امضا شده را وارد کند که به طور پیش فرض مورد اعتماد خواهد بود. این روشی است که اکثر حملات مرد میانی انجام می شود. در موارد پیچیده تر، هکر باید مسیر دیگری را انتخاب کند - گواهی را جعل کند.

مشکلات مرجع صدور گواهینامه

گواهی ارسال شده توسط سرور توسط یک مرجع صدور گواهینامه صادر و امضا شده است. هر مرورگر فهرستی از مقامات گواهی معتبر دارد و می‌توانید آنها را اضافه یا حذف کنید. مشکل اینجاست که اگر تصمیم به حذف مقامات بزرگ بگیرید، نمی‌توانید از سایت‌هایی بازدید کنید که از گواهی‌های امضا شده توسط آن مقامات استفاده می‌کنند.

گواهی ها و مقامات گواهینامه همیشه ضعیف ترین حلقه در اتصال HTTPS بوده اند. حتی اگر همه چیز به درستی اجرا شده باشد و هر مرجع گواهی دارای اختیارات محکمی باشد، هنوز دشوار است که با این واقعیت کنار بیایید که باید به بسیاری از اشخاص ثالث اعتماد کنید.

امروزه بیش از 650 سازمان قادر به صدور گواهینامه هستند. اگر مهاجمی هر یک از آنها را هک می کرد، هر گواهی را که می خواست دریافت می کرد.

حتی زمانی که تنها یک مرجع گواهی وجود داشت، VeriSign، مشکلی وجود داشت - افرادی که قرار بود از حملات انسان در وسط جلوگیری کنند، خدمات رهگیری را می فروختند.

همچنین بسیاری از گواهی ها به دلیل هک مقامات گواهی ایجاد شد. تکنیک ها و ترفندهای مختلفی برای فریب کاربر هدف به منظور اعتماد به گواهی های تقلبی استفاده شده است.

پزشکی قانونی

از آنجایی که مهاجم بسته های ARP جعلی را ارسال می کند، آدرس IP مهاجم قابل مشاهده نیست. در عوض، باید به آدرس MAC که مخصوص هر دستگاه موجود در شبکه است توجه کنید. اگر آدرس MAC روتر خود را می‌دانید، می‌توانید آن را با آدرس MAC دروازه پیش‌فرض مقایسه کنید تا متوجه شوید که آیا واقعاً روتر شما است یا یک مهاجم.

به عنوان مثال، در سیستم عامل ویندوز می توانید از دستور ipconfig استفاده کنید خط فرمان(CMD) برای مشاهده آدرس IP پیش فرض دروازه (خط آخر):

شکل 9. با استفاده از دستور ipconfig


سپس از دستور arp –a برای پیدا کردن آدرس MAC این دروازه استفاده کنید:

شکل 10. با استفاده از دستور arp –a


اما راه دیگری برای مشاهده حمله وجود دارد - اگر فعالیت شبکه را در زمان شروع آن زیر نظر داشتید و بسته‌های ARP را تماشا می‌کردید. برای مثال می توانید از Wireshark برای این منظور استفاده کنید، این برنامه در صورت تغییر مک آدرس دروازه پیش فرض به شما اطلاع می دهد.

توجه: اگر مهاجم به درستی آدرس های مک را جعل کند، ردیابی او به یک مشکل بزرگ تبدیل می شود.

نتیجه

SSL پروتکلی است که مهاجم را مجبور به انجام کارهای زیادی برای انجام یک حمله می کند. اما شما را در برابر حملات تحت حمایت دولت یا سازمان‌های هک ماهر محافظت نمی‌کند.

وظیفه کاربر محافظت از مرورگر و رایانه خود برای جلوگیری از درج گواهی جعلی است (یک تکنیک بسیار رایج). همچنین ارزش توجه به لیست گواهی های قابل اعتماد و حذف مواردی که به آنها اعتماد ندارید را دارد.

1395/10/18 | ولادیمیر خزوف

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

ما در مورد طرح سازماندهی یک حمله MITM "مشروع" در مقاله قبلی نوشتیم. امروز ما با جزئیات بیشتری در مورد اصل چنین حمله و روش های اجرای آن صحبت خواهیم کرد.

حمله MITM چیست؟

Man In The Middle (MITM) به عنوان "مردی در وسط" ترجمه می شود. این اصطلاح به معنی حمله شبکه، زمانی که یک مهاجم بین کاربر اینترنت و برنامه ای که به آن دسترسی دارد قرار می گیرد. البته نه از نظر فیزیکی، بلکه با کمک نرم افزارهای خاص. خود را به عنوان برنامه درخواستی به کاربر نشان می دهد (این می تواند یک وب سایت یا یک سرویس اینترنتی باشد)، کار با آن را شبیه سازی می کند، و این کار را به گونه ای انجام می دهد که این تصور را ایجاد کند. عملکرد عادیو تبادل اطلاعات

هدف حمله، داده های شخصی کاربر، مانند اعتبار ورود به سیستم است سیستم های مختلف, اطلاعات دقیق بانکیو شماره کارت، مکاتبات شخصی و غیره اطلاعات محرمانه. در بیشتر موارد، برنامه‌های مالی (مشتریان بانک، بانک‌های آنلاین، خدمات پرداخت و انتقال پول)، خدمات شرکت SaaS، سایت‌های تجارت الکترونیک (فروشگاه‌های آنلاین) و سایر سایت‌هایی که برای ورود به سیستم نیاز به مجوز دارند مورد حمله قرار می‌گیرند.

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

علاوه بر این، پس از سرقت اطلاعات و هک یک سیستم، مجرمان می توانند نصب کنند شبکه شرکتیمخرب نرم افزارسازماندهی سرقت مالکیت معنوی (اختراعات، پروژه ها، پایگاه های اطلاعاتی) و ایجاد خسارت اقتصادی با حذف داده های مهم.

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

چگونه یک حمله MITM انجام می شود

اجرای یک حمله MITM شامل دو مرحله است: رهگیری و رمزگشایی.

  • استراق سمع

اولین مرحله حمله، رهگیری ترافیک کاربر به هدف مورد نظر و هدایت آن به شبکه مهاجم است.

رایج ترین و ساده ترین راه برای رهگیری، حمله غیرفعال است، زمانی که مهاجم نقاط Wi-Fi را با دسترسی آزاد (بدون رمز عبور یا مجوز) ایجاد می کند. لحظه ای که کاربر به چنین نقطه ای متصل می شود، مهاجم به تمام ترافیک عبوری از آن دسترسی پیدا می کند و می تواند هر داده ای را برای رهگیری از آن استخراج کند.

روش دوم رهگیری فعال است که می تواند به یکی از روش های زیر انجام شود:

جعل IP- جایگزینی آدرس IP هدف در هدر بسته با آدرس مهاجم. در نتیجه، کاربران به‌جای بازدید از URL درخواستی، به وب‌سایت مهاجم ختم می‌شوند.

جعل ARP– جایگزینی آدرس MAC واقعی میزبان به جای آدرس مهاجم در جدول ARP قربانی. در نتیجه، داده های ارسال شده توسط کاربر به آدرس IP گره مورد نیاز به آدرس مهاجم ختم می شود.

جعل DNSعفونت کش DNS، نفوذ به سرور DNSو جایگزینی سابقه مطابقت آدرس وب سایت. در نتیجه کاربر سعی می کند به سایت درخواستی دسترسی پیدا کند، اما آدرس سایت مهاجم را از سرور DNS دریافت می کند.

  • رمزگشایی

پس از رهگیری، ترافیک SSL دو طرفه باید به گونه ای رمزگشایی شود که کاربر و منبعی که درخواست می کند متوجه تداخل نشوند.

چندین روش برای این وجود دارد:

جعل HTTPS- هنگامی که اتصال به سایت از طریق پروتکل HTTPS برقرار می شود، یک گواهی جعلی به مرورگر قربانی ارسال می شود. این گواهی شامل امضای دیجیتالیبرنامه به خطر افتاده و باعث می شود مرورگر ارتباط با مهاجم را به عنوان قابل اعتماد بپذیرد. هنگامی که چنین ارتباطی برقرار شد، مهاجم به هر داده ای که قربانی وارد کرده است، قبل از اینکه به برنامه منتقل شود، دسترسی پیدا می کند.

SSL BEAST(سوء استفاده مرورگر در برابر SSL/TLS) – این حمله از آسیب پذیری SSL در نسخه های TLS 1.0 و 1.2 سوء استفاده می کند. رایانه قربانی به جاوا اسکریپت مخرب آلوده است که کوکی های رمزگذاری شده ارسال شده به برنامه وب را رهگیری می کند. این حالت رمزگذاری "زنجیره بندی بلوک متن رمزنگاری" را به خطر می اندازد، به طوری که مهاجم کوکی های رمزگشایی شده و کلیدهای احراز هویت را به دست می آورد.

ربودن SSL– انتقال کلیدهای احراز هویت جعلی به کاربر و برنامه در شروع جلسه TCP. این ظاهر یک اتصال امن را ایجاد می کند در حالی که در واقع جلسه توسط "مردی در وسط" کنترل می شود.

حذف SSL- اتصال را از HTTPS ایمن به HTTP ساده با رهگیری تأیید اعتبار TLS ارسال شده توسط برنامه به کاربر کاهش می دهد. مهاجم دسترسی رمزگذاری نشده به سایت را در اختیار کاربر قرار می دهد، در حالی که یک جلسه امن با برنامه حفظ می کند و توانایی دیدن داده های ارسال شده قربانی را به دست می آورد.\

محافظت در برابر حملات MITM

حفاظت قابل اعتماد در برابر حملات MITM در صورتی امکان پذیر است که کاربر چندین اقدام پیشگیرانه انجام دهد و از ترکیبی از روش های رمزگذاری و احراز هویت توسط توسعه دهندگان برنامه های وب استفاده کند.

اقدامات کاربر:

  • از اتصال به هات اسپات های Wi-Fi که فاقد آن هستند خودداری کنید حفاظت از رمز عبور. ویژگی را غیرفعال کنید اتصال خودکاربه نقاط دسترسی شناخته شده - یک مهاجم می تواند Wi-Fi خود را قانونی پنهان کند.
  • به اعلان مرورگر در مورد رفتن به یک سایت ناامن توجه کنید. چنین پیامی ممکن است نشان دهنده انتقال به وب سایت جعلی مهاجم یا مشکلات محافظت از یک وب سایت قانونی باشد.
  • در صورت عدم استفاده، جلسه را با برنامه (خروج) پایان دهید.
  • استفاده نکن شبکه های عمومی(کافه، پارک، هتل و غیره) برای انجام معاملات محرمانه (مکاتبات تجاری، تراکنش های مالی، خرید در فروشگاه های اینترنتی و غیره).
  • از یک آنتی ویروس با پایگاه داده های به روز در رایانه یا لپ تاپ خود استفاده کنید؛ این آنتی ویروس به محافظت در برابر حملات با استفاده از نرم افزارهای مخرب کمک می کند.

توسعه دهندگان برنامه های کاربردی وب و وب سایت ها باید از پروتکل های امن TLS و HTTPS استفاده کنند که با رمزگذاری داده های ارسالی، حملات جعل را بسیار پیچیده می کند. استفاده از آنها همچنین از رهگیری ترافیک برای به دست آوردن پارامترهای مجوز و کلیدهای دسترسی جلوگیری می کند.

محافظت از TLS و HTTPS نه تنها برای صفحات مجوز، بلکه برای تمام بخش‌های دیگر سایت، عمل خوبی در نظر گرفته می‌شود. این امر احتمال سرقت کوکی‌های کاربر توسط مهاجم را در لحظه ای که پس از مجوز در صفحات محافظت نشده هدایت می‌شود، کاهش می‌دهد.

مسئولیت حفاظت در برابر حملات MITM بر عهده کاربر و اپراتور مخابراتی است. مهمترین چیز برای کاربر این است که هوشیاری خود را از دست ندهد، فقط از روش های اثبات شده دسترسی به اینترنت استفاده کند و هنگام انتقال داده های شخصی، سایت هایی با رمزگذاری HTTPS انتخاب کند. می توان به اپراتورهای مخابراتی توصیه کرد که از سیستم های بازرسی بسته عمیق (DPI) برای شناسایی ناهنجاری ها در شبکه های داده و جلوگیری از حملات جعل استفاده کنند.

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

فرآیند شروع یک جلسه TCP، شامل سه مرحله. کلاینت بسته ای را با پرچم SYN به سرور ارسال می کند. سرور پس از دریافت بسته ای با پرچم SYN از مشتری، با ارسال بسته ای با پرچم های SYN+ACK پاسخ می دهد و وارد حالت ESTABLISHED می شود. پس از دریافت پاسخ صحیح از سرور، مشتری بسته ای با پرچم ACK ارسال می کند و وارد حالت ESTABLISHED می شود.

لیست ممنوعیت

فهرستی از مشتریانی که حق اعمال خاصی را ندارند. با استفاده از لیست ممنوعیت، معمولاً وقتی یک حمله DDoS شناسایی می شود، قابلیت های ربات ها را محدود می کنید. همچنین در واقعیت های سرورهای بازی، بازیکنان بد نامی که از کدهای تقلب استفاده می کنند یا اقدامات غیرقانونی انجام می دهند در این لیست قرار می گیرند.

ربات

کامپیوتر مورد استفاده برای هدایت حمله DDoSترافیک "واقعی" در بیشتر موارد این یک کامپیوتر است کاربر معمولی، آلوده به ویروس است. اغلب کاربر نمی تواند متوجه شود که رایانه اش آلوده شده است و برای مقاصد غیرقانونی استفاده می شود

وب سرور

رایانه ای در یک شبکه که درخواست های HTTP را از مشتریان، معمولاً مرورگرهای وب، می پذیرد و پاسخ های HTTP را به آنها ارائه می دهد. به طور معمول، همراه با یک پاسخ HTTP، سرور وب با یک صفحه HTML، تصویر، جریان رسانه یا سایر داده ها پاسخ می دهد.

سرویس وب

وب سرویس ها خدماتی هستند که در اینترنت ارائه می شوند. هنگام استفاده از این اصطلاح، می‌توانیم درباره جستجو، ایمیل‌های وب، ذخیره اسناد، فایل‌ها، نشانک‌ها و غیره صحبت کنیم. به طور معمول، وب سرویس‌ها را می‌توان بدون در نظر گرفتن رایانه، مرورگر یا مکانی که به اینترنت دسترسی دارید استفاده کرد.

دامنه

هنگام صحبت در مورد مفهوم "دامنه" می توان در زمینه های مختلف استفاده کرد فناوری های شبکه. بیشتر اوقات منظور آنها از دامنه است نام دامنهسایت. دامنه ها به سطوح مختلفی تقسیم می شوند، به عنوان مثال در دامنه example.com، com دامنه سطح اول و نمونه دامنه سطح دوم است. برای آسان‌تر کردن ارتباط، افراد از اصطلاح «Subdomain» نیز استفاده می‌کنند که به معنای دامنه‌ای است که بیش از دو سطح عمق دارد. به عنوان مثال، در دامنه mail.example.com، mail یک زیر دامنه است.

ربات جستجو

سرویس موتور جستجوبرای کشف صفحات جدید در اینترنت و تغییر صفحات موجود. اصل کار شبیه مرورگر است. محتوای صفحه را تجزیه و تحلیل می کند، آن را به شکل خاصی در سرور موتور جستجویی که به آن تعلق دارد ذخیره می کند و پیوندهایی را به صفحات بعدی ارسال می کند.

پهنای باند

حداکثر مقدار ممکن داده ارسال شده در واحد زمان. اغلب، ارائه دهندگان اینترنت، با وعده سرعت بالاتر دسترسی به اینترنت، به وعده های خود عمل نمی کنند. در بیشتر موارد، این به دلیل اشغال کامل پهنای باند است.



 


خواندن:



منوی سمت چپ cayo coco را باز کنید

منوی سمت چپ cayo coco را باز کنید

جزیره کایو کوکو یک جزیره تفریحی در مرکز کوبا است. موقعیت جزیره جزیره کایو کوکو دقیقا روبروی کانال ویجو در...

چرا به ارتباطات رادیویی و ایستگاه های رادیویی نیاز داریم؟

چرا به ارتباطات رادیویی و ایستگاه های رادیویی نیاز داریم؟

برخی از مردم رویای یک آیفون جدید، برخی دیگر یک ماشین و برخی دیگر مجموعه ای از قطعات و بلندگوی جدید رادیوی خود را در سر می پرورانند. زمانی نه چندان دور بود که ...

ضرایب همبستگی رتبه کندال و اسپیرمن مثال ضریب همبستگی رتبه کندال

ضرایب همبستگی رتبه کندال و اسپیرمن مثال ضریب همبستگی رتبه کندال

ارائه و پردازش مقدماتی ارزیابی های کارشناسی در عمل از چندین نوع ارزیابی استفاده می شود: - کیفی (اغلب به ندرت، ...

توابع برنامه نویسی

توابع برنامه نویسی

هدف کار: 1) قوانین توصیف توابع را مطالعه کنید. 2) کسب مهارت در استفاده از توابع هنگام نوشتن برنامه در C++. نظری...

فید-تصویر RSS