Analiza telemetrii Windows 11: dokładnie to, czego się spodziewasz
Ponad sześć lat temu na łamach bloga dobrychprogramów ukazał się niezwykle popularny przez lata wpis "Analiza telemetrii w Windows 10". Opisano w nim skalę aktywności sieciowej (bez zaglądania do wnętrza ruchu) oraz skalę, na jaką użytkownik jest w stanie taki ruch sprowokować. Wnioski kreśliły obraz bardziej ponury niż dotychczasowe komentarze branżowe dotyczące telemetrii. Co się zmieniło przez ten czas?
Całkiem sporo. Przede wszystkim, infrastruktura UWP, będąca rozwinięciem Metro i chmurowym obliczem systemu, nie sprawdziła się i wyraźnie spadła jako priorytet w Redmond. Po drugie, Microsoft zareagował na krytykę telemetrii i wydał obszerne artykuły dokumentujące ruch chmurowy i telemetryczny. Było to coś całkowicie nieobecnego przez ponad rok (!) od premiery Windows 10. Wreszcie, wydano Windows 11, system chmurowy inaczej, ale w pewnych kwestiach bardziej.
Hałaśliwa bezczynność
Jak wygląda ruch sieciowy w systemie, który po prostu jest włączony i wyświetla pulpit i co się dzieje, gdy wykonamy jakieś podstawowe ruchy - jak uruchomienie apletów, zmiana ustawień, wyświetlenie i wyszukiwanie w Menu Start? Większość zachowań jest bardzo zbliżona do Windows 10 i de facto pochodzi jeszcze z Ósemki. Natężenie ruchu jest zbliżone i wywoływane w tych samych okolicznościach.
O ile cieszyć może fakt, że Usługa Synchronizacji Ustawień nie pracuje już w niezrozumiały sposób nawet na koncie lokalnym, łączność Jedenastki z chmurą jest obfita. Głównym programem łączącym się z siecią podczas prac w systemie jest SearchHost, należący do aplikacji Windows.Client.CBS. Jest ona uzupełnieniem powłoki i zajmuje się obsługą wyszukiwania z Menu Start i panelu wprowadzania.
CBS łączy się z CRL Verisign (to dlatego raz przestał działać) celem potwierdzenia bezpieczeństwa połączenia, z serwerem 13.207.21.200, który okazuje się być datacentrum Azure oraz z dziwacznym v0cdn.net. Czym jest v0cdn? Jest to zaplecze CDN... firmy Verizon (!), świadczące obsługę techniczną dla systemowej telemetrii. Podobno.
Dokumentacja... powiedzmy
Skąd wiadomo każdą z tych rzeczy? O Verizonie możemy się dowiedzieć wprost z wpisu DNS, o telemetrii - z dokumentacji Microsoftu, a brak pewności jest gratisem, wynikającym z kompletnie zignorowanej w mainstreamie kwestii: dokumentacja Microsoftu jest tworzona empirycznie.
Jeżeli komuś w związku z tym niewinnie brzmiącym zdaniem nie zapala się czerwona lampka, spieszę z wyjaśnieniem: lista serwerów z którymi Windows łączy się w ramach telemetrii i wspomagania chmurowego nie jest znana w Microsofcie i aby ją stworzyć, "dokumentację" opracowano poprzez... pozostawienie w spokoju chodzącej przez tydzień w Redmond maszyny wirtualnej!
Microsoft nie wie zatem, z czym łączy się ich system, ale nie oznacza to jeszcze że Windows 11 jest projektem który wymknął się spod kontroli. Składniki łączące się ze światem są znane i opisane indywidualnie. Po prostu zaplecze techniczne jest "ruchome" i jego opis z definicji jest nieaktualny i pełni jedynie rolę poglądową.
Okiełznać telemetrię
Czy to oznacza odkupienie win? Otóż nie - byłoby tak, gdyby spis usług służył do tego, by możliwe było ich wyłączenie. A tak jest tylko teoretycznie: opisane w artykule przełączniki są zebrane w zbiór "Windows Restricted Traffic Limited Functionality Baseline" (RTLFB) umożliwiający zaaplikowanie ustawień wyłączających całą "chmurę" i telemetrię naraz. RTLFB pochodzi wprost z Microsoftu. Niestety, pakiet ten zniknął z Centrum Pobierania. Dokumentacja dalej zawiera linki, są jednak uszkodzone.
RTLFB jest jednak hostowany na GitHubie Microsoft Docs i tam już istnieje i znajduje się w najnowszej wersji, także dla Windows 11. Zawiera on lokalne Zasady Grupy złożone ze 127 ustawień Rejestru i dwóch Zasad Zabezpieczeń Lokalnych. Zaaplikowanie RTLFB nie powstrzyma jednak Jedenastki przed gadatliwością. Nie tylko dlatego, że część ustawień RTLFB jest respektowana tylko przez wersję Enterprise Windows 11. Także przez to, że system dalej wtedy jest gadatliwy i potrzebne jest zastosowanie reguł zapory oraz plików hosts (!).
A na czym polega ta gadatliwość? Cóż, tu nie zmieniło się wiele od czasów Dziesiątki. Host Usług Synchronizacji Ustawień, Windows Push Notification Service (WpnService, WNS) i Windows Live ID aktualizują kafelki, powiadomienia i stan Konta Microsoft. Takie samo nie-wiadomo-co jak 6 lat temu robi Unistack i "Connected Devices Platform", ale robi to konsekwentnie także w Jedenastce. Dalej działa taki sam LicenseManager. Okienko Uruchom, Kontrola Konta Użytkownika i Oczyszczanie Dysku również dalej spowiadają się ze swojej aktywności przed Azure.
Widżety, czyli nowe Gadżety
Czyżby poza agresywniejszym i bardziej podatnym na awarię Startem wszystko było po staremu? Niestety, nie. Istnieją dwie przygnębiające nowości: Widżety oraz Teams. Widżety, czyli Active Desktop i Pasek Boczny systemu Windows Vista połączone w nowy twór napisany w Node i React.js (a więc nie w językach i narzędziach Microsoftu), są wbudowane w pulpit i wymagają zalogowania kontem Microsoft.
"Active Desktop" to naprawdę poprawne wytłumaczenie, czym owe Widżety są. Stanowią one nic ponad wyizolowane fragmenty stron internetowych portalu MSN. Są rysowane przez silnik Edge (WebView2). Nie korzystają z żadnych nowych platform systemu Windows 11, 10, 8 ani... 7. Nawet lokalizację określają za pomocą ręcznie podanych ustawień oraz adresu IP, a więc bez wykorzystania Platformy Lokalizacji dodane w Windows 7 i rozszerzonej na potrzeby Kafelków w Ósemce.
Program Widgets.exe, choć widżety wymagają konta Microsoft, łączy się z internetem nawet, gdy są wyłączone i ukryte, a my pracujemy na koncie lokalnym. Z siecią łączą się także procesy potomne, czyli msedgewebview2.exe, silnik rysujący. Połączenia te są w przypadku nieużywania Widżetów niczym ponad kiepski opsec i zbędny ślad cyfrowy.
Druga nowość to Microsoft Teams, które aktualizuje się samodzielnie. Teams, choć jest niezwykle rozbudowanym narzędziem które w wielu scenariuszach sprawdza się wzorowo, w kwestii czysto technicznej jest całkowitą kapitulacją Microsoftu. Konceptualnie, ta całkowicie chmurowa aplikacja przekreśla wszystkie poprzednie podejścia Microsoftu do komunikatorów. Językowo, dopiero od niedawna stosuje WebView, a nie czysty Electron z Chromium, nie jest napisany w językach i narzędziach Microsoftu niemal w ogóle. Wreszcie, pod względem dystrybucji, stosuje własny, dedykowany aktualizator...
OneDrive, Edge i Teams: ciała obce w Windows
Mechanizm dystrybucji Teams wykorzystuje niemal wszystkie główne techniki, które Microsoft opisuje jako zbrodniczo niewydajne i przestarzałe. Aktualizator wykorzystuje oddzielny, harmonogramowany plik EXE, zapisuje pliki w lokalnym katalogu tymczasowym użytkownika i dokonuje niejawnego podniesienia uprawnień. Nie jest dystrybuowany przez Sklep, generując oddzielny ruch. Ten sam problem mają OneDrive i Edge: nie aktualizują się z wykorzystaniem Microsoft Store, podczas gdy w Redmond dziwią się, że programiści nie chcą tam publikować swoich aplikacji.
Wreszcie, Teams nie jest wymieniony na liście składników generujących ruch sieciowy w Windows. RTLFB także nie zawiera reguł jego wyłączenia...
Podsumowując - w kwestii obfitości telemetrii w Windows 11 na pewno nie jest lepiej niż w Dziesiątce. Nie jest też gorzej. Można powiedzieć, że jest... głupiej. Dokumentacja jest jednym wielkim chaosem, a wprowadzone do systemu nowości nie korzystają z mechanizmów bezpieczeństwa i prywatności, które są w nim obecne.
Czy ruch chmurowy i telemetryczny da się całkowicie wyłączyć bez uszkodzenia systemu? Pomijając CRL - raczej tak. Choć wydzielenie Menu Start do aplikacji CBS sprawiło, że przestanie w ten sposób działać wyszukiwanie, "mrożąc" tym samym menu. Powoli robi się coraz trudniej.