+38/050/370-3627
+38/067/502-3306
+38/044/257-2444
Новини

Cloudflare представила бібліотеку mitmengine для виявлення фактів перехоплення HTTPS-трафіку

Cloudflare представила бібліотеку mitmengine для виявлення фактів перехоплення HTTPS-трафіку

Cloudflare представила бібліотеку mitmengine, що застосовується для виявлення фактів перехоплення HTTPS-трафіку, а також web-сервіс Malcolm для наочного аналізу накопичених у Cloudflare даних. Код написаний мовою Go і розповсюджується під ліцензією BSD. Моніторинг трафіку Cloudflare, проведений за допомогою запропонованого інструментарію, показав, що близько 18% HTTPS-з'єднань перехоплюються.

У більшості випадків перехоплення HTTPS-трафіку здійснюється на стороні клієнта завдяки активності різних локальних антивірусних додатків, міжмережевих екранів, систем батьківського контролю, шкідливого ПЗ (для крадіжки паролів, підстановки реклами або запуску коду майнінгу) або корпоративних систем інспектування трафіку. Подібні системи додають свій кореневий TLS-сертифікат до списку сертифікатів на локальній системі та використовують його для перехоплення захищеного трафіку користувача. Запити клієнта транслюються на цільовий сервер від імені перехоплюючого ПЗ, після чого відповідь віддається клієнту в рамках окремого HTTPS-з'єднання, встановленого за допомогою TLS-сертифіката перехоплюючої системи.

В окремих випадках перехоплення організується на стороні серверів, коли власник сервера передає закритий ключ третій особі, наприклад оператору зворотного проксі, CDN або системи захисту від DDoS, який потім приймає запити від себе з оригінальним TLS-сертифікатом і транслює їх на оригінальний сервер. У будь-яких випадках перехоплення HTTPS підриває ланцюжок довіри та вносить додаткову ланку компрометації, що призводить до суттєвого зменшення рівня захисту з'єднання, залишаючи при цьому видимість наявності захисту та не викликаючи підозр у користувачів.

Для виявлення перехоплення HTTPS компанією Cloudflare запропоновано пакет mitmengine, який встановлюється на сервері та дозволяє виявити факти перехоплення HTTPS, а також визначити які саме системи використовувалися для перехоплення. Суть методу визначення перехоплення порівняно специфічних для браузерів особливостей обробки TLS з фактичним станом з'єднання. На основі заголовка User Agent двигун визначає браузер, а потім оцінює чи відповідають цьому браузеру такі характеристики TLS-з'єднання, як параметри TLS за замовчуванням, розширення, заявлений набір шифрів, порядок визначення шифрів, групи і формати еліптичних кривих.

Використовувана під час перевірки база сигнатур нараховує близько 500 типових ідентифікаторів TLS-стеку браузерів і систем перехоплення. Дані можуть збиратися у пасивному режимі через аналіз вмісту полів у повідомленні ClientHello, яке передається у відкритому вигляді до встановлення шифрованого каналу зв'язку. Для захоплення трафіку застосовується TShark зі складу мережевого аналізатора Wireshark 3.

Проектом mitmengine також надається бібліотека для інтеграції функцій визначення перехоплення довільних серверних обробників. У найпростішому випадку достатньо передати значення User Agent і TLS ClientHello поточного запиту та бібліотека видасть ймовірність перехоплення та фактори, на основі яких зроблено той чи інший висновок.

На підставі статистики про трафік, що проходить через мережу доставки контенту Cloudflare, яка обробляє приблизно 10% всього інтернет-трафіку, запущений web-сервіс, що відображає зміну динаміки перехоплень по днях. Наприклад, місяць тому перехоплення фіксувалися для 13.27% з'єднань, 19 березня цей показник становив 17.53%, а 13 березня досяг піку о 19.02%.

У проведеному у 2017 році аналогічному дослідженні частка перехоплень становила 10.9%. Розбіжність викликана тим, що новий аналіз ігноруються запити з невідомим User Agent, тоді як у минулому дослідженні враховувалися все запити. Якщо включити до нової вибірки дані про невідомих User Agent частка перехоплення знижується загалом до 11.3%, тобто. за два роки кількість перехоплень зросла на 3.6% (0.4 в абсолютних значеннях).

Найбільш популярним двигуном перехоплення є система фільтрації Symantec Bluecoat, на яку припадає 94.53% всіх упізнаних перехоплених запитів. Далі йдуть Akamai reverse proxy (4.57%), Forcepoint (0.54%) та Barracuda (0.32%). Перехоплення антивірусів і систем батьківського контролю в основному не увійшли у вибірку упізнаних перехоплювачів, тому що для їх точної ідентифікації зібрано недостатньо сигнатур. У 52.35% випадках було перехоплено трафік настільних версій браузерів, а 45.44% браузерів для мобільних пристроїв. У розрізі операційних систем статистика виглядає так: Android (35.22%), Windows 10 (22.23%), Windows 7 (13.13%), iOS (11.88%), інші ОС (17.54%).

Інші новини