Nouvelle menace sous iOS : iBackDoor

Les analystes de FireEye ont récemment publié un billet qui parle d’une nouvelle menace pour les utilisateurs d’iOS, billet au titre explicite : iBackDoor.

Cette potentielle backdoor pourrait permettre de :

  • Faire de la capture audio et des copies d’écran
  • Enregistrer et observer la position d’un terminal
  • Lire, écrire, créer et modifier les fichiers de l’application « backdoorée »
  • Envoyer des données chiffrées à des serveurs distants
  • Faire installer des applications hors market en demandant à l’utilisateur de cliquer sur « Installer »

Ladite backdoor se situe dans une librairie nommée mobiSage SDK, éditée par la société chinoise adSage. L’application a besoin, pour son propre fonctionnement, d’aller chercher du contenu distant, comme des publicités. Il apparaît donc normal que certaines fonctionnalités existent.

Ce qui l’est sans doute moins, comme l’explique FireEye, c’est qu’il soit possible, pour l’application, de récupérer du code distant et de l’exécuter en douce, sans que l’utilisateur en soit informé. Partant de ce constat, on imagine aisément les risques liés à cette fonctionnalité : exécuter du code distant, récupérer des données personnelles, installer d’autres applications ou autorisations en douce, véroler complètement le terminal, …

Bien que le problème semble concerner plus de 2800 applications iOS, la société tient à préciser qu’elle n’a pas observé de mouvements suspects ou d’injections de codes et commandes « malicieuses » sur le serveur de la société incriminée. Elle ne sait pas non plus si cette backdoor a été créée par adSage ou s’ils sont victimes d’un piratage.

Enfin, autre point, dans la dernière version de la librairie (mobiSage SDK 7.0.5), FireEye explique ne pas avoir trouvé la backdoor.

Reste à attendre la suite des évènements, ce problème est déjà remonté à Apple, qui réagira peut-être en bannissant toutes les applications concernées

Pour celles et ceux qui souhaitent obtenir le détail technique, c’est par ici que ça se passe (en anglais).

David Cameron n’a définitivement pas compris le chiffrement.

L’Investigatory Powers Bill est un projet de loi qui propose d’étendre le pouvoir d’enquête des policiers et, selon un journal anglais, ce projet de loi va tenter d’interdire le « chiffrement indéchiffrable », explications.

Continuer la lecture de David Cameron n’a définitivement pas compris le chiffrement.

[En bref] Windows 7 et sa mise à jour « foireuse »

Dans une récente actualité dont j’a pu prendre connaissance chez les copains de Next INpact, j’ai appris qu’une mise à jour étrange était proposée, hier, dans Windows Update, pour Windows 7 exclusivement.

Cette mise à jour n’est restée qu’un temps très court mais suffisant pour provoquer un petit vent de panique : les services de Microsoft ont publié une mise à jour qui n’aurait jamais du être envoyée, c’était une « mise à jour de test », à déclaré la société.

Dans le laps de temps entre l’apparition de la mise à jour et le communiqué de Microsoft, beaucoup de suppositions ont, semble-t-il, vu le jour. Bug, test, piratage de Windows Update …

Cela m’a fait penser à ce billet que j’ai rédigé il y a quelques temps, où je parlais d’un scénario catastrophe dans lequel je me demandais « imaginons qu’une mise à jour foireuse soit forcée, qu’est-ce qui se passera ?« 

Nous sommes partiellement dans ce cas, la mise à jour n’est pas restée longtemps et ne portait que sur Windows 7, mais c’est arrivé et certains utilisateurs semblent s’inquiéter et galérer.

J’espère que Microsoft va réfléchir quant au fait de ne pas avoir un réel contrôle des mises à jour sous Windows 10 (exception faite des éditions pro où il est possible de reporter ces mises à jour).

Votre intimité face à Android et ses autorisations, troisième partie. [M.A.J]

Dans la première partie de ce billet, nous avons découvert que Google avait modifié affichage des autorisations requise dans les applications sur Android lors d’une mise à jour. Dans la seconde partie de ce billet, nous avons détaillés les autorisations les plus sensibles du système de Google, mais sans expliquer comment gérer ces autorisations là

C’est l’objet de ce troisième et dernier billet : comment reprendre le contrôle sur les autorisations dans Android ?

