Messenger: Wire beinhaltet Mixpanel App-Tracking

Über den Messenger Wire hatte ich in der Vergangenheit schon berichtet. Auf dem Digitalcourage-Treffen am Wochenende fiel Jan auf, dass der Messenger den Analyse Anbieter Mixpanel (Firmensitz USA) integriert – dieser Dienstleister ist schon im Zusammenhang mit dem mySugr-Fall negativ in Erscheinung getreten.

Wir stocherten also etwas im Quellcode der Wire-App für Android und wurden dann fündig. Im build.gradle wird eine Mixpanel Abhängigkeit (Bibliothek) eingebunden. Zeile 137:

mixpanel : 'com.mixpanel.android:mixpanel-android:5.2.3',

Sucht man über den gesamten Quelltext nach dem String »mixpanel« findet man weitere Details.

Diesen Fund wollte ich dann noch mit einem Netzwerkmitschnitt des App-Datenverkehrs bestätigen. Dazu habe ich mir Wire aus dem Play Store in der Version 3.12.623 heruntergeladen. Unmittelbar nach dem Start der App wird eine Verbindung zu »api.mixpanel.com« (und einer weiteren Adresse) aufgebaut und folgende Informationen übermittelt:

POST /track?ip=1 HTTP/1.1
Content-Length: 827
Content-Type: application/x-www-form-urlencoded
User-Agent: Dalvik/2.1.0 (Linux; U; Android 7.1.2; Redmi Note 4 Build/NJH47F)
Host: api.mixpanel.com
Connection: close
Accept-Encoding: gzip, deflate

data=W3siZXZlbnQiOiJJbnRlZ3JhdGlvbiIsInByb3BlcnRpZXMiOnsibXBfbGliIjoiQW5kcm9pZCIsIiRsaWJfdmVyc2lvbiI6IjUuMi4zIiwiJG9zIjoiQW5kcm9pZCIsIiRvc192ZXJzaW9uIjoiNy4xLjIiLCIkbWFudWZhY3R1cmVyIjoiWGlhb21pIiwiJGJyYW5kIjoiWGlhb21pIiwiJG1vZGVsIjoiUmVkbWkgTm90ZSA0IiwiJGdvb2dsZV9wbGF5X3NlcnZpY2VzIjoiYXZhaWxhYmxlIiwiJHNjcmVlbl9kcGkiOjQ4MCwiJHNjcmVlbl9oZWlnaHQiOjE5MjAsIiRzY3JlZW5fd2lkdGgiOjEwODAsIiRhcHBfdmVyc2lvbiI6IjMuMTIuNjIzIiwiJGFwcF92ZXJzaW9uX3N0cmluZyI6IjMuMTIuNjIzIiwiJGFwcF9yZWxlYXNlIjo2MjMsIiRhcHBfYnVpbGRfbnVtYmVyIjo2MjMsIiRoYXNfbmZjIjpmYWxzZSwiJGhhc190ZWxlcGhvbmUiOnRydWUsIiRjYXJyaWVyIjoiIiwiJHdpZmkiOnRydWUsIiRibHVldG9vdGhfZW5hYmxlZCI6ZmFsc2UsIiRibHVldG9vdGhfdmVyc2lvbiI6ImJsZSIsInRva2VuIjoiODUwNTNiZjI0YmJhNzUyMzliMTZhNjAxZDkzODdlMTciLCJsaWIiOiJBbmRyb2lkIiwiZGlzdGluY3RfaWQiOiJjN2RjYjE1ODkzZjE0OTMyYjFjMzFiNWZiMzNmZjY2OSJ9fV0%3D

Wenn wir die Base64-Codierung rückgängig machen, ergibt das:

[{"event":"Integration","properties":{"mp_lib":"Android","$lib_version":"5.2.3",
"$os":"Android","$os_version":"7.1.2","$manufacturer":"Xiaomi","$brand":"Xiaomi",
"$model":"Redmi Note 4","$google_play_services":"available","$screen_dpi":480,
"$screen_height":1920,"$screen_width":1080,"$app_version":"3.12.623",
"$app_version_string":"3.12.623","$app_release":623,"$app_build_number":623,
"$has_nfc":false,"$has_telephone":true,"$carrier":"Unitymedia","$wifi":true,
"$bluetooth_enabled":false,"$bluetooth_version":"ble",
"token":"85053bf24bba75239b16a601d9387e17","lib":"Android",
"distinct_id":"c7dcb15893f14932b1c31b5fb33ff669"}}]7

Diese Informationen werden unmittelbar nach dem Start von Wire übermittelt – noch bevor man als Nutzer überhaupt eine Entscheidung für »private Nutzung« oder »Organisation« getroffen hat. In der Datenschutzerklärung zu Wire wird der Nutzer über den integrierten App-Tracker nicht aufgeklärt. Eine weitere Analyse des Netzwerkverkehrs habe ich nicht durchgeführt.

Für mich persönlich ist es unbegreiflich, weshalb Wire die eigene Reputation auf’s Spiel setzt und einen US-amerikanischen App-Tracker / App-Analysedienst in die App integriert. Zumal Wire ja auch eher die daten- und sicherheitsbewussten Anwender adressiert. Aus meiner Sicht manövriert sich Wire damit selbst ins Abseits.

Dieser Fund zeigt deutlich, dass gerade auch quelloffene Programme / Apps immer mal wieder kontrolliert werden müssen. Vertrauen ist gut – Kontrolle ist besser.

Update: Reaktion von Wire liegt vor.

Hinweis

Um es mal ganz deutlich zu machen: Ein Messenger, der möglichst sicher und datenschutzfreundlich sein möchte, integriert keine (App-)Tracking-Bibliotheken. Das Ziel sollte sein auf (Drittanbieter-)Bibliotheken und unnötige Abhängigkeikeiten möglichst zu verzichten.
Du kannst den Blog aktiv unterstützen! Mitmachen ➡