[Перевод] Защита URL-адресов в режиме реального времени с сохранением конфиденциальности

Оригинал

Более 15 лет Google Safe Browsing защищает пользователей от фишинга, вредоносных программ, нежелательного программного обеспечения и т. д., выявляя и предупреждая пользователей о потенциально опасных сайтах на более чем 5 миллиардах устройств по всему миру. По мере того как злоумышленники становятся все более изощренными, мы видим необходимость в средствах защиты, которые могут адаптироваться так же быстро, как и угрозы, от которых они защищают. Именно поэтому мы рады объявить о выходе новой версии Safe Browsing, которая обеспечит защиту URL-адресов в режиме реального времени с сохранением конфиденциальности для пользователей, использующих стандартный режим защиты Safe Browsing в Chrome.

Текущий сценарий

Chrome автоматически защищает вас, отмечая потенциально опасные сайты и файлы, благодаря функции Safe Browsing, которая ежедневно обнаруживает тысячи небезопасных сайтов и добавляет их в свои списки опасных сайтов и файлов.

До сих пор по соображениям конфиденциальности и производительности Chrome сначала проверял посещаемые сайты по локально хранящемуся списку известных небезопасных сайтов, который обновляется каждые 30–60 минут — для этого используются проверки на основе хэшей.

Пример проверки на основе хэша

Пример проверки на основе хэша

Но опасные сайты адаптировались — сегодня большинство из них существует менее 10 минут, а это значит, что к моменту обновления локально хранящегося списка известных опасных сайтов многие из них уже успели проскочить и нанести вред, если пользователь посетил их в этот период. Кроме того, список опасных сайтов в Safe Browsing продолжает стремительно расти. Не все устройства обладают ресурсами, необходимыми для поддержания этого пополняющегося списка, и не всегда могут получать и применять обновления списка с частотой, необходимой для полноценной защиты.

Режим усиленной защиты Safe Browsing позволяет опережать подобные угрозы благодаря таким технологиям, как проверка списков в режиме реального времени и классификация вредоносных URL и веб-страниц на основе искусственного интеллекта. Мы создали этот режим в качестве опции, чтобы дать пользователям возможность выбирать, предоставлять ли им больше данных, связанных с безопасностью, чтобы получить более надежную защиту. Этот режим показал, что проверка списков в режиме реального времени приносит большую пользу, поэтому мы решили перенести его в стандартный режим защиты по умолчанию с помощью нового API, который не передает URL-адреса посещаемых вами сайтов в Google.

Внедрение безопасного просмотра в режиме реального времени с сохранением конфиденциальности

Как это работает

Чтобы обеспечить защиту в режиме реального времени, необходимо выполнять проверку по списку, который ведется на сервере Safe Browsing. Список на сервере может добавлять небезопасные сайты сразу после их обнаружения, поэтому он способен быстро перехватывать сайты. Он также может увеличиваться настолько, насколько это необходимо, поскольку сервер Safe Browsing не ограничен так, как пользовательские устройства.

Что происходит в Chrome за «кулисами»:

  1. При посещении сайта Chrome сначала проверяет свой кэш, чтобы убедиться, что адрес (URL) сайта уже известен как безопасный (подробнее см. в разделе «Быстрая и надежная работа»).

  2. Если посещаемый URL-адрес отсутствует в кэше, он может быть небезопасен, поэтому необходима проверка в реальном времени.

  3. Chrome обфусцирует URL,  следуя правилам правилам хеширования URL чтобы преобразовать его в 32-байтовый полный хеш.

  4. Chrome усекает полные хэши до 4-байтовых префиксов хэша.

  5. Chrome шифрует хэш-префиксы и отправляет их на конфиденциальный сервер (подробнее см. в разделе «Обеспечение конфиденциальности данных»).

  6. Сервер конфиденциальности удаляет все возможные идентификаторы пользователя и передает зашифрованные хэш-префиксы на сервер Safe Browsing через TLS-соединение, в котором запросы смешиваются с множеством запросов от других пользователей Chrome.

  7. Сервер Safe Browsing расшифровывает хэш-префиксы и сопоставляет их с базой данных на стороне сервера, возвращая полные хэши всех небезопасных URL, которые соответствуют одному из хэш-префиксов, отправленных Chrome.

  8. Получив небезопасные полные хэши, Chrome сверяет их с полными хэшами посещенных URL.

  9. Если найдено хоть одно совпадение, Chrome выдаст предупреждение.

Сохранение конфиденциальности ваших данных

Чтобы сохранить конфиденциальность пользователей, мы сотрудничаем с Fastly, облачной платформой, предоставляющей услуги доставки контента, вычислений, безопасности и наблюдений, и используем сервер конфиденциальности Oblivious HTTP (OHTTP) вы можете узнать больше о стремлении Fastly к конфиденциальности пользователей на странице Customer Trust page. Благодаря OHTTP Safe Browsing не видит ваш IP-адрес, а ваши проверки Safe Browsing смешиваются с проверками, отправленными другими пользователями Chrome. Это означает, что Safe Browsing не может сопоставить проверяемые URL-адреса, которые вы отправляете во время просмотра веб-страниц.