En théorie, la réponse peut sembler simple. Elle ne l’est pas forcément et pas pour tout le monde dans les faits. Dans un monde idéal, Android est un système qui, nativement, permet d’autoriser ou de refuser n’importe quel accès, il serait ainsi possible, avec un simple menu, de valider ou refuser une autorisation d’une application.

Dans les faits, c’est l’anarchie.

Le parc Android étant assez éclaté, il est compliqué de trouver une seule et unique solution pour régler ce problème d’autorisations, je vais donc faire une petite présentation d’un certain nombre de solutions que j’ai pu tester, n’hésitez pas à me faire un retour si vous souhaitez partager vos expériences.

Clueful Privacy Advisor

Clueful Privacy Advisor (l’application est en français, rassurez-vous) est une application disponible dans le Play Store, elle est fournie par Bit Defender et on ne peut pas dire que ce sont des novices côté solutions de sécurité.

L’application en elle-même est respectueuse de votre vie privée, elle requiert juste ce qu’il faut en autorisations et elle vous présente les conditions générales d’utilisation au premier démarrage. Conditions que vous devez accepter pour pouvoir continuer.

Une fois l’application installée, vous tombez dans le menu suivant

Clueful

Ce menu vous affiche votre « privacy score » : le niveau global de protection de votre vie privée, à 50/100 sur le téléphone qui m’a servi à faire ce billet. L’application présente ensuite les trois niveaux de danger des applications dont vous disposez : application à haut risque, à risque modéré et à risque faible.

En sélectionnant le niveau de danger de votre choix, on vous liste les applications concernées et on vous explique pourquoi cette application présente un risque potentiel.

Clueful - liste d'applications
Clueful – liste d’applications

Mince, Firefox qui doit accéder à l’historique de navigation !

Il faut cependant réfléchir un peu, l’application ne le fait pas à votre place et c’est très bien, elle considèrera par exemple que Firefox représente un potentiel risque parce qu’il accède à l’historique de navigation… ce qui est normal, pour un navigateur.

Mince, Firefox qui doit accéder à l'historique de navigation !
Mince, Firefox qui doit accéder à l’historique de navigation !

Cependant….

Si c’est gratuit…

il y a…

C’est que c’est…

des choses anormales.

vous le produit !

Donc, cette application est sympa, dans la mesure où c’est très lisible et qu’elle permet de désinstaller une application. Dernier point non négligeable, elle permet de rendre les autorisations très factuelles, on sait quelle application fait quoi, dit quoi, à qui.

Mais comment faire lorsqu’on souhaite conserver l’application, tout en modifiant ses autorisations ?

Bah oui, moi par exemple, j’adore jouer à Andry Birds, mais je n’apprécie pas qu’il transmette plein d’informations qui me concernent, concernent mes habitudes, ainsi que ma position. Ce jeu sait ou je suis, ce n’est pas nécessaire et c’est quelque chose qui ne regarde que moi. Bon, et qui regarde aussi les applications qui ont réellement besoin de ma position, comme un GPS par exemple.

Donc, comment faire pour régler les autorisations d’une façon plus fine qu’une désinstallation brutale ?

C’est là. Là que ça devient vite le foutoir pas possible, surtout depuis l’arrivée d’Android 4 et 4.4.

Personnellement, j’utilisais AppOps. AppOps, ce n’est pas vraiment une application, c’est un raccourci qui vous permet d’accéder à un menu caché des versions d’Android KitKat, qui permet de gérer l’ensemble des droits de chaque application. Bien sûr, c’est long, et potentiellement vous pouvez faire des erreurs, comme interdire la caméra à l’appareil photo (je l’ai fait et un j’ai eu un écran noir).

Seul hic : ce menu et AppOps ne sont, à l’heure actuelle et à ma connaissance, fonctionnels qu’avec la version antérieures à la 4.4.2 du système.

Il existe donc une variante du raccourci : AppOpsX, qui lui fonctionne sous la 4.3, la 4.4 et le reste pour l’instant… seulement, il faut disposer d’un téléphone rooté pour le faire, donc il faut savoir rooter son téléphone, ce qui n’est pas forcément simple pour tout le monde, ni avec tous les téléphones.

Edit du 20/06/2014 à 00:04 : suite à mon billet, l’application n’est plus disponible sur le Play Store, je ne sais pas si c’est lié ou non, mais le constat est là.

