Фишинговые атаки посредством использования атрибута target=_blank в ссылках


phishingИсследователи безопасности повторно информируют, что сайты, использующие атрибут target="_blank" в своих ссылках, подвергают пользователей риску фишинговых атак и, соответственно, утечки данных. И хотя об уязвимости target="_blank" было известно еще два года назад, она до сих пор присутствует на многих популярных ресурсах.


Суть уязвимости
При переходе пользователем по ссылке, использующей target="_blank", браузер открывает новую вкладку. На короткое время данная вкладка получает доступ к странице-источнику через объект window.opener. Таким образом, только что открытая вкладка может изменить window.opener.location. То есть, вместо предыдущей вкладки она может незаметно подгрузить совсем другую страницу.

Например, если пользователь перейдет по ссылке (использующей атрибут target="_blank") в Facebook, злоумышленник может незаметно заменить страницу подделкой, которая позже уведомит жертву о необходимости заново авторизоваться. Таким образом, учетные данные жертвы окажутся в руках преступника.

Разработчиком Бен Хэлперном (Ben Halpern) был составлен список крупных сайтов, уязвимых к данному методу атаки. В их числе оказались:

  • Instagram;
  • Facebook;
  • Twitter (если ссылки открываются в браузере Safari).


Компании были проинформированы об уязвимости, однако на сегодняшний день она исправлена только в Instagram.

Также разработчиком был предложен метод предотвращения эксплуатации данной проблемы. Его суть в добавлении атрибута rel="noopener" во все ссылки на сайте. А поскольку браузер Mozilla Firefox не полностью поддерживает данный атрибут, то вместо rel="noopener" может использоваться rel="noopener noreferrer".


Обновлено (02.09.2016 20:27)