Прежде чем хэш-префиксы покинут ваше устройство, Chrome зашифрует их с помощью открытого ключа службы Safe Browsing. Затем эти зашифрованные хэш-префиксы отправляются на сервер конфиденциальности. Поскольку сервер конфиденциальности не знает закрытого ключа, он не может расшифровать хэш-префиксы, что обеспечивает конфиденциальность от самого сервера конфиденциальности.

Затем сервер конфиденциальности удаляет потенциальные идентификаторы пользователя, такие как ваш IP-адрес, и передает зашифрованные хэш-префиксы на сервер Safe Browsing. Сервер конфиденциальности работает независимо от Fastly, что означает, что Google не имеет доступа к потенциальным идентификаторам пользователя (включая IP-адрес и User Agent) из исходного запроса. После того как сервер Safe Browsing получает зашифрованные хэш-префиксы от сервера конфиденциальности, он расшифровывает их с помощью своего закрытого ключа и затем продолжает проверку списка на стороне сервера.

В конечном итоге Safe Browsing видит хэш-префиксы вашего URL, но не ваш IP-адрес, а сервер конфиденциальности видит ваш IP-адрес, но не хэш-префиксы. Ни одна сторона не имеет доступа ни к вашей личности, ни к хэш-префиксам. Таким образом, ваша деятельность в Интернете остается конфиденциальной.

Проверка в режиме реального времени

Проверка в режиме реального времени

Скорость и надежность

По сравнению с проверкой на основе хэша, проверка в реальном времени требует отправки запроса на сервер, что увеличивает задержку. Мы применили несколько методов, чтобы обеспечить плавную и отзывчивую работу браузера.

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

  • Глобальный кэш — это список хэшей известных безопасных URL-адресов, который обслуживается программой Safe Browsing. Chrome получает его в фоновом режиме. Если полный хэш URL-адреса будет найден в глобальном кэше, Chrome сочтет его безопасным и выполнит проверку на основе хэша.

  • Локальный кэш, в свою очередь, представляет собой список полных хэшей, сохраненных после предыдущих проверок Safe Browsing. Если в локальном кэше есть совпадение, а срок действия кэша еще не истек, Chrome не будет отправлять запрос на сервер Safe Browsing в режиме реального времени.

Оба кэша хранятся в памяти, поэтому проверять их гораздо быстрее, чем отправлять запрос по сети в режиме реального времени.

Кроме того, Chrome использует механизм ожидания в случае неудачных или медленных запросов. Если запросы в реальном времени не выполняются, Chrome переходит в режим ожидания и на некоторое время переходит к проверкам на основе хэша.

Мы также находимся в процессе внедрения асинхронного механизма, который позволит сайту загружаться, пока идет проверка в реальном времени. Это улучшит работу пользователей, так как проверка в реальном времени не будет блокировать загрузку страницы.

Что означает для вас защита URL-адресов в режиме реального времени с сохранением конфиденциальности

Для пользователей Chrome

В последнем обновлении Chrome для настольных компьютеров, Android и iOS мы усовершенствовали стандартный режим защиты Safe Browsing, теперь он будет проверять сайты с помощью протокола Safe Browsing в режиме реального времени, не передавая историю просмотров в Google. Чтобы воспользоваться этой улучшенной функцией, не нужно предпринимать никаких действий.

f84ef8029833b971a0375ab9c5326e7d.png

Если вам нужна более надежная защита, мы рекомендуем вам включить режим усиленной защиты Safe Browsing. Вы можете спросить, зачем вам нужна усиленная защита, если в режиме стандартной защиты вы получаете защиту URL-адресов в реальном времени — дело в том, что в режиме стандартной защиты функция защиты в режиме реального времени может защитить вас только от сайтов, которые Safe Browsing уже подтвердил как небезопасные. С другой стороны, режим усиленной защиты способен использовать дополнительную информацию вместе с усовершенствованными моделями машинного обучения для защиты от сайтов, которые Safe Browsing еще не подтвердил как небезопасные, например, потому что сайт был создан совсем недавно или скрывает свое истинное поведение от систем обнаружения Safe Browsing.

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

Для предприятий

Функция проверки в реальном времени в стандартном режиме защиты Safe Browsing по умолчанию включена в Chrome. При необходимости ее можно настроить с помощью политики SafeBrowsingProxiedRealTimeChecksAllowed. Стоит также отметить, что для работы этой функции в Chrome предприятиям может потребоваться явно разрешить трафик на сервер конфиденциальности Fastly. Если сервер недоступен, Chrome понизит уровень проверки до проверок на основе хэша.

Для разработчиков

Хотя Chrome является первой платформой, на которой доступны эти средства защиты, мы планируем предоставить их разработчикам, желающим использовать их в некоммерческих целях, с помощью Safe Browsing API. Используя API, разработчики и операторы серверов конфиденциальности смогут сотрудничать, чтобы лучше защитить пользователей своих продуктов от быстро меняющихся угроз со стороны злоумышленников с сохранением конфиденциальности. Чтобы узнать больше, следите за нашей документацией для разработчиков, которая будет опубликована на сайте Google для разработчиков.

Habrahabr.ru прочитано 7154 раза