Il reste enfin une dernière solution, très radicale : passer sous un système alternatif comme CyanogenMod, qui gère les autorisations d’une autre manière, sous forme de demande de confirmation lorsqu’une application doit accéder à des données sensibles. Bien sûr cela ne change pas grand-chose au problème, mais cette fois, c’est l’utilisateur qui décide et qui fait, ou non, n’importe quoi.

Pour terminer, j’attire votre attention quant au fait que nous ayons tous notre part de responsabilité à assumer : les révélations d’Edward Snowden ont donné un ennemi commun à plein de personnes : la NSA.

Sauf qu’en attendant, nous sommes sans doute ceux qui travaillent le plus pour elle sans spécialement y prêter attention. Votre intimité et votre vie privée ne se protègera pas sans votre intervention…

Alors, qu’allez-vous faire maintenant ?

Edit du 19/06/2014 à 22h41 :

L’ami @Greenpisse m’a envoyé une petite présentation de LBE Privacy Guard, que j’ai voulu tester mais sans succès.

LBE Privacy Guard se présente un peu de la même manière que Clueful Privacy Advisor, dont nous avons parlé juste avant. LBE Privacy Guard fait la liste de toute vos applications en incluant les applications systèmes, et fait ensuite la liste des autorisations demandées. Grâce à LBE Privacy Guarg, vous pouvez choisir de valider une à une chaque autorisation, dire si oui ou non une autorisation sera validée.

Les applications sont classés soit par autorisation :
LBE1

Soit par nom :
LBE2

A chaque fois que vous installez une application, une phase de validation par notification vous demandera de confirmer les autorisations de ladite application.
Trois choix s’affrent à vous : allow / prompr / deny.

Allow et Deny sont assez explicites, « prompt », lui, vous demandera ce qu’il faut faire dès lors que l’application aura besoin d’une autorisation. Vous disposez de 10 secondes pour choisir, une fois passé ce délai, la demande est rejetée, c’est le comportement par défaut de l’application.

Au final, ça donne quelque chose comme ça
LBE3

D’ailleurs… il faudra m’expliquer aussi pourquoi une application de backup requiert ma position !

Le problème de cette application, c’est le manque de précision sur les demandes des applications, au passage, elle ne bénéficie pas de traduction française. C’est pourquoi elle me semble un bon complément à  Clueful Privacy Advisor.

Attention cependant, pour quelques applications, LBE ne detecte pas immédiatement certaines autorisations… parce que ce n’en sont pas.

Explications : j’ai joué à duel quizz un moment et, au 1er lancement, LBE m’a fait savoir que l’application tentait de me géolocaliser alors que ce n’est précisé nulle part dans les conditions (on applaudit donc Duel Quiz pour ce coup bas).

Votre intimité face à Android et ses autorisations, seconde partie.

Dans la première partie de ce billet, nous avons fait le point sur la mise à jour de l’affichage des autorisations requise dans les applications sur Android. Je sais, ça fait vachement long à lire.

Dans la seconde partie de ce billet, nous allons décrire un peu plus en détail les autorisations sous les systèmes android : il faut bien savoir quoi protéger pour faire attention, non ?

Nous allons commencer assez simplement : il y a plus de 150 autorisations différentes sous android et, de prime abord, ça peut sembler assez énorme. C’est d’ailleurs pour ça que nous allons faire le point.

Si vous voulez obtenir la liste complète, et à jour, c’est là que ça se passe : (et les groupes d’autorisations sont ici)

Ce qu’il y a de bien avec ces pages c’est qu’une petite description est présente, je sais donc, par exemple, que « CHANGE_WIFI_MULTICAST_STATE » permet de changer l’état multicast du Wi-Fi.

Bon, bien, le but de de blog, ce n’est pas de parler uniquement à celles et ceux qui savent lire un langage chiffré pour le commun des mortels, sans élitisme, « nous » – si tant est que je puise dire nous – sommes généralement entre « nous » et le principe, ici, c’est de faire en sorte de vous inviter dans ce « nous », que tout soit compréhensible, peu importe votre niveau.

Je vous invite quand même à lire les deux liens précédents, si vous avez des notions d’anglais, c’est parfaitement suffisant. Nous allons donc nous concentrer sur les autorisations les plus sensibles du système.

Les points suivants sont donc, selon moi, les plus sensibles pour votre vie privée et l’intimité de vos données, n’hésitez pas à commenter au besoin.

