Опубліковано результати аудиту VPN-клієнта Mozilla

Компанія Mozilla оголосила про завершення незалежного аудиту клієнтського програмного забезпечення для підключення до сервісу Mozilla VPN. В ході аудиту був виконаний аналіз відокремленої клієнтської програми, написаної з використанням бібліотеки Qt і поставляється для Linux, MacOS, Windows, Android та iOS. Роботу Mozilla VPN забезпечує понад 400 серверів шведського VPN-провайдера Mullvad, розміщених у більш ніж 30 країнах. Підключення до VPN-сервісу здійснюється за допомогою протоколу WireGuard.

Аудит виконаний компанією Cure53, яка свого часу проводила аудит проектів NTPsec, SecureDrop, Cryptocat, F-Droid та Dovecot. Аудит торкався перевірки вихідних текстів і включав проведення тестів для виявлення можливих уразливостей (питання, пов'язані з криптографією не розглядалися). У ході перевірки виявлено 16 проблем з безпекою, 8 з яких мали характер рекомендацій, 5 надано низький рівень небезпеки, двом — середній, а одній — високий.

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

Друга проблема середнього рівня небезпеки пов'язана з відсутністю належного чищення нечислових значень у номері порту, що дозволяє організувати витік параметрів аудентифікації OAuth через заміну номера порту на рядок виду[захищено електронною поштою]», що призведе до встановлення тега[захищено електронною поштою]/?code=…» alt=»»>, що звертається до example.com замість 127.0.0.1.

Третя проблема, помічена як небезпечна, дозволяє будь-якому локальному додатку без автентифікації звернутися до VPN-клієнта через WebSocket, прив'язаний до локальної програми. Як приклад показано, як за активному VPN-клієнті будь-який сайт міг організувати створення та відправлення скріншота через генерацію події screen_capture. Проблема не віднесена до категорії уразливостей, так як WebSocket використовувався тільки у внутрішніх тестових зборках і застосування даного каналу зв'язку лише планувалося в майбутньому для взаємодії з браузерним доповненням.

Джерело: opennet.ru

Додати коментар або відгук