Спецпроекты

Безопасность Стратегия безопасности Интернет Интернет-ПО Маркет

Chrome уничтожит всплывающие окна в интернете

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

Окна прикрываются

По мнению разработчиков браузера Google Chrome, всплывающие окна-уведомления на JavaScript создают «слишком много возможностей для злоупотреблений». Команда разработчиков Chrome намерена их запретить, пишет издание The Register.

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

Как сделать всплывающие уведомления безопасными

В блоге для разработчиков Google поясняет, что первые версии JavaScript, представленные в 1995 г., имели три функции взаимодействия с пользователем - alert(), confirm() и prompt(). Со временем их синхронные API стали конфликтовать с современными версиями браузеров.

Диалоговые окна являются модальными - движок JavaScript останавливается до получения отклика пользователя, что при злонамеренном использовании ведет к блокировке всего браузера.

Создатели Google Chrome вступили в борьбу со всплывающими окнами

Для борьбы с ними Google планирует в ближайшей перспективе изменить обработку JavaScript, сделав функции alert(), confirm() и prompt() немодальными. Это уже реализовано в браузере Safari, где всплывающее JavaScript-окно исчезает при переходе пользователя на другую вкладку.

Еще одним потенциальным новшеством может стать возможность отказа от показа alert(), confirm() и prompt() в том случае, если пользователь не взаимодействует с веб-страницей. «Детали такого варианта еще обсуждаются», - отметили в Google.

HTML на замену JavaScript

Кроме того, Google рекомендует разработчикам несколько других вариантов использования уведомлений. К примеру, они могут применять функцию Notifications API. Для получения отклика от пользователя ей предусмотрено диалоговое окно HTML. Работающие с межсайтовым скриптингом могут использовать метод console.log. На мобильных же платформах рекомендуется использовать API, которое позволяет узнать, видит ли пользователь ваш сайт - Page Visibility API.

Александр Корнев

Короткая ссылка