Le groupe d’autorisation « Identité », « Localisation », « Photos / Médias / Fichiers » et « SMS » me semblent déjà un bon début pour faire attention

Côté Identité, pour faire très bref, une application pourra disposer des droits suivants :

  • Rechercher des comptes sur l’appareil
  • Lire votre fiche de contact (nom et coordonnées)
  • Modifier votre fiche de contact
  • Ajouter ou supprimer des comptes

Côté Localisation

  • Accéder à la localisation approximative
  • Accéder à la localisation précise
  • Accéder à la localisation par le fournisseur
  • Créer des points de localisation fictifs

Vous l’aurez compris, c’est la même pour la suite : il sera ainsi possible d’accéder aux photos, médias et fichiers, de les modifier via une autre autorisation, de les supprimer via une autre et ainsi de suite.

Il en va de même pour les SMS, qui peuvent être lus via une autorisation, envoyés à votre insu via une autre, payants via une énième, transmis et ainsi de suite … la liste est plus longue sur la partie SMS d’ailleurs.

Je n’ai pas réussi à remettre la main sur une adresse qui facilite grandement la lecture des autorisations, j’éditerai le billet dès que ça sera corrigé.

Je vais essayer, maintenant, d’être un peu plus parlant.

Vous disposez d’une application qui utilise une autorisation du groupe « Camera ». A l’époque, vous avez autorisé cette application parce qu’elle prend des photos, c’était d’ailleurs la seule autorisation requise dans ce groupe. Parfait, une application qui me donne confiance, c’est moi qui décide de l’utilisation de l’appareil.

Seulement, depuis cette mise à jour dont nous parlions au précédent billet, il n’y a plus de notifications d’une nouvelle autorisation requise si cette dernière fait partie d’un groupe d’autorisation déjà présent.

Revenons à notre cas pratique. Votre application doit être mise à jour, vous faites confiance à cette dernière et votre appareil vous dit qu’aucune autorisation supplémentaire n’est requise, pourquoi s’inquiéter…

Et c’est ainsi que vous donnez à votre application le contrôle total de la caméra, le droit de l’utiliser sans prévenir, de prendre des photos, de transmettre les clichés, de prendre des enregistrements sonores, à nouveau sans vous prévenir, bref, de doper l’espion déjà bien costaud qui est dans votre main.

Voilà, pour rejoindre l’explication du premier billet, le résultat de cette mise à jour. Le constat est assez dramatique, je trouve, et très visible là : perte de visibilité, de pouvoir, de sécurité pour l’utilisateur.

Google répondra qu’il est possible d’aller voir dans le détail de chaque application, sauf que nous sommes, au doigt mouillé, moins de 5% à systématiquement vérifier scrupuleusement une application, non ?

Google n’est pas sans le savoir, leur choix représente donc pour moi une très mauvaise nouvelle.

Puis, comme expliqué dans le précédent billet, ne pas mettre à jour son application représente un danger, puisque cela revient à s’exposer à d’éventuelles failles.

On peut également se dire qu’en soi, les développeurs savent ce qu’ils font, qu’ils n’abusent pas avec les autorisations, mais ça serait une grosse erreur.

Démonstration :

2048 qui souhaite consulter mes fichiers, pourquoi ?
2048 qui souhaite consulter mes fichiers, pourquoi ?

Est-ce que quelqu’un peut m’expliquer pourquoi une application où il faut faire glisser des chiffres vers une direction doit accéder à mes fichiers ?

Vous seriez surpris, peut-être, de savoir que les Angry Birds peuvent accéder à votre position approximative, que des écrans de veille ont le droit d’envoyer des SMS payants et j’en passe encore.

On peut, enfin, se dire qu’il faut régler ces autorisations, et je suis parfaitement d’accord avec vous. Seulement, ce n’est pas si simple que ça, Android ne vous laisse pas modifier ses autorisations « comme ça », et ça sera l’objet d’un dernier billet.

Alors, vous avez une application un peu trop gourmande ? Pour ceux qui n’ont pas trouvé où cela se situe, c’est du côté de « Paramètres », puis « Applications », il faut choisir une application, et en bas, vous aurez « Autorisations ».

Suite et fin au prochain billet.

Votre intimité face à Android et ses autorisations, première partie.

Chez moi, ça commence par ça :

Après, il m’a fallu pas mal de lecture….

