Facebook śledzi cię bez twojej zgody

Czy Facebook śledzi twój telefon nawet, gdy nigdy na nim nie instalowałeś aplikacji pochodzącej z Menlo Park – a nawet jeśli nie masz na nim konta? Jak się okazuje, tak – i to z pomocą developerów nie zawsze świadomych swojego współudziału.

O wynikach swoich badań na ten temat opowiedzieli podczas 35. Chaos Computer Club związani z Privacy International Frederike Kaltheuner i Christopher Weatherhead. Skupili się na telefonach z Androidem, choć z dalszych badań wynika, że podobny problem dotyczy również ekosystemu Apple.

O co chodzi?
Według raportu sprzed kilku miesięcy, 42.55% darmowych aplikacji z Google Play może dzielić się twoimi danymi z Facebookiem – co stawia tę firmę na drugim miejscu pod względem ilości zbieranych o nas danych (zaraz po Alphabet, Inc.) Dane są zbierane nie tylko o 2,2 miliardach użytkowników Facebooka, lecz również o osobach, które podjęły świadomą decyzję o unikaniu produktów firmowanych przez tę sieć społecznościową. I – wbrew rozpowszechnionemu przekonaniu – nie robią tylko za pomocą cookies.

Co zbadano?
Niemieccy researcherzy wzięli pod lupę 34 popularne aplikacje, każda z nich pobrana między 10 a 500 milionów razy – łącznie wszystkie zbadane aplikacje były zainstalowane ponad dwa miliardy razy.

Pod uwagę wzięto nie tylko popularność aplikacji, lecz również ich potencjalny związek z prywatnością. Dlatego znalazły się tam programy typu Dropbox czy WeChat, aplikacje religijne, pogodowe (lokalizacja!) czy pomagające w śledzeniu owulacji.

Badane aplikacje zostały zainstalowane na telefonie Nexus 5 z Androidem 8.1.0 (Oreo). Łączność z internetem była realizowana za pośrednictwem logującej wszystko maszyny z Debianem,
MitMProxy 4.0.4 i oprogramowaniem access pointa (hostapd, dnsmasq).

Wyniki testów
Ponad 61 procent przetestowanych programów łączyło się z Facebookiem w momencie uruchomienia i minimalizowania aplikacji.

Wiele z nich przesyłało informację, jak z nich korzystaliśmy – i czego poszukiwaliśmy za ich pośrednictwem. Robi to na przykład Kayak, wyświetlając jednocześnie komunikat “don’t worry, we’ll never share anything without your permission.” Robi to też Biblia św Jakuba, informująca Facebooka, który fragment Biblii nas zinteresował. Inne z kolei przekazują Facebookowi informacje dotyczące naszego telefonu, stanu baterii i danych z akcelerometru.

Dzieje się tak niezależnie od tego, czy mamy konto na Facebooku, czy też nie.

Czy wszyscy są w spisku?
Jak to jest, że tak wiele aplikacji oddaje dane Facebookowi, i nikt o tym nie mówi? Ogólnoświatowy spisek programistów? Tajne stowarzyszenie? Wielkie pieniądze w zamian za dane i milczenie?

Jak się okazuje, rzeczywistość jest dużo bardziej prozaiczna. Facebook oferuje programistom swoje SDK (zestaw bibliotek dla programistów), pozwalające im skorzystać z modułów: analitycznych, reklamowego, ułatwiających logowanie, a także ułatwiających postowanie na profilu (i umożliwiającego jego czytanie).

Z czego programiści nie zawsze zdają sobie sprawę, w domyślnej konfiguracji SDK automatycznie loguje i wysyła do Facebooka informacje o “niektórych aktywnościach w twojej aplikacji”. Do wejścia RODO w życie, SDK nie dawało możliwości wyłączenia wysłania komunikatu o inicjalizacji SDK (czyli – uruchomienia aplikacji).

Mogę wyłączyć personalizację reklam – jestem bezpieczny?
We współczesnych smartfonach mamy opcje poprawiające naszą prywatność. Jedną z nich jest – dostępna i pod Androidem, i pod iOSem, możliwość wyłączenia wysyłania naszego unikalnego identyfikatora w celu personalizacji reklam. Jak się okazuje (na przypadku SkyScannera), włączenie opcji poprawiających prywatność przestawia SDK Facebooka w tryb wysyłania zwiększonej liczby danych na serwery firmy.

Jak zareagowali programiści?
Privacy International skontaktowała się z autorami 21 aplikacji, które wysyłały dane do Facebooka. Jak wynika z ich opowieści, nie wszyscy do końca zrozumieli problem – jedynie twórcy SkyScanner i Weather Channel szybko zaktualizowali aplikację, poprawiając kłopotliwy kod.

Jestem programistą, czy to moja wina?
Facebook twierdzi, że powinieneś uzyskać wszelkie zgody użytkowników przed wysyłaniem w sieć jakichkolwiek danych. Z drugiej strony, kłania się model “privacy by design” – systemy powinny być tak projektowane, by naruszenie prywatności wymagało specjalnych działań. Trudno powiedzieć, jaką decyzję podjąłby sąd, gdyby do czegoś doszło.

Dodatkowo, trzeba pamiętać, że Facebook nie jest jedyną firmą zbierająca dane o użytkownikach sieci. Brokerów informacji jest mnóstwo, zbierają je na różne sposoby. Kod śledzący może być dodany nie tylko do SDK Facebooka, ale również innych bibliotek, z których korzystamy na codzień.

Niezależnie od odpowiedzialności prawnej, jest też kwestia moralności i odpowiedzialności przed użytkownikami za firmowany przez siebie kod. To, czego programiści nie robią zbyt często, to przetestowanie aplikacji również pod kątem tego, co robi w czasie, gdy jej nie obserwujemy. Stworzenie prostej instalacji badającej, co nasz program wysyła do sieci, nie jest szczególnie trudne – poświęćmy trochę czasu i rzućmy okiem na generowany przez siebie ruch. Może nasz program też wysyła komuś dane bez naszej świadomości?

Dodatkowe informacje:

About lmj

Łukasz Jachowicz (honey). Pierwszy raz w internecie w 1991 lub 1992. Pierwszy raz z własnym serwisem (codziennie aktualizowanym!) – w 1996. Pierwszy raz z własnym serwisem oraz grupą wiernych fanów – w 2000/2001. Do dziś bez stałego łącza do internetu (choć by chciał – ale dystans ok. 90 metrów do skrzynki nie do przeskoczenia dla operatora). Przez wiele lat popularyzator idei otwartości w oprogramowaniu i standardach wykorzystywanych przez administrację publiczną. Zwolennik otwartości dostępu do możliwie szerokiego zakresu danych publicznych. Autor analiz i policy papers dotyczących otwartości danych publicznych i zarządzania internetem. Miłośnik (choć nie bezkrytyczny) Linuksa. Zawodowo zajmuje się analizowaniem styku polityki i technologii. Twórca 7thGuarda, Rębaczy i co drugiego odcinka podkastu Cyber Cyber... fundacji Bezpieczna Cyberprzestrzeń.

View all posts by lmj →

Dodaj komentarz