В новой версии браузера Firefox разработчики добавят в механизм работы с файлами cookie поддержку атрибута same-site. Обновление безопасности войдет в состав очередного релиза программы, запланированного на 9 мая.

Внедрение same-site защитит пользователей от межсайтовой подделки запроса (CSRF). Во время этой атаки от имени пользователя, который авторизовался на сайте, поступает фальшивое обращение на сторонний сервер. Обычно оно содержит данные файла cookie, подтверждающие выполнение какой-либо операции. Злоумышленники могут использовать этот метод для мошеннических целей и выполнения удаленного кода.

Из-за CSRF-уязвимости недавно оказалась скомпрометирована крупнейшая платформа сквозной авторизации Auth0. Команда разработчиков потратила полгода, чтобы пропатчить серверы всех подписчиков сервиса, прежде чем предать ошибку огласке.

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

Атрибут same-site запрещает браузеру выполнять запросы с использованием файлов cookie, которые отправлены от имени «чужого» домена. Так, например, при переходе на внешний сайт по ссылке из социальной сети ее cookie не будут включаться в состав запроса и, следовательно, не смогут быть использованы для обратной атаки от имени посетителя.

Реализация этого механизма предполагает два варианта использования — строгий (strict) и мягкий (lax). В первом случае браузер будет блокировать все cookie, не принадлежащие сайту, на котором выполнен вход. При переходе по внешней ссылке посетитель в любом случае будет рассматриваться как неавторизованный пользователь, даже если он прошел идентификацию на ресурсе-источнике.

Мягкий режим предполагает возможность использования «чужих» cookie при переходе по ссылкам, но блокирует их использование в случае небезопасных междоменных запросов. Например, при клике на ссылку из соцсети браузер будет использовать ее cookie наравне с файлами целевого сайта, но откажет в загрузке тех же объектов от имени других ресурсов.

Для полной защиты от CSRF-атак поддержки браузером недостаточно — владелец ресурса должен установить атрибут same-site в заголовках HTTP-обращений.

Разработчики Firefox не первыми вводят этот метод защиты. Пользователям Chrome он доступен с декабря прошлого года, мобильный браузер Samsung Internet получил обновление безопасности в октябре, а Opera защищена от CSRF с февраля 2018 года.

Категории: Кибероборона