C’était le 06 juin, dans ce tweet envoyé un peu à l’arrache, je m’étonnais de la mise à jour des conditions d’affichage des autorisations dans les applications pour Android, je me suis, depuis, étonné du traitement de cette information, pour ainsi dire pas reprise.

Vous pouvez retrouver les conditions à cette adresse. Le principal changement opéré par Google, c’est la façon dont sont affichées les modifications des permissions dans les applications, en gros, les applications qui nécessitent une modification de privilèges n’afficheront plus automatiquement cette demande.

Dans le discours de Google, cette mise à jour est là pour simplifier l’affichage des autorisations, ce qui est d’ailleurs vrai : les autorisations d’une section non autorisée par le passé seront affichées. Peu importe que les mises à jour automatiques soient activées ou non, il faudra que l’utilisateur accepte d’installer l’application si elle a besoin d’accéder à une nouvelle section d’autorisation.

Et c’est là que le problème se situe, pour moi, dans cette « nouvelle section d’autorisations ».

Pour bien comprendre, il faut s’attarder un peu sur le fonctionnement des autorisations, sous le système android : les autorisations marchent par « rubriques », par exemple, une pour l’identité, une autre pour les photos, une autre pour les paramètres réseaux et ainsi de suite. Dans ces rubriques, il y a les autorisations, comme « lire les informations des contacts », par exemple, ou encore « modifier les informations des contacts ».

L'affichage des rubriques
L’affichage des rubriques
Le détail de ces rubriques
Le détail de ces rubriques

Or, le nouvel affichage des autorisations ne prend en compte que les nouvelles «rubriques, pas la modification de celles déjà autorisées.

En pratique, ça signifie quoi ?

Ça signifie que vous ne savez pas ce que votre application fait. Exemple : Vous avez l’application Facebook, elle dispose des autorisations pour « accéder au contenu de la carte SD ».

Vous mettez cette application à jour, une nouvelle autorisation est requise : « modifier ou supprimer le contenu de la carte SD », mais, parce qu’elle est dans une rubrique déjà autorisée, la mise à jour ne stipulera pas ça, elle affichera quelque chose comme ça :

mise à jour
Une mise à jour qui ne nécessite – officiellement – aucune nouvelle autorisation

 

Le hic, c’est que je sais qu’Adobe Reader a besoin d’une nouvelle autorisation. Je le sais parce que j’ai refusé de le mettre à jour déjà 5 fois, et qu’il n’y a aucune raison pour que cette autorisation disparaisse comme par magie.

Autre exemple : l’application Youtube que j’utilise n’est pas à jour parce qu’elle demande à activer ou désactiver les paramètres de synchronisation de mon téléphone toute seule, chose que je refuse fermement. Seulement, maintenant, ce n’est plus affiché.

Bah, il n’y a qu’a plus rien mettre à jour, et puis voilà.

Oui, non, mauvaise idée. Les applications sont mises à jour parce qu’elles présentent généralement des failles de sécurité, ne pas les mettre à jour pour éviter les autorisations abusives revient donc à s’exposer à d’autres menaces. Vous voilà donc le téléphone entre deux chaises…

Ce choix de Google me semble étonnant : dans un contexte post révélations de Snowden, donner moins de visibilité à ce paramètre m’inquiète, d’autant plus qu’il est admis que les renseignements se servent des applications pour récupérer des données sur les utilisateurs.

C’est aussi un risque plus grand pour l’utilisateur, puisqu’il y a maintenant moins de visibilité sur ce que demande une application.

De l’autre côté, je cherche à comprendre les raisons de cette mise à jour et j’en viens à me dire que c’est peut-être parce que de moins en moins de gens mettaient à jour leurs applications qu’ils ont décidé de faire ça.

Depuis les révélations citées au-dessus, beaucoup de personnes, au moins dans mon entourage large, font plus attention aux autorisations requises. Cette prise de conscience a peut-être dérangé Google et les fournisseurs d’applications sur le Play Store, poussant la firme à modifier l’affichage des autorisations…

Quoi qu’il en soit, j’initie donc ici le premier billet d’une suite, qui découle de cette mise à jour. Le prochain billet sera consacré aux autorisations, dans le détail, ainsi qu’aux autorisations les plus sensibles.

Quant à cette information, c’est peut-être un détail pour vous, mais pour moi ça veut dire beaucoup…. Ne me cherchez pas, je suis déjà parti rédiger le second billet, dehors, loin.