Apple a procédé récemment au retrait de plus de 250 applications de son App Store. Il a été découvert qu’elles se servaient d’un kit de développement non conforme, faisant appel à des API privées et réservées à la firme, et volaient des informations personnelles. La question de la validation sur le Store se pose une nouvelle fois.
Il existe de nombreuses règles à respecter pour qu’une application soit publiée sur l’App Store. Le développeur ou l’entreprise doit avant tout utiliser le SDK (Software Development Kit) officiel, fourni par Apple avec Xcode. Le kit de développement donne accès à un grand nombre d’API (Application Programming Interface), mais d’autres existent, à l’usage exclusif d’Apple. Ces API sont considérées comme privées. Elles sont techniquement accessibles (quand on les trouve), mais la firme n’en autorise pas l’exploitation.
Un SDK utilisant des API privées
SourceDNA, une société indépendante qui analyse le code des applications, en a pourtant trouvé plusieurs centaines dont le comportement sortait largement des sentiers battus. Les employés de cette société ont repéré qu’elles utilisaient un SDK non officiel et considéré visiblement comme malveillant. Un kit de développement dont la mission « officielle » est d’aider les entreprises à mieux gérer les publicités. Dans la pratique, il fait appel à des API privées d’iOS et a une mission nettement plus sombre.
L’examen attentif du SDK a montré qu’il provenait de la société Youmi, spécialisée dans la publicité. Au total selon SourceDNA, 256 applications l’utilisaient, sans savoir a priori que l’infrastructure publicitaire utilisée permettait de collecter des données qui sont normalement hors d’atteinte des éditeurs, à moins de les demander directement aux utilisateurs : les adresses email, identifiants uniques de téléphones, liste complète des applications déjà téléchargées et autres informations personnelles.
Apple fait le ménage et prévient les développeurs
Les applications trouvées n’ont pas été nommées, mais tous leurs développeurs sont en Chine et leur nombre cumulé de téléchargements dépasse le million. L’information a été remontée rapidement à Apple, qui a procédé à la suppression des applications, provoquant leur disparition immédiate des smartphones et tablettes connectés. L’App Store dispose en effet d’un « kill switch », permettant de provoquer la désinstallation à distance de ce type d’applications non autorisées, voire dangereuses.
Apple a d’ailleurs confirmé le processus par un communiqué : « Nous avons identifié un groupe d’applications qui utilisaient un SDK publicitaire de tierce partie, développé par Youmi, et qui utilise des API privées pour récolter des informations personnelles [...], avant de les router vers ses serveurs. C’est une violation de notre code de conduite sur la sécurité et la vie privée. Les applications utilisant le SDK de Youmi sont retirées de l’App Store et toute nouvelle application utilisant ce SDK et soumise pour validation à l’App Store sera rejetée. Nous travaillons en étroite collaboration avec les développeurs pour les aider à publier de nouvelles versions sûres pour les clients et en accord avec notre code de conduite ».
Plusieurs problèmes de validation et en Chine en peu de temps
On peut s’étonner en fait que de telles applications aient en premier lieu réussi à passer la validation de l’App Store, car les appels aux API privées font partie des raisons principales de rejets. Apple est maintenant au courant de ce que fait ce SDK, mais rien ne permet d’affirmer qu’il s’agissait du seul à utiliser ainsi des API privées. Le problème est que ce n’est pas la première fois que le processus de validation est remis en question et qu’Apple ne peut plus affirmer que les applications disponibles dans sa boutique sont nécessairement « propres », donc garanties sans menace particulière.
En outre, c’est la seconde fois en peu de temps qu’Apple est confronté à un problème de sécurité trouvant son origine en Chine. On se rappelle en effet que des développeurs, pour installer plus rapidement l’environnement Xcode, le récupéraient sur des sites tiers. Problème, il s’agissait d’une version vérolée incorporant systématiquement un malware dans l’application lors de sa compilation. Un malware qui n’était pas non plus détecté durant la validation de l’App Store. Apple avait fait le ménage et indiqué aux développeurs que des serveurs locaux seraient mis en place pour que les développeurs bénéficient de vitesses de téléchargement supérieures.
Commentaires (42)
Qu’a la base ces api soient pas sécurisé c’est soit une requète de la NSA, soit très bète de la part d’Apple.
“Il suffit de demander pour avoir un accès complet, mais on vous autorise pas de demander.”
c’est déjà super tendu d’utiliser un SDK non officiel… le faire pour des questions de vitesse de DL est déjà un peu con, le faire pour “optimiser la pub” c’est de l’attrape couillon. et Apple qui valide ça en amont au lieu d’empêcher la mise en ligne est aussi en cause…
L’exploitationest faite dans un cas chinois, mais les api ont étés définie par Apple.
Non, c’est dû à la nature des requêtes en Objective-C. Apple ne peut pas protéger ces méthodes qu’elle utilise pour ses propres applications, et ne peut pas détecter son utilisation.
Bizarre qu’il y en ait 256 tout pile…
J’ai pas compris, le sdk alternatif utilise l’api d’apple ou celui du sdk alternatif pour voler les données ?
Si c’est celui d’apple c’est pathétique de la part d’apple de donner des leçons de morales alors qu’ils peuvent voler des données personnel à tout moment vu que les applications sont compilés avec leur sdk..
ca doit être le même bordel sur le store android, sinon pire…..
Je me suis penché y a quelques temps sur les permissions des applications android avec APK permission. Certains permissions font peur, comme celle qui renvoie un appel vers un numéro inconnu. On se demande bien pour quoi faire….. Je passe sur les traditionnels accès aux contacts et aux SMS.
Bref, le blackphone 2 me fait de l’oeil.
Le SDK alternatif utilise les api privé d’apple.
Sauf que ces api privé ne sont pas là (à la base) pour voler des données personnel mais pour le fonctionnement interne de l’appareil.
Par exemple l’application “apple store” a besoin d’avoir la liste des applis installé, l’application “téléphone” a besoin d’avoir l’id du numéro de téléphone …
Après c’est sûr que si apple utilise ces api privées hors de leurs contextes, personne ne le vera et on ne pourra rien y faire ^^
Non mais franchement , faire le boulot d’Apple - quel culot ! ;)
Ils ont bannis les apps Google ?
" />
" />
A quand le ménage sur le playstore et sur le windowd market?
Parce que perso, j’en vois déjà un bon paquet qui mériterait d’être bannie à vie, leurs développeurs pendus par les cou**les.
En même temps, si Apple voulait rester logique, ces apps devraient être bannies aussi.
Ce n’est pas parce que c’est un plus gros éditeur que google ne doit pas être soumis aux mêmes règles.
Les deux peut être ?
Bah oui aussi, on fait pas de concurrence sur sa propre plateforme.
Donc Apple qui utilise l’api privée, c’est bon. Mais pas les autres ?
…
Pourquoi ?
Google passe par les API publiques, si ils accedent à des info “privés” (position/contacts …) il demande l’autorisation à l’utilisateur …
ici on parle d’apps qui ont acces à des API qui peuvent récupérer des info privés sans demander à l’utilisateur …
[mauvais_esprit]
" />
faisant appel à des API privées et réservées à la firme, et volaient des informations personnelles.
Le vol d’information est donc réservé à Apple. Au moins c’est clair.
[/mauvais_esprit]
oui autant si le code du SDK n’a pas acces aux données, ça va être dur de donner accès aux données aux apps
" />
Vont ils supprimer les applications Google ?
déjà faite
" />
Donc ça fait 13 points pour cette manche, bien joué. A qui de donner ?