Атака “Людина посередині”: Що це і як їй протистояти
Атака “людина посередині” (Man-in-the-Middle, MITM) – це тип кібератаки, під час якої зловмисник перехоплює таємну мережеву комунікацію або обмін даними. Зловмисник, перебуваючи в центрі передачі даних, видає себе за легітимного учасника діалогу.
У реальності кіберзлочинці розміщуються між запитами користувача та відповідями сервера. Користувач, як і раніше, вважає, що взаємодіє безпосередньо з потрібним веб-сайтом або додатком, наприклад, соціальною мережею або онлайн-банкінгом. Проте насправді запити спочатку потрапляють до зловмисника, який потім від імені користувача зв’язується з цільовим сервером.
Таким чином, зловмисник отримує доступ до всієї інформації, включаючи ваші запити та відповіді, отримані від кінцевого сервера. Крім перегляду розмови, він може змінювати ваші запити та відповіді, красти облікові дані, перенаправляти на підконтрольний йому сервер або вчиняти інші кіберзлочини.
Зазвичай кіберзлочинець може перехопити потік даних будь-якої сторони діалогу. Зловмисник може змінити інформацію або відправити шкідливі посилання чи відповіді обом сторонам. Часто це може залишатися непоміченим протягом тривалого часу, аж поки не буде завдано значної шкоди.
Поширені методи атак “людина посередині”
Аналіз пакетів: Зловмисник використовує різноманітні інструменти для аналізу мережевих пакетів на низькому рівні. Перехоплення дозволяє бачити пакети даних, до яких вони не повинні мати доступу.
Впровадження пакетів: Кіберзлочинці вставляють шкідливі пакети в канали передачі даних. Перед цим вони використовують сніфінг, щоб визначити, як і коли відправляти ці пакети. Після впровадження вони змішуються з легітимними пакетами в потоці даних.
Викрадення сеансу: Більшість веб-додатків під час авторизації створюють тимчасовий токен сеансу. Це дозволяє користувачеві не вводити пароль на кожній сторінці. На жаль, зловмисники, використовуючи аналітичні засоби, можуть ідентифікувати та використовувати цей токен для надсилання запитів, видаючи себе за законного користувача.
Вилучення SSL: Кіберзлочинці можуть використовувати техніку відключення SSL для перехоплення законних пакетів, змінювати запити HTTPS та направляти їх до незахищеного HTTP-еквівалента. Це призводить до того, що хост надсилає незашифрований запит на сервер, роблячи конфіденційні дані вразливими для крадіжки.
Негативні наслідки атак MITM
Атаки MITM є небезпечними для будь-якої організації, оскільки можуть призвести до значних фінансових і репутаційних втрат.
Злочинці можуть отримати доступ до конфіденційної та приватної інформації організації. Наприклад, вони можуть вкрасти облікові дані, такі як логіни та паролі, дані кредитних карт, і використовувати їх для переказу коштів або здійснення несанкціонованих покупок. Також вони можуть використовувати викрадені дані для встановлення шкідливого програмного забезпечення або викрадення іншої важливої інформації, яку можна використати для шантажу компанії.
Тому дуже важливо захищати користувачів і цифрові системи, щоб мінімізувати ризик атак MITM.
Інструменти для виявлення атак MITM
Окрім надійних рішень і методів захисту, необхідно використовувати інструменти для перевірки ваших систем і виявлення вразливостей, які можуть бути використані кіберзлочинцями. Ось деякі інструменти для дослідників безпеки, які допомагають у виявленні HTTP MITM-атак.
Хетті
Хетті – це швидкий HTTP-інструмент з відкритим вихідним кодом, який має потужні функції для дослідників безпеки. Легкий інструмент зі вбудованим веб-інтерфейсом Next.js включає в себе HTTP-проксі.
Основні характеристики
- Дозволяє виконувати повнотекстовий пошук
- Має модуль відправника для ручного відправлення HTTP-запитів на основі записів з журналу проксі або створення їх з нуля.
- Модуль зловмисника для автоматизованого відправлення HTTP-запитів
- Просте встановлення та інтуїтивно зрозумілий інтерфейс
- Можливість ручного створення HTTP-запитів, копіювання з журналу проксі.
Bettercap
Bettercap – це універсальний та масштабований інструмент для мережевої розвідки та атак.
Це просте у використанні рішення надає реверсним інженерам, експертам із безпеки та спеціалізованим командам інструменти для тестування або атаки мереж Wi-Fi, IP4, IP6, пристроїв Bluetooth Low Energy (BLE) та бездротових пристроїв HID. Інструмент також має можливості моніторингу мережі та інші функції, як-от створення підроблених точок доступу, аналіз паролів, DNS-спуфінг, захоплення рукостискань.
Основні характеристики
- Потужний вбудований мережевий сніфер для ідентифікації даних автентифікації та збору облікових даних
- Потужний та розширюваний
- Активне та пасивне дослідження та тестування IP-мереж на наявність вразливостей MITM.
- Зручний інтерфейс користувача, який дозволяє проводити широкий спектр атак MITM, перехоплювати дані, контролювати HTTP та HTTP-трафік.
- Витягування зібраних даних, таких як облікові дані POP, IMAP, SMTP і FTP, відвідані URL-адреси та хости HTTPS, файли cookie HTTP, опубліковані дані HTTP та інше. Збереження у зовнішній файл.
- Можливість маніпулювання або зміни трафіку TCP, HTTP та HTTPS в реальному часі.
Proxy.py
Proxy.py – це легкий проксі-сервер WebSockets, HTTP, HTTPS та HTTP2 з відкритим кодом. Цей інструмент, доступний в одному файлі Python, дозволяє дослідникам перевіряти веб-трафік, включаючи програми, зашифровані TLS, використовуючи мінімум ресурсів.
Основні характеристики
- Швидкий та масштабований, може обробляти десятки тисяч з’єднань за секунду.
- Програмовані функції, такі як вбудований веб-сервер, проксі та налаштування маршрутизації HTTP.
- Легкий дизайн, використовує 5-20 МБ оперативної пам’яті. Використовує стандартні бібліотеки Python і не потребує зовнішніх залежностей.
- Налаштовувана інформаційна панель у реальному часі, яку можна розширити за допомогою плагінів. Дозволяє перевіряти, налаштовувати та контролювати proxy.py під час виконання.
- Захищений інструмент використовує TLS для забезпечення наскрізного шифрування між proxy.py і клієнтом.
Mitmproxy
mitmproxy – це просте у використанні проксі-рішення HTTPS з відкритим вихідним кодом.
Інструмент є SSL-проксі “людина посередині” і має консольний інтерфейс, який дозволяє аналізувати та змінювати потік трафіку в реальному часі. Його можна використовувати як HTTP або HTTPS-проксі для запису всього мережевого трафіку, перегляду запитів користувачів та відтворення їх. Mitmproxy включає в себе три інструменти: mitmproxy (консольний інтерфейс), mitmweb (веб-інтерфейс) та mitmdump (версія командного рядка).
Основні характеристики
- Інтерактивний та надійний інструмент для аналізу та модифікації HTTP-трафіку
- Гнучкий, стабільний та простий у використанні інструмент
- Дозволяє перехоплювати та змінювати запити та відповіді HTTP та HTTPS в реальному часі
- Записуйте та зберігайте розмови HTTP на стороні клієнта та сервера, а потім відтворюйте та аналізуйте їх у майбутньому
- Створення сертифікатів SSL/TLS для перехоплення трафіку
- Функції зворотного проксі дозволяють перенаправляти мережевий трафік на інший сервер.
Відрижка
Відрижка – це автоматизований інструмент сканування вразливостей. Він дозволяє дослідникам тестувати веб-додатки та виявляти вразливості, які можуть бути використані для атак MITM.
Інструмент працює як веб-проксі “людина посередині” між веб-браузером і цільовим сервером. Це дає можливість перехоплювати, аналізувати та змінювати трафік запитів і відповідей.
Основні характеристики
- Перехоплення та перевірка необробленого мережевого трафіку в обох напрямках між веб-браузером і сервером
- Розриває з’єднання TLS у трафіку HTTPS між браузером і цільовим сервером, дозволяючи переглядати та змінювати зашифровані дані
- Можливість використання вбудованого браузера Burps або зовнішнього стандартного веб-браузера
- Автоматизоване, швидке та масштабоване рішення для сканування вразливостей
- Відображення окремих перехоплених HTTP-запитів і відповідей
- Ручний перегляд перехопленого трафіку для розуміння деталей атаки.
Ettercap
Ettercap – це аналізатор і перехоплювач мережевого трафіку з відкритим вихідним кодом.
Інструмент дозволяє дослідникам аналізувати широкий спектр мережевих протоколів і хостів, реєструвати мережеві пакети в локальній мережі та інших середовищах. Також він може виявляти та зупиняти атаки MITM.
Основні характеристики
- Перехоплення мережевого трафіку та отримання облікових даних, наприклад, паролів. Розшифровування зашифрованих даних та витягування логінів та паролів.
- Підходить для глибокого аналізу пакетів, тестування, моніторингу мережевого трафіку та фільтрації вмісту в реальному часі.
- Підтримує активне та пасивне прослуховування, аналіз мережевих протоколів, в тому числі з шифруванням
- Аналізує топологію мережі та встановлені операційні системи.
- Зручний графічний інтерфейс користувача з інтерактивними та неінтерактивними параметрами роботи GUI
- Використовує такі методи аналізу, як перехоплення ARP, фільтрація IP та MAC, для перехоплення та аналізу трафіку.
Запобігання атакам MITM
Виявити атаки MITM важко, оскільки вони відбуваються за межами видимості користувачів, і їх важко розпізнати. Проте організації можуть використовувати декілька методів захисту для запобігання атакам MITM. Ось деякі з них:
- Захищайте підключення до Інтернету на роботі або вдома, використовуючи надійні рішення безпеки, інструменти та методи аутентифікації
- Використовуйте надійне шифрування WEP/WAP для точок доступу
- Перевіряйте, чи веб-сайти, які ви відвідуєте, є безпечними та мають HTTPS в URL-адресі.
- Уникайте переходу за підозрілими посиланнями в електронних листах, повідомленнях.
- Використовуйте HTTPS і вимкніть незахищені протоколи TLS/SSL.
- Застосовуйте віртуальні приватні мережі, де це можливо.
- Використовуйте інструменти, описані вище, та інші рішення для виявлення та усунення вразливостей, які можуть бути використані зловмисниками для атак MITM.