Найденная немецким специалистом по безопасности уязвимость в работе веб-фильтра антивируса Kaspersky могла в течении многих лет использоваться для отслеживания перемещения его пользователей в Сети
Специалисты c't magazine регулярно проводят тестирования продуктов безопасности различных компаний. В марте Рональд для этих целей установил на свой рабочий компьютер Kaspersky Internet Security. В ходе знакомства с продуктом у журналиста не возникло никаких нареканий, хотя он и сравнил иронично его работу с Windows Defender, но в какой-то момент Рональд обнаружил странный артефакт. Он посмотрел html-код произвольного веб-сайта и обнаружил там следующую строку коду:
Очевидно, что это внешний скрипт на языке JavaScript с именем main.js, загружающийся с сервера Лаборатории Касперского. Сама практика загрузки внешних скриптов не редкость, сейчас те или иные внешние ресурсы загружают большинство существующих веб-сайтов. Однако когда журналист проверил код на других страницах, он обнаружил, что данная строчка кода дублировалась на каждой посещаемом им веб-сайте, вплоть до его онлайн-банка. После чего Рональд сделал логичный вывод, что это связано с недавно установленным антивирусом.
В рамках эксперимента он проверил, повторяется ли эта ситуация в Firefox, Edge и Opera, и убедился, что данный скрипт загружается на любой веб-странице в любом браузере. Учитывая отсутствие подозрительных расширений для браузера, которые могли бы быть ответственными за данное явление, Рональд сделал простой вывод, что антивирус Касперского манипулирует его интернет-трафиком, добавляя данный код на все посещаемые им страницы без его явного разрешения, что напоминает поведение банковских троянов — вредоносных программ, созданных для перехвата данных с веб-сайтов, принадлежащих банкам, например, для скрытого изменения получателя денежного перевода.
После непродолжительного анализа журналист выяснил, что скрипт main.js ответственен за отображение зеленых значков рядом с результатами поиска в Google, если Kaspersky считает, что соответствующая ссылка ведет на безопасный сайт. На этом всё могло бы и завершиться, если бы ни одна маленькая деталь: адрес, с которого был загружен скрипт, содержал подозрительную подстроку:
Выделенная часть явно напоминает универсальный уникальный идентификатор (UUID). Эти идентификаторы используются для однозначной идентификации пользователей. Но кого или что можно идентифицировать, используя ID от Kaspersky?
Рональд расширил свой эксперимент и установил программное обеспечение Kaspersky на другие рабочие компьютеры издания, после чего Kaspersky также внедрил свой JavaScript в веб-страницы и на этих системах. Затем журналист обнаружил, что UUID был разным и уникальным для каждого компьютера. Он оставался постоянным и не менялся даже спустя несколько дней. Таким образом, было ясно, что у каждого компьютера был свой постоянный идентификатор.
Kaspersky оставлял UUID прямо в адресе скрипта в исходном коде HTML каждого сайта. Другие скрипты, работающие в контексте домена веб-сайта, могли в любое время получить доступ к нему. Другими словами, любой сайт может прочитать идентификатор пользователя Kaspersky и использовать его для отслеживания перемещений попавшегося пользователя в сети. Если тот же универсальный уникальный идентификатор возвращается или появляется на другом веб-сайте, третьи лица могут не сомневаться, что используется тот же компьютер и вероятно это тот же самый человек. Если это предположение верно, Kaspersky создал опасный механизм отслеживания, который оставляет в стороне cookie, значительно упрощая задачу маркетинговым сетям и злоумышленникам. И, что примечательно, данный механизм может преодолеть даже режим инкогнито любого из популярных браузеров.
Чтобы не допустить подобные сценарии, если вы используете продукты Лаборатории Касперского, вы можете отключить соответствующую функцию в настройках антивируса: щёлкните значок шестерёнки, чтобы открыть настройки, в левом нижнем углу главного окна, затем нажмите «Параметры сети» Наконец, снимите флажок «Внедрять в трафик скрипт взаимодействия с веб-страницам» в разделе «Обработка трафика». Но обратите внимание, что это повлияет на работоспособность некоторых из защитных модулей продукта.