Открытие кода web-браузера Aviator раскрыло серьёзные проблемы с безопасностью

10.01.2015 10:42

Компания WhiteHat Security анонсировала открытие исходных текстов web-браузера Aviator, преподносимого как самый безопасный web-браузер (в FAQ сказано "WhiteHat Aviator; is the most secure, most private Web browser available anywhere"). Код Aviator основан на наработках проекта Chromium и теперь доступен на GitHub.

 Открытие кода web-браузера Aviator раскрыло серьёзные проблемы с безопасностью

Ключевой задачей проекта является создание безопасного и обеспечивающего тайну частной жизни web-браузера. Для достижения этой цели в браузере по умолчанию активированы средства борьбы с отслеживанием перемещения пользователей, блокируется передача cookie на сторонние сайты, заголовок http_referrer заполняется только для переходов внутри текущего сайта, ограничивается доступ к внешним ресурсам по intranet-адресам (например, для борьбы с атаками на домашние маршрутизаторы), в качестве поисковой системы используется DuckDuckGo, включены дополнительные меры защиты от навязчивой рекламы, всплывающих окон и шпионящего ПО, работа по умолчанию осуществляется в режиме инкогнито, после каждого перезапуска выполняется чистка кэша, истории посещений, локального хранилища и cookies.

 Открытие кода web-браузера Aviator раскрыло серьёзные проблемы с безопасностью

Интересно, что в первый же день после открытия кода Джастир Шу (Justin Schuh) из компании Google выступил с резкой критикой проекта, указав на наличие нескольких опасных ошибок и недоработок в архитектуре формирования надстройки над кодом Chromium. В том числе указано на наличие неисправленных уязвимостей, которые могут привести к организации удалённого выполнения кода на системе пользователя. Пользователям был дан совет, что им не стоит использовать Aviator, если они беспокоятся о безопасности и сохранении личных данных.

Изучение кода показало, что по сути Aviator мало чем отличается от Chromium, так как большинство внесённых изменений носят поверхностный характер, связаны с заменой элементов брендинга или изменением настроек по умолчанию. Проблема заключается в том, что данные изменения внесены непосредственно в код ответвления от Chromium с нарушением обратной совместимости, что значительно усложняет отслеживание исправлений, появляющихся в кодовой базе Chromium. В том числе, из-за подобного подхода в предлагаемой для загрузки актуальной версии Aviator присутствует серия опасных уязвимостей, которые уже исправлены в Chromium и информация о которых обнародована публично.

Кроме того, разработчики Aviator по непонятным причинам внесли изменения в модель sandbox-изоляции процессов, явно полностью не разобравшись в том как работает Chromium. Данное изменение привело к обратному эффекту, в результате которого появились дополнительные способы выхода из изолированного окружения. Например, вместе с отладочными механизмами убран и код отслеживания корректности завершения изолированных процессов, что привело к появлению новых уязвимостей.

При этом непонятно, по какой причине понадобилось ломать совместимость с кодовой базой Chromium, так как все из существующих улучшений Aviator можно было реализовать через штатный API. Более того, основная функциональность доступна через поставку в комплекте расширения Disconnect и изменение настроек (аналогичного уровня защиты можно достичь в Chrome следуя рекомендациям по изменению конфигурации для обеспечения повышенной защиты частной информации).

Создатели браузера отреагировали заявлением, в котором сослались на то, что у них нет таких огромных ресурсов для аудита кода, как у Google, поэтому они и открыли исходные тексты своих наработок, надеясь, что сообщество поможет в работе по выявлению ошибок и уязвимостей. По поводу архитектурных проблем, было сказано, что возможно код Aviator не такой элегантный как Chrome, но и в Chrome имеются ошибки, которых не избежать в силу огромной сложности проекта.