Содержание статьи
Часть 2: Как изменилась тайная жизнь Windows 10 за год
С момента своего появления Windows был естественной средой обитания зловредов всех мастей. Похоже, новая версия этой операционки сама стала одним из троянов. Сразу после установки чистая система ведёт себя подозрительно. Данные рекой льются на десятки серверов Microsoft и партнерских компаний. Мы решили разобраться с жалобами на шпионские замашки «Десятки» и узнали, что и куда она отправляет.
WARNING
Вся информация получена в ходе собственных исследований и предоставлена исключительно в ознакомительных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный вмешательством в работу ОС.
Microsoft > NSA
Первые сообщения о странном поведении Windows 10 появились ещё на этапе знакомства с Technical Preview. Значительный трафик в ней создаётся постоянно – даже когда не запущено ни одно приложение для работы в сети. Тогда такое поведение списывали на сбор статистики, необходимой для отладки. В Microsoft изучали поведение нового продукта на разных конфигурациях, а пользователи играли роль бета-тестеров. Вроде бы, всё логично. Однако с выходом релиза ничего не изменилось, и жалоб стало только больше.
«В прошлые выходные я обновил Windows 8 на лэптопе моего сына до Windows 10. Сегодня в первый рабочий день мне пришло письмо из Microsoft с темой «Еженедельный отчёт об активности». В нём были подробнейшие сведения о действиях сына за ноутбуком: когда и сколько он за ним сидел, какие приложения использовал и как долго, что искал в сети, какие сайты посещал, и многое другое. Я был крайне возмущён, поскольку не собирался следить за своим ребенком. В Microsoft мне ответили, что если я не хочу получать подобных писем, то мне следует указать это в настройках семейного аккаунта через свою учетную запись. В Windows 8 такой проблемы не было». Это отрывок из письма друга известного писателя и активиста Кори Доктороу, опубликованное в блоге Boing Boing. Многие обозреватели утверждают, что эти сведения о пользователях по-прежнему собираются — независимо от настроек аккаунта. Если что-то и можно отключить, то это отчеты, которые приходят на почту.
Xakep #200. Тайная жизнь Windows 10
Самое интересное, что сбор различной информации встроенными средствами Windows 10 подробно описан в «Заявлении о конфиденциальности». Конечно, большинство не станет его читать, а среди ознакомившихся будет много недоумевающих. Формулировки в объёмном тексте используются хитрые и размытые. Из них трудно понять, что именно изменится в плане приватности с переходом на Windows 10. Если кратко, то о ней можно будет забыть. Правозащитники сходятся во мнении, что система сразу начинает собирать все данные, которые только может получить. Вот список их основных типов.
Биометрические:
- образец голоса и произношения определённых слов;
- образец почерка (рукописного ввода);
- образцы набираемых текстов в любом приложении.
Геолокационные:
- информация о текущем местоположении;
- история местоположений с указанием временных меток.
Технические:
- данные об оборудовании, включая идентификаторы устройств;
- сведения о подключённых сетях (проводных и беспроводных);
- сведения телеметрии;
- данные от любых встроенных датчиков.
Поведенческий анализ:
- история поисковых запросов;
- история посещённых веб-страниц;
- время старта Windows и завершения работы;
- время запуска и закрытия каждого приложения.
Покупательская активность:
- загрузки приложений из фирменного магазина;
- переход по ссылкам контекстной рекламы;
- переход по ссылкам персонализированной рекламы.
Перечень можно продолжить, но и такого набора достаточно, чтобы начать собственное исследование. Забегая вперед, отметим, что часть обвинений в адрес Windows 10 все-таки не подтвердилась. Например, чешское издание AE News предполагает, что ОС выполняет отправку изображения с веб-камеры на серверы Microsoft. В нашем тесте система отреагировала на подключение камеры лишь установкой драйверов – никаких посторонних действий с ней зарегистрировано не было ни сразу, ни потом.
Наблюдение за наблюдателем
Привычных инструментов в арсенале хакера предостаточно для изучения любого софта. Тестовый комп с чистым SSD, виртуальная машина, сниффер Wireshark, HTTP-прокси и дебаггер Fiddler, монитор сетевых соединений TCPView, а также программы для создания снимков реестра и мелкие вспомогательные утилиты. Мы старались использовать версии, не требующие установки. Исключение составили только Wireshark и Fiddler из-за специфики их работы. Эти программы оставили напоследок, чтобы большая часть тестирования выполнялась на совершенно чистой системе. Сетевой трафик анализировался как в настройках Windows 10 по умолчанию, так и после поэтапного отключения всех следящих функций.
Из официальных документов следует, что за пользователем следят: сама Windows, глубоко интегрированный поиск Bing, голосовой помощник Cortana, служба MSN, пакет Office, клиент облачного хранилища OneDrive, почтовый клиент Outlook, а также Skype, Silverlight и Xbox Live. Подробнее об этом написано на сайте Microsoft. Посмотрим, как именно происходит сбор данных.
Выполнив чистую установку сборки 10240, мы стали наблюдать за её сетевым поведением с помощью TCPView. Никаких других действий при этом не выполнялось. Поначалу всё было тихо — как в «Семерке». Лишь фирменный магазин приложений показывал готовность получить данные через сеть доставки контента от Akamai Technologies.
Когда уже стало надоедать сидеть в засаде, внезапно ожил системный процесс \Windows\System32\svchost.exe
. Он установил подключение к удалённому узлу 191.232.139.254 и отправил на него 7,5 КБ.
Можно было узнать принадлежность IP-адреса через сервис WHOIS, но спрашивать Shodan информативнее.
Как стало ясно из описания, это робот поисковой системы Bing. Если бы в тесте был сделан хоть один поисковый запрос (даже локальный), тогда соединение не вызывало бы никаких возражений. Однако мы просто сидели и смотрели в TCPView на то, как компьютер начинает шпионить за нами.
Подготовка к пакетному шторму
Спящие службы можно ждать долго. Пора пробудить их и проявить немного активности. Нажатие кнопки «Пуск» заставило ожить инфоблоки справа. Появился прогноз погоды, начали отображаться новости и реклама. TCPView показывает, что всё это грузится через сеть Akamai и выглядит легитимно. Как только мы запускаем «Блокнот» и начинаем набирать текст, картина сразу меняется.
Возникает сразу шесть соединений, которые быстро закрываются, — в сумме уходит чуть больше сотни пакетов. Отключив функцию «искать в интернете», мы оставили только локальный поиск Windows. Снова запустили «Блокнот» и начали набирать произвольный текст. Всё равно появился процесс SearchUI и стал передавать данные в сеть.
Наверное, мы как-то не так поняли «Заявление о конфиденциальности». Посмотрим его ещё раз. Это простая текстовая страничка, которая открывается в браузере Edge. Какой она может создать трафик? Примерно такой, как на картинке.
Перечень соединений так быстро обновлялся, что просто так и не уследишь. Поэтому мы приступили ко второй части исследования. Закрыли все приложения, поставили сниффер Wireshark и записали активность Windows за полчаса. Чтобы сымитировать хоть какую-то активность, мы просто смотрели некоторые настройки в панели управления, но не меняли их.
За полчаса в сеть ушло около восьми тысяч пакетов. Как показало изучение логов, большинство соединений устанавливалось по адресам в пределах одной из крупных подсетей. У принадлежащих им айпишников часто менялись два-три последних октета. Это говорит о том, что Microsoft развернула огромную сеть для обработки всей стекающейся от пользователей Windows информации. Если отсеять однотипные адреса, то в сухом остатке получится подборка как на картинке.
В глаза бросается бразильский сервер, но это очередной BingBot (возможно, какой-то особо специализированный), но вопросы вызывает далеко не только он. Например, какого черта выполнялось соединение с сервером Facebook в Нидерландах? Кто просил подключаться к облачному хранилищу CloudFlare? Ни одного файла ещё не создано. Даже учётная запись Microsoft не была активирована.
Вскрываем шпионскую сеть
После поиска Bing главная шпионка в Windows – Кортана. С ней как-то сразу сложились натянутые отношения. Сперва она сама настояла на знакомстве, а затем вдруг заявила, что не понимает русскую речь и даже учиться этому не собирается.
Даже сменив язык на английский, а регион – на США, мы так и не добились её расположения. В базе знаний Microsoft об этом говорится просто – установите соответствующее исправление через службу обновлений. Жаль только, что пользователь теперь лишен возможности ставить апдейты по своему усмотрению. Они скачиваются и устанавливаются Windows автоматически. Юзер может выбрать лишь отмену перезагрузки и задать отложенную инсталляцию.
Большая часть скрытого трафика Windows идет через сеть доставки контента Akamai, поэтому не отображается в логах HTTP-прокси. Однако это не значит, что смотреть их бесполезно. Запустив Fiddler, можно обнаружить интересные вещи. Например, выяснить, что идентификация пользователя происходит ещё до активации установленной копии Windows.
При взгляде на окно Fiddler видно характерную форму /usercard/?id=
, обращения к учетной записи через службу Microsoft Live и многое другое. Откуда взялись запросы к visualstudio.com и социальным сервисам Microsoft – загадка.
Трафик по HTTP за полчаса бездействия оказался настолько большим, что стало проблемой наглядно отобразить его на экране. Мы сделали пару скриншотов, а затем составили список засветившихся хостов. Можно бы сразу занести их в файл hosts, но мы пока отложим это, чтобы не нарушать ход эксперимента.
Из этого списка ожидаемым выглядит только URL windowsupdate.com, который мы не стали включать в список блокировки. Согласно журналу установки, за всё время эксперимента автоматически было инсталлировано 21 обновление общим объемом около 150 МБ. В ходе теста кроме «Блокнота» мы запускали только «Калькулятор» и свои утилиты для анализа активности Windows, в которых было отключено автообновление. При этом общий сетевой трафик превысил полгигабайта. Многовато для «служебных данных, собираемых в целях улучшения впечатления от работы программ»!
Впечатление оказалось сильно испорченным. Следящих функций в Windows 10 действительно крайне много. Отключение интегрированного поиска и увольнение Кортаны помогает лишь отчасти. «Защитник Windows» отправляет в Microsoft образы файлов, которые сочтет подозрительными или вредоносными. Фильтр SmartScreen не только проверяет веб-контент, но и формирует список посещенных страниц. Журнал местоположений протоколирует все физические перемещения (особенно актуально, если Windows 10 установлена на мобильном устройстве). Отчет о взаимодействии с пользователем отсылают и многие приложения в новом стиле, а в разделе «данные диагностики и использования» вообще нельзя запретить отправку отчета – можно лишь выбрать менее подробный вариант.
INFO
В последнее время Microsoft пытается научить прежние версии ОС Windows шпионить так же, как это делает «Десятка». В частности, следящие функции добавятся с обновлениями KB3075249 и KB3080149.
Уход в офлайн
Мы решили полностью отключить все узаконенные средства шпионажа штатными средствами Windows. В основном настройки меняются через вкладки «Конфиденциальность», «Поиск» и «Обновление и безопасность» в панели управления. Переключателей там с полсотни, вот только будет ли от них толк?
Мы отключили всё, что только можно и запустили Wireshark снова. На этот раз не пользовались никакими встроенными приложениями и даже не трогали мышку. Вернувшись через час, видим в логах сниффера до боли знакомые IP.
Прогресс есть. Общее число запросов уменьшилось на порядок. Примерно втрое сократилось и число удалённых узлов, к которым выполняется подключение без ведома пользователя. Однако среди них появились новые. Если в первом логе Wireshark внезапно нашелся сервер Facebook, то теперь засветился дата-центр Amazon из Ирландии.
Раз уж Fiddler помог добыть список IP, то их массовое добавление в файл hosts должно помочь прекратить слежку. Проверим, создав список блокировки, и снова запустим Wireshark.
По сравнению с первым логом этот выглядит скучно. На экране не уместился только один айпишник, а их общий список состоит всего из четырех. Два из них относятся к сети доставки контента и не могут эффективно блокироваться в hosts – слишком много подсетей принадлежит Akamai. Третий IP-адрес принадлежит службе Windows Update, которую не блокировали. Самым стойким шпионом оказался BingBot. Его связь с бразильской Microsoft Informatica не знает преград. Видимо, процесс содержит встроенные средства обхода ограничений.
Добиваем агентов Матрицы
Справиться с оставшимися агентами Microsoft помогает ряд дополнительных мер. Нужно задать в брандмауэре блокировку подключений ко всем IP-адресам, выявленным Wireshark. У нас их получилось 47, но наверняка при более длительном мониторинге список увеличится. Ещё есть шанс, что при очередном автоматическом обновлении в системных файлах пропишутся новые айпишники, но пока вместе с модификацией файла hosts это обеспечивает большую часть защиты от слежки.
Отключить «неотключаемые» функции можно через реестр:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DataCollection
Задав нулевое значение этому параметру, запретим отправку «технических» данных.
Желательно удалить файл сервиса DiagTrack с уже собранными данными. Вот путь к нему:
C:\ProgramData\Microsoft\Diagnosis\ETLLogs\AutoLogger\AutoLogger-Diagtrack-Listener.etl
Отключить сами сервисы DiagTrack и dmwappushsvc можно через управление службами или ветку реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
В планировщике заданий стоит посмотреть очередь задач и отключить все регулярные отправки данных, если они ещё остались.
Рекомендуется деинсталлировать облачный клиент OneDrive, если ты всё равно не собирался им пользоваться.
Все эти действия можно выполнить вручную, но сэкономить время сильно помогает утилита DisableWinTracking. В отличие от многих аналогов, она распространяется с открытым исходным кодом и хорошо документирована.
Итог
После выполнения всех описанных действий Windows 10 лишилась шпионских привычек. Вместе с ними, правда, исчезли почти все новые фишки, которые призваны повысить удобство работы и обеспечить безопасность. Впрочем, как говорил Франклин: «Те, кто готовы пожертвовать насущной свободой ради малой толики временной безопасности, не достойны ни свободы, ни безопасности».