Боротьба з перехопленням https-трафіку

Боротьба з перехопленням HTTPS-трафіку. Досвід яндекс.браузер +57

  • 12.05.17 6:55 •
  • BarakAdama •
  • # 326796 •
  • Хабрахабр •
  • 98 •
  • 20500

- такий же як Forbes, тільки краще.

Згідно з дослідженням співробітників Mozilla, Google, Cloudflare і ряду університетів, від 4 до 11% захищених з'єднань «прослуховуються» в результаті установки сумнівних кореневих сертифікатів на комп'ютерах користувачів, які навіть і не здогадуються про ризик. Сьогодні я розповім про те, як наша команда привертає увагу до цієї проблеми за допомогою яндекс.браузер.

Якщо не можна розшифрувати потік, то можна його перенаправити через себе, змусивши браузер встановлювати з'єднання не з сайтом, а зі своїм сервером (атака типу man-in-the-middle). Наприклад, можна зламати маршрутизатор користувача і за допомогою підміни DNS-відповідей перенаправляти його на фішинг-сайт для крадіжки паролів. Досвідчений користувач навряд чи з таким зіткнеться, а своїм близьким можна налаштувати альтернативний DNS-сервер з підтримкою DNSCrypt прямо в браузері. Але якщо зловмисник захоче піти далі і почне виступати посередником між користувачем і HTTPS-сайтом, то тут нас врятує інше завдання сертифіката - аутентифікація.

Коли браузер отримує сертифікат від сайту, він повинен переконатися, що його надіслав саме сайт, а не «людина посередині». Підтвердити це можна за допомогою кореневих сертифікатів, які знаходяться в сховищі операційної системи. Якщо для сертифіката, який нібито надіслав сайт, не вдається знайти підтверджує кореневої, то будь-який сучасний браузер видасть щось таке:

Щоб обійти такий захист і приховати від користувача факт свого втручання в трафік, залишається тільки одне - помістити в системне сховище свій кореневий сертифікат, який легалізує в очах браузера підписані ним сертифікати зловмисника. Причому зробити це може будь-який додаток. А з правами адміністратора ще й без попереджень і питань користувачеві. Людина встановлює з сумнівного сайту програму, а на додачу отримує прослушку трафіку. І жоден сучасний браузер ніяк на це не відреагує. Ви побачите все ту ж напис «Надійний» і зелені замочки. Хіба що у випадку з Firefox зловмисникам знадобиться додати свій кореневий сертифікат ще і в сховище цього браузера, тому що системне він не використовує (але зробити це нітрохи не складніше).

Боротьба з перехопленням https-трафіку

Боротьба з перехопленням https-трафіку

Боротьба з перехопленням https-трафіку

Боротьба з перехопленням https-трафіку

Попередження в яндекс.браузер не можна назвати панацеєю, тому що вони ніяк не впливають на основне джерело проблеми - програму, яка встановлює свій кореневий сертифікат. Але ми сподіваємося, що інформування користувачів приверне їхню увагу до ризику втрати даних або як мінімум спростить діагностику. Адже навіть сам факт перехоплення трафіку до цього моменту був прихований від людей.

Якщо локально, то чим це відрізняється від сховища сертифікатів (як у Firefox)?

Якщо по мережі, то сенс в тому, що сертифікат Яндекса (точніше, вузла, з яким зв'язується браузер для перевірки сертифіката), прибитий наглухо, і його не можна підмінити? Інакше, чому неможлива така ж MITM-атака ...

Локально, але це не сховище сертифікатів, куди можна помістити свій, а зашитий набір відбитків.

Якщо сертифікат на сайті зміниться, як буде реагувати браузер? Є-ли окремий механізм для поновлення відбитків, або тільки разом з новою версією браузера?

Сертифікат на сайті? Так з ним і так все добре. А якщо сертифікат зловмисника, то яка різниця. Якщо його немає в списку довірених, то буде попереджати.

Вище ви пишіть, що перевірки сертифікатів здійснюються локально по базі отпечактов. Чи стане-браузер видавати попередження, якщо на сайті (легітимно, а не зловмисники) поміняють сертифікат, наприклад через закінчення терміну попереднього?

Гарна спроба, яндекс, але немає

Protect надто вже нав'язує себе ще й з браузером за замовчуванням і власне пошуком, тому ...

Плюс, блін, що у вас за фігня з іконками? Після кожної ітерації версії потрібно руками лізти в% version% \ resources \ sxs.ico.

Так Protect ж частина браузера. Але і відключається в налаштуваннях. Різні частини цього комплекту мають свої опції.

Про ікони не зрозумів, але звучить як баг. Ви повідомляли в підтримку?

В останній раз, коли я бачив вайфай шифрування Яндекса, воно застосовувалося тільки з точками зі слабкими шифруванням. Тобто, підчепити я випадково до лівої точці з сильним шифруванням ... І вона абсолютно спокійно сніффером мій трафік. Так що немає довіри маркетологам, які пишуть про плюси Яндекс браузера.

Стривайте. Як ви випадково підчепити до лівої точці з паролем, не вводячи пароль? Шифрування Wi-Fi у нас вирішує такі проблеми:

- Захищає від підроблених точок, які імітують відомі мережі назвою. Пристрої до таких автоматично підключаються, тому що назва точки збігається, а пароль не потрібно.
- Захищає від зловмисників зі сніффером за сусіднім столиком.

Рівне про це я писав на Хабре. і ми всюди розповідали. Тому включається автоматично, якщо у точки немає пароля, або використовується слабке wep-шифрування. Якщо потрібно включити примусово, тобто Турбо. Безпечний Wi-Fi на ньому і працює (тільки без стиснення).

Попередження в яндекс.браузер не можна назвати панацеєю, тому що вони ніяк не впливають на основне джерело проблеми - програму, яка встановлює свій кореневий сертифікат.

Як Ви і написали. Я б сказав, що задумка взагалі нікому не потрібна. Просто «для галочки», що браузер «безпечніше». Нітрохи. Поки користувачі будуть встановлювати додатки «не зрозумій звідки» (не важливо яка використовується ОС), ніякі технічні засоби не допоможуть.

Пройде кілька днів і ці «програми, що встановлюють свій кореневий сертифікат» будуть до купи патчить або цілком підміняти браузер.

Ні, звичайно ваше рішення буде мати короткочасне позитивну дію. Звичайно ви напишете про це ще одну статтю. Звичайно ви «забудете» в ній сказати, що вже є (а вже є) програми, які обходять цей захист. Можливо кількість установок браузера підвищиться. Але інтернет від цього не стане безпечніше.

Корінь лиха в тому, що непідготовлені користувачі не знають чого можна довіряти, а чому немає. Сьогодні не існує Єдиного Центру Довіри :). І я сумніваюся, що його створення взагалі можливо. Рішення про довіру найчастіше приймається інтуїтивно на основі вшенего виду.

Хоча сам браузер дуже хороший :)

Не згоден. Наше рішення не вирішує проблему в корені, але:

Звичайно ви «забудете» в ній сказати, що вже є (а вже є) програми, які обходять цей захист.

Наведіть, приклад, будь ласка.

Всі технологічні компоненти Protect ефективні. Ми це бачимо по антифішинг, щодо захисту від мобільних підписок, за багатьма іншим речам. 100% захисту не буває, але ймовірність попастися на вудку знижується.

Ок, з причиною розібралися, тепер не завадило б розібратися зі слідством. Припустимо звичайний юзер під час серфінгу нахапав дірок і навіть про це не підозрює. Як уберегти себе від нежданчик? Наведу як приклад Невловимого Джо, який начебто нікому і не здався, а й різноманітні бяки все одно можуть мирно жити в його просторі, до пори до часу. У мене після походу до піратів, док буває з десяток троянів відловлює. Але з ними все зрозуміло, я просто оцінюю інформацію в моменті і на об'єктивних даних приймаю рішення. Коли копався в ігрових конструкторах, абсолютно випадково дізнався про сніффером. Мене дуже здивувала інформація про те, що адмін інтернет-провайдера може заглянути в віконце і навіть зайти в гості без стуку. Ну з ним гаразд, жодна розсудлива людина, а інші на таких місцях скоріше не водяться, не захоче ризикувати жопой заради скороминущого пригоди. Поставив Microsoft Network Monitor, глянув на всякі абраказябри, хоча розуміння того, що з цим «барахлом» робити, все одно не додалося.

І ось тепер знову цікава замітка, частково розкрита таємниця червоного замочка. У мене кілька днів такий висів в гугловських сортирі і я як би не особливо сприймав його. «Ну висить і висить, все одно сортир відомий, з усього світу туди срать ходют там справляють нужду.

Але давайте тепер повернемося до нашого героя Джо. З моменту запліднення яйцеклітини проникнення, виношування освоєння території і летального результату, можуть пройти тижні, місяці і навіть роки. Далеко не всі вміють залишатися в тіні, особисто мені по кайфу сутінки, тому хотілося б розуміти, де і коли за мною можуть пов'язати небажані хвости.

В общем-то я вже близько року, як перейшов на Y і ні крапельки не обламувати. Але судячи з тієї інформації, яку доводиться обробляти, темну все одно можуть влаштувати.

Думаю в базах Яндекса є сертифікати перехоплювачі які він показує як правильні.
І все знаючі люди розуміють чому.

Що стосується цієї нової функціональності, я вважаю це рух у правильному напрямку.

Але я вважаю, що Яндекс браузер був хороший тоді, коли тільки з'явився і не нав'язував свої сервіси, а надавав можливість ними користуватися.

так все-таки, як конкретно ви спостерігали за реакцією користувачів за рішенням з відкритим замочком?

а то недавно google заявив, що з хрому приберуть функцію «закрити інші вкладки», т.к за їхніми даними. їй користуються в 0,64% випадках використання контекстного меню.

звідки у вас у всіх така статистика?

Будь-який великий браузер (або сайт, продукт, додаток, операційна система, що завгодно) збирає статистику використання фич. Chromium в тому числі. Статистика анонімна, але цього достатньо, щоб оцінити реальний, а не передбачуване використання браузера. Відключається зазвичай у всіх однаково - в настройках. Але я відключати не рекомендую.

спасибі за відповідь, але я як і раніше буду сумніватися в тому, що якщо в будь-якому продукті відключити всі галочки в настройках, ніяка статистика і правда не буде передаватися.

знову ж таки, в вашому браузері є галочка - «відправляти статистику», яку можна відключити? ось скріншот з Chromium, не бачу, щоб тут щось подібне було

Боротьба з перехопленням https-трафіку

або ви все-таки примусово збираєте якусь статистику, яку не можна відключити?

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

В угодах не пишуть про управління, там про можливості. Відключення в налаштуваннях.

5.6. Користувач може в будь-який момент відмовитися від передачі даних, зазначених у п.п. 5.1 - 5.5, відключивши відповідні функції.
Як видно, пункт 5.7 не згадано в можливості відмови від передачі даних.

Спасибі, перевіримо. Можливо, тут про сигнал про встановлення, але треба уточнити.

А якщо ці сертифікатом встановлені адміністратором для використання систем DLP - я.браузер мовчки під них прогнеться?
P.S. Офіційною portable версії не передбачається?

Браузер не бачить, хто і навіщо поставив сертифікат. Тому повинен показати попередження.

Мені хочеться, щоб браузер не думав за мене і не лазив за мене по сайтам, але з кожним днем ​​все гірше і гірше. Firefox постійно лізе в Мозілли, я.браузер постійно лізе в яндекс чогось, на купу різних доменів. Сафарі ось ще не сильно стукає, зате сама Макось постійно лізе в Еппл.

У FF відкритий вихідний код, ви можете перевірити, куди і за якими даними він лізе. Відразу можу сказати, що там все прекрасно відключається, або не потребує відключення, як наприклад завантаження списку фішингових доменів.

Схожі статті