Après plusieurs lectures attentives de votre question, quelque chose est ressorti :
Et en plus des énormes quantités sur 3G, ce téléphone a passé très peu de temps en dehors du Wifi.
Votre iPhone, lorsqu'il est en mode veille, éteint la radio WiFi pour économiser la batterie . Ainsi, si vous avez des applications gourmandes en données qui font des choses en arrière-plan lorsque votre téléphone est endormi/verrouillé, elles le font sur la 3G. Notez que le comportement de WiFi-off-in-sleep-mode est quelque peu incohérent. Mais vous pouvez vous assurer que la 3G est jamais utilisé par votre téléphone pendant que vous effectuez ces tests en désactivant les données cellulaires. Ainsi, lorsqu'il dormira, il continuera à utiliser le WiFi et non la 3G pour les données et vous serez certain de capturer tout le trafic dans votre réseau de surveillance.
Vous pouvez rassembler certaines technologies qui pourraient vous aider à trouver le coupable.
Dans un premier temps, vous pouvez essayer de surveiller le téléphone lorsqu'il est sur un réseau WiFi en utilisant mitmproxy. À partir de cet excellent billet de blog mclov.in vous pouvez configurer un proxy pour votre téléphone sur votre Mac et filtrer tout le trafic http/s à travers lui :
- Télécharger le mitmproxy et le configurer en allant dans le dossier de mitmproxy et en exécutant sudo Python setup.py install. Si tout se passe bien, mitmproxy doit être disponible dans votre $PATH.
- Démarrez mitmproxy en exécutant mitmproxy.
- Obtenez l'adresse IP de votre ordinateur en exécutant ifconfig en1 (ou l'interface que vous utilisez).
- Configurez le proxy sur votre iPhone en allant dans vos paramètres sans fil, en réglant le proxy sur "Manuel", et en réglant l'IP sur l'IP de votre ordinateur et le port sur 8080.
Si vous configurez mitmproxy pour qu'il enregistre les appels http/s vers un fichier, vous pouvez l'analyser après un certain temps et rechercher des tendances. Vous serez également en mesure d'inspecter les charges utiles des appels http/s, ce qui vous permettra peut-être de repérer des demandes inhabituellement volumineuses.
Bien sûr, cette approche suppose que le coupable utilise http/s pour communiquer. Si ce n'est pas le cas, vous ne verrez pas le problème via mitmproxy et vous devrez recourir à une solution de niveau inférieur.
Vous devez surveiller tout le trafic sur un réseau WiFi que vous contrôlez afin de vous aider à traquer au moins les points finaux des transferts de données. La surveillance de la bande passante n'est pas difficile à mettre en place, mais la tenue d'un journal par IP et par point de terminaison est vraiment difficile à réaliser avec du matériel grand public car il peut s'agir d'une quantité MASSIVE de données. L'origine et la destination de chaque paquet doivent être vérifiées, l'heure et la taille doivent être consignées - cela s'accumule très vite.
Mais il est possible d'obtenir des chiffres décents et de réduire l'espace de recherche afin d'obtenir quelque chose de potentiellement analysable par l'homme.
Premièrement, vous devez configurer un réseau avec un contrôle de la bande passante au niveau de chaque IP. Pour cela, je recommande un Linksys WRT54GL routeur WiFi grand public fonctionnant Tomate et le Complément de TeamanIPTraffic pour le suivi de la bande passante au niveau IP.
Deuxièmement : configurez votre DNS sur le routeur pour utiliser OpenDNS . Dans votre compte OpenDNS pour suivre les recherches DNS :
- Connectez-vous à https://dashboard.opendns.com/
- Cliquez sur l'onglet "Paramètres".
- Cliquez sur l'adresse IP du réseau associé à votre routeur.
- Cliquez sur "Stats and Logs" sur le côté gauche.
- Assurez-vous que la case "Activer les statistiques et les journaux" est cochée et cliquez sur le bouton "Appliquer".
Désormais, toutes les consultations de DNS effectuées sur votre réseau seront enregistrées.
Attribuez à votre téléphone une IP statique sur ce réseau afin qu'il soit plus facile à suivre.
Et... attendez et regardez.
Vous allez surveiller l'activité de l'adresse IP attribuée à votre téléphone dans les tables d'activité par IP de votre routeur. Lorsque l'activité des données pour cette adresse IP atteint un pic, vous allez vous rendre sur votre console OpenDNS et jeter un coup d'œil aux statistiques et aux journaux de vos recherches DNS pour la période où le mouvement des données était élevé pour votre téléphone.
Vous devriez obtenir une courte liste des noms d'hôtes qui étaient résolus à l'époque. Et armé de cette liste, vous serez peut-être en mesure de réduire la recherche à une application.