Не так давно я натолкнулся на очень интересную заметку «Будьте осторожны с расширениями Safari и отключите их автоматическое обновление», опубликованную Лексом Фридманом (Lex Friedman) — постоянным автором Macworld и TidBITS, блоггером, веб-разработчиком и создателем нескольких расширений для Safari. В ней автор рассказывает о проблемах, которые могут поджидать обыкновенных пользователей после установки расширений в браузер. Предлагаю нашим читателям ознакомиться с вольным переводом этой статьи и передаю слово мистеру Фридману.

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

Для начала, стоит рассказать о принципе работы расширений: как и веб-страницы, аддон состоит из кода Javascript, CSS и HTML. Мой «Affiliatizer», например, использует Javascript для получения всех ссылок на странице. Затем он проверяет каждую из них с целью найти линк, указывающий на Amazon, и немного изменяет его (добавляет ваш партнерский код) — все с помощью Javascript.

Установленные расширения могут добавлять любой HTML-код на любые просматриваемые веб-страницы. И в этом заключается основная проблема — причем, она намного опасней, чем может показаться на первый взгляд.

Посмотрите на мое новое (на самом деле, безобидное) расширение, которое я назвал Расширение Зла. Вместо того, чтобы на странице искать ссылки или изменять шрифты, оно создает новый элемент HTML, который называется <iframe>.

Iframe используется для отображения содержимого одной веб-страницы на другой. Например, создав «страницу Лекса» я могу где-то внутри неё добавить с помощью iframe содержимое «страницы Джона». Веб-сайты, как правило, стараются не использовать такой подход, но эти элементы до сих пор применяются и все современные браузеры их поддерживают.

Расширение Зла при помощи Javascript создает такой iframe на каждой просматриваемой вами странице и в качестве источника фрейма использует адрес http://lexfriedman.com/extensions/evil.php с оговоркой: к запросу я добавляю URL страницы, на которой вы в настоящее время находитесь. Например, когда я открываю Google, в iframe используется такой  адрес: http://lexfriedman.com/extensions/evil.php?url=http://www.google.com/.

Мое расширение, как я уже сказал, безвредно. Кроме адреса сайта, скрипт evil.php еще использует ваш IP (если сможет его получить) без хранения любой подобной информации. И выглядит это так:

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

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

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

Таким образом, мифическое Точно-Не-Плохое расширение, позволяющее, к примеру, вывести определение слова со страницы, в начале покажется безопасным. А через несколько месяцев его создатель незаметно добавит код, создающий iframe и собирающий личную информацию со всех посещенных вами страниц. И если вы регулярно не следите за изменением версий установленных расширений, то даже не узнаете об обновлении.

В качестве краткосрочного решения этой проблемы можно, как минимум, отключить автоматические обновление для расширений в этом окне:

Но даже установив обновление вручную, вы все равно можете быть обманутым злоумышленником.

К сожалению, сейчас нет простого решения этой проблемы. Safari мог бы блокировать различные элементы, которые используются хакерами, но такой подход значительно «урежет» возможности других расширений. Остается использовать официальный каталог и надеяться на то, что Apple тщательно проверяет расширения на наличие подобных «трюков».

Буду откровенным: я не знаю ни одного такого расширения для Safari. Но не сомневаюсь, что для Chrome или Firefox можно сделать нечто подобное. Кроме этого, я не предлагаю вам совсем отказаться от расширений или бояться их устанавливать. Скорее, вы просто должны иметь представление о возможностях расширений. Убедитесь, что вы доверяете разработчикам, но будьте на чеку.

Оригинал


Читайте также: