• Администрация SafeZone приветствует вас на нашем форуме!
    Если вы больше не желаете видеть рекламу при просмотре тем и сообщений - то достаточно просто зарегистрироваться. Для зарегистрированных пользователей реклама не отображается.

Получение списка расширений Chrome простым скриптом

Mila

Основатель
Сообщения
4,949
Симпатии
10,469
#1
Польский специалист по безопасности Кржиштоф Котович (Krzysztof Kotowicz) показал несколько строчек Javascript, с помощью которых можно получить список расширений, установленных у пользователя в браузере Chrome (или любом другом браузере семейства Chromium).

Рабочее демо (проверка наличия/отсутствия у пользователя десятка самых популярных расширений)

Исходный код

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

Фингерпринтинг означает получение уникального «отпечатка» компьютера пользователя, то есть совокупности информации из user-agent браузера, сведений о версии операционной системы, разрешении экрана и другой информации. Каждый по отдельности такой факт совершенно не оригинален, но все вместе они представляют собой уникальное сочетание фактов, которое можно сравнить с «отпечатком пальца» (fingerprint).

Созданный польским специалистов скрипт — это демонстрация концепции, которая должна показать теоретическую возможность слежки за пользователями без использования cookies. Сам скрипт исключительно простой.

var detect = function(base, if_installed, if_not_installed) {

var s = document.createElement('script');

s.onerror = if_not_installed;

s.onload = if_installed;

document.body.appendChild(s);

s.src = base + '/manifest.json';

}

detect('chrome-extension://' + addon_id_youre_after, function() {alert('boom!');});

Функционал основан на том, что у каждого расширения Chrome есть уникальный URI, который начинается с chrome-extension://. Достаточно просто составить список URI для самых популярных расширений и обратиться к этим URI с веб-страницы. Проверка происходит очень быстро, так что можно увеличить список проверяемых расширений, если у вас есть цель действительно получить оригинальный «отпечаток» браузера пользователя.

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




источник