Vendredi 23 novembre 2018

URL: https://linuxfr.org/news/utiliser-son-android-de-facon-plus-securisee Title: Utiliser son Android de façon plus sécurisée Authors: voxdemonix ZeroHeure, BAud, Davy Defaud, Yves Bourguignon, jcr83, Nils Ratusznik, palm123, xev et Pierre Jarillon Date: 2018-06-03T19:16:13+02:00 License: CC by-sa Tags: android, sécurité, cybersécurité et smartphone Score: 21

Android, le système d’exploitation largement majoritaire sur les mobiles, est, comme chacun le sait sur LinuxFr.org, construit sur un noyau Linux.

Linux étant sous licence GPL, tout peut vous sembler parfait, mais en réalité la couche applicative Android est beaucoup moins amicale que son noyau Linux.

Le but de cet article est de vous expliquer le fonctionnement d’Android, de vous faire découvrir sa face cachée et de vous expliquer comment vivre avec dans les meilleures conditions possibles.


Journal à l’origine de la dépêche


Origine de l’article : via Web ou via Tor. En‐tête de l’article 🍭 Si tu fais des conneries avec ta vie privée et celle des autres, tu es une balance, peu importe tes excuses ou ton déni. 🍭

Point de Départ

Introduction ———— Android est un système en partie libre, assez dur à dompter tout en étant celui offrant le plus de possibilités. Il est généralement livré avec des applications publicitaires, des espiongiciels (spywares/tracker) à la pelle (surtout Google Analytics) et autres applications dérangeantes autant pour le confort personnel, la philosophie que l’aspect sécuritaire ou énergétique. Par exemple, lors de l’initialisation de votre appareil, Facebook (qui est préinstallé sur quasi tous les appareils Android) va récupérer votre liste de contacts et se l’auto‐envoyer, même si vous n’avez jamais utilisé FB de toute votre vie.

Les opérateurs et fabricants ont tendance à modifier le système — par exemple, HTC qui insère son propre lanceur (launcher) et ses propres widgets — l’existence de différences d’un mobile Android à un autre est donc « normale ».

Petit rappel : votre machine vous sert souvent pour communiquer avec d’autres humains. Grosso modo, elle sert d’organe comme votre bouche et vos oreilles. Si vous et vos interlocuteurs ne pouvez faire confiance à votre bouche et vos oreilles, comment communiquer avec vous ?

Attention : méfiez‐vous des trop nombreux comparatifs dont le but n’est point de vous aider à choisir le bon logiciel mais plutôt de rapporter de l’argent à son auteur.

Petit résumé du fonctionnement d’Android

Android est un moteur Linux, faisant tourner une machine virtuelle (émulateur) exécutant du Java. Contrairement aux systèmes sur ordinateur où chaque application range ses données dans son coin et où c’est parfois le bordel, sur Android, certaines informations sont centralisées dans une base de données principale. Ainsi, chaque application y aura accès ou non selon votre gestion des permissions. De fait, les calendriers, les SMS/MMS, la position et les contacts peuvent être accessibles à toutes les applications sans passer par la case exportation. Le danger est justement cette facilité d’accès pour les applications préinstallées par les opérateurs, auxquelles ces derniers auront sournoisement autorisé toutes les permissions. Android ne permet pas encore une utilisation aussi poussée que sur ordinateur. On citera, entre autres, la difficulté abusive pour programmer ou scripter, l’impossibilité d’afficher plusieurs fenêtres en même temps, l’absence du montage à distance, etc.

Un truc très important à savoir avec les appareils Android : le nombre d’applications installables ou à mettre à jour sur un appareil diminue avec le temps car les nouvelles versions ont besoin d’un système plus récent.

Explications détaillées pour les barbus : En effet, il n’y a plus de mises à jours système après environ deux ans de vie du produit. La raison majeure étant que l’architecture ARM elle‐même est très morcelée et la prise en charge varie fortement entre les différents concepteurs de briques de base (processeur, décodage vidéo, accélération 3D, Wi‐Fi, etc.), les assembleurs de systèmes monopuces (SoC) qui en plus apportent des spécificités, les assembleurs de téléphones qui en rajoutent une couche en termes de matériel et de logiciel, puis éventuellement l’opérateur chez qui le téléphone a été acheté et qui ajoute sa surcouche logicielle. Au final, n’importe quel maillon peut flancher et, en bout de chaîne, il est banal de se retrouver avec une image Android qui traîne de vieux pilotes, qui n’est pas facile à maintenir et qui, avouons‐le, arrange bien les fabricants de téléphones qui ont une nouvelle gamme à vendre et qui conçoivent leurs produits au plus juste de la garantie légale et avec des ambitions marketing (comme pouvoir afficher de grosses autonomies au détriment de la durabilité de la batterie). Google (qui possède Android) essaye, via le projet Treble, de limiter en partie ce problème.

Règles de base

  • Méfiez‐vous de ce que vous installez ou de ce qui est préinstallé : n’installez pas des applications inutiles, à la provenance douteuse (y compris sur le Play Store) ou demandant des permissions suspicieuses. N’oubliez pas non plus que la plupart des chevaux de Troie se cachent dans des applications d’un premier abord normales. Votre vie privée ne peut être protégée si vous installez des applications qui pompent toutes vos données. Afin de les éviter au maximum, utilisez des applications libres en lieu et place de celles installées par défaut (attention, certaines applications libres, provenant généralement des fabricants, embarquent Google Analytics).
  • Verrouillage de l’écran : toujours laisser le verrouillage automatique de l’écran. La majorité des piratages s’explique par un proche qui pique le mobile ou va sur le PC non verrouillé quand on a le dos tourné.
  • Un service ou une application conçue dans votre pays n’est pas de meilleure qualité « parce que voilà ». Il faut que les gens derrière l’application ou le service poursuivent des objectifs finals concordant avec vos attentes. La communauté aussi est très importante, elle ne doit pas être composée en majorité d’imbéciles demandant des anti‐fonctionnalités (voir, par exemple, les commentaires sous les applications foscam où des gens demandent l’introduction de ce qu’un averti appellerait une « porte dérobée »). Évitez quand même les pays à mauvaise réputation (Chine, Russie, Moyen Orient, Turquie).
  • L’antivirus ne vous protégera jamais de vos incompétences ou méconnaissances. L’antivirus ne peut vous protéger de vos propres erreurs. Si vous exécutez une application contenant un « pourriciel » (malware), que votre antivirus vous demande si c’est normal et que vous répondez Oui, alors l’antivirus ne va pas bloquer le vilain. Aucun antivirus ne vous protégera jamais de vos propres actions.
  • C’est normal de ne pas tout savoir. Personne n’est omniscient, vous ne savez pas tout sur tout et allez commettre des erreurs. Il faut l’accepter et réfléchir à comment diminuer l’impact de vos erreurs éventuelles.
  • Ne laissez pas vos émetteurs‐récepteurs allumés inutilement. N’oubliez surtout pas de couper le Wi‐Fi, le Bluetooth et le NFC lorsque vous n’en avez pas besoin. Il faut savoir qu’il est très, très, très facile de vous suivre grâce aux identifiants (voir adresse MAC) et ce, sans que vous soyez connecté. En effet, votre machine va polluer régulièrement l’air de requêtes permettant de savoir si un des réseaux (pour le Wi‐Fi) ou une des machines (pour le Bluetooth) avec « connexion automatique » (par défaut) est à portée de connexion.
  • Ne vous connectez à des services qu’en HTTPS, jamais en HTTP. (sauf les .onion) Il vous arrive probablement de vous connecter à des réseaux Wi‐Fi non sécurisés, à des réseau privés virtuels (VPN) ou à Tor. Il ne faut jamais faire confiance aux machines intermédiaires entre vous et le destinataire. Pour éviter de vous faire piller vos mots de passe, utilisez toujours HTTPS.

Premiers pas

Note : prenez votre temps, en cas d’erreur le risque c’est de foutre en l’air votre machine et les réparations ne sont pas gratuites. À vos risques et périls, hacker vaillant rien d’impossible !

Avant l’achat

Avant d’acheter un nouvel appareil il faut vérifier sur Internet que ce n’est pas juste une bouse de marketeux. Pour ce faire, renseignez‐vous afin de connaître les retours d’expérience d’autres personnes (attention aux faux com’), de savoir s’il est facilement « rootable », si les mises à jour système ne se bloquent pas au bout de six mois, etc. Ne succombez surtout pas aux publicités sans vérifier derrière et ne soyez pas le premier de tout l’Internet à tenter de « rooter » un nouvel appareil. ;)

Root (accès super‐utilisateur)

Attention : risque de bloquer votre machine (break, freeze, bootloop)

Explications : L’accès root vous permet d’autoriser des applications à accomplir des actions en super‐utilisateur. Pour avoir accès en super‐utilisateur, sur la plupart des machines Android, il vous faudra utiliser un hack. Cette bidouille est parfois prévue par les fabricants (par exemple, HTC et Sony qui vous fournissent un tuto si vous leur offrez vos informations personnelles [tracking]). La raison pour laquelle l’accès root est aussi difficile à avoir est simple : vous interdire de supprimer les applications publicitaires, ainsi que les logiciels espions des fabricants, opérateurs, fournisseurs ou encore étatiques, et vous empêcher d’avoir le contrôle complet de votre machine. Attention, déverrouiller le chargeur d’amorçage (pour pouvoir « rooter ») peut provoquer la fin de la garantie pour certains appareils.

Chaque appareil aura donc une méthode spécifique pour avoir accès en super‐utilisateur, mais en général, vous devrez :

  1. désactiver le chiffrement de la partition :
    • lancez votre appareil sans carte SIM,
    • si c’est votre premier lancement, dites non à un maximum des questions qu’il va vous poser et faites la mise à jour système,
    • une fois l’appareil lancé, allez dans ParamètresVerrouillage d’écran et sécuritéChiffrer l’appareilDésactiver le chiffrement des données (vous pourrez, au choix, le réactiver plus tard ou non, si votre ROM est compatible) ;
  2. déverrouiller le chargeur d’amorçage (bootloader) ;
  3. « rooter » votre appareil en suivant la procédure spécifique à l’appareil (cherchez sur un moteur de recherche « root nom_COMPLET_de_votre_appareil »).

Premier lancement d’Android

  1. /!\ ne placez surtout pas votre carte SIM ;
  2. répondez aux questions afin de lancer l’appareil ; veillez à décliner respectueusement toutes les offres de vous faire espionner et choisissez ignorer lorsque l’appareil vous demandera le code du Wi‐Fi ;
  3. une fois l’appareil lancé, rendez‐vous dans vos Paramètres puis Applications et Forcez l’arrêt puis Désactivez les applications chelou (Facebook et compagnie) en veillant à ne pas toucher aux applications risquant de rendre instable votre appareil — pour les applications de votre opérateur ou du fabricant il faudra se renseigner sur le Net, voire y aller à tâtons avec le risque de casser votre appareil, donc faites très attention ; si après avoir désactivé une application vous commencez à avoir plein d’erreurs provenant du système Android, réactivez cette application avant tout redémarrage du système (sinon, risque de bootloop) ;
  4. désactivez les publicités ciblées, voire tout ce qui utilise un compte Google, Microsoft, Apple, etc. ;
  5. désactivez la gestion du NFC (à moins que vous ne l’utilisiez) ;
  6. autorisez l’installation d’application en dehors du Google Play Store ;
  7. installez F-Droid, la bibliothèque d’applications libres puis YalpStore pour pouvoir installer les applications provenant du Google Play Store sans passer par ce dernier.

Communiquer avec d’autres humains

Via Internet ————

XMPP + Tor

Animation expliquant Tor + XMPP

Applications : Conversation et/ou Movim + Orbot XMPP est le protocole qui se cache derrière Movim et Conversation, deux puissants clients de communication qui vous permettront d’oublier Facebook une bonne fois pour toutes. Movim est une alternative complète à Facebook, alors que Conversation est une alternative à Messenger (l’application de clavardage de Facebook). Afin d’empêcher le pistage via l’adresse IP, que vous hébergiez votre propre serveur XMPP ou que vous soyez inscrit sur un serveur de la confédération, il est conseillé d’utiliser Orbot. Ce dernier va, pour vos données circulant entre vous et le serveur XMPP, les faire transiter par le réseau Tor et ainsi dissimuler votre adresse IP. C’est assez important si vous vous déplacez avec votre appareil afin d’empêcher la géolocalisation, plus particulièrement si vous utilisez les points d’accès Wi‐Fi gratuits (hotspots) et réseaux FON (dont vos changements d’adresse IP au fur et à mesure de vos connexions aux différents points d’accès FON vont permettre de récupérer vos déplacements plus facilement qu’en 4G) :

  1. ouvrez Fdroid, activez le dépôt Gardian Project et cherchez puis installez Orbot et, au choix, Conversation ou Movim (ou les deux) ;
  2. lancez Orbot, activez le mode RPV puis allez dans Applis pouvant utiliser Tor et cochez Movim et Conversation ;
  3. lancez ensuite Movim ou Conversation au choix et soit rentrez les informations pour vous connecter, soit créez un nouveau compte, mais attention : si la création de compte est gratuite dans la fédération Movim, celle chez Conversation est payante (8 €/an) ;
  4. si vous utilisez Conversation, rendez‐vous dans les Options puis Options avancées et cochez utiliser Tor ;
  5. enjoy!

Conversation Capture d’écran de l’application Android Conversation

Movim Capture d’écran de l’application Android Movim

Via SMS

Note : tout message envoyé non chiffré peut être lu par l’opérateur et le modem de l’appareil.

Silence (le plus sécurisé)

Logo de Silence Silence est une application libre (licence GPL v3) permettant d’envoyer et de recevoir des SMS. Sa particularité est de chiffrer les SMS, ils sont donc illisibles autant pour les autres applications que pour un éventuel voleur de mobile. En revanche, elle ne résiste pas longtemps aux attaques par force brute via serveur. La sécurité qu’elle amène peut en revanche provoquer des problèmes d’intégration avec d’autres applications : l’application Contact ne pourra plus afficher les derniers SMS envoyés et reçus dans les informations dudit contact, Nextcloud-SMS ne pourra plus récupérer les SMS, les applications de sauvegarde non plus. Silence peut envoyer des SMS chiffrés si l’expéditeur et le destinataire ont tous deux l’application installée. Mais le chiffrement a un coût : la taille maximum d’un SMS passe de 140 caractères à une septantaine seulement. Petit défaut : les émoticônes ne sont pas toujours automatiquement transformées en images. Capture d’écran de l’application Android Silence

QKSMS (le plus intégré)

Logo QKSMS

QKSMS est une application libre (licence GPL v3) permettant d’envoyer et de recevoir des SMS. Elle est très bien intégrée au système Android et peut fonctionner avec Nextcloud-SMS, etc. Les mises à jour sont régulières, les émoticônes automatiquement transformées en image (si vous avez coché l’option dans les paramètres), les SMS ne sont pas chiffrés. Selon vos préférences, vous pouvez l’installer via F-Droid ou via Google Play Store.

Démo Android QKSMS

Gestion de la mémoire

Le Cloud et la synchronisation des données —————————————— Vos données font partie de votre mémoire et il faut en prendre soin. Ainsi, il est important de sauvegarder ses données afin de se prémunir des pannes matérielles. Avant, on utilisait des sauvegardes sur des disques durs externes qui prenaient la poussière. Et lorsque le disque dur externe tombait en panne, on perdait nos données. Aujourd’hui, il y a le Cloud qui permet de sous‐traiter la mémoire chez un fournisseur de stockage en ligne. Bien entendu, rien ne vous empêche d’être vous‐même votre propre fournisseur Cloud. Mais attention, le Cloud permet de se prémunir des pannes matérielles mais pas d’un piratage ou d’une extorsion de mot de passe. Pour ce faire, privilégiez donc les services de fournisseurs envers qui vous avez relativement confiance. Ces fournisseurs doivent autant que faire se peut utiliser des technologies libres qui ont pour énorme gain, entre autres, de pousser à toujours plus de sécurité. N’hésitez pas à couper la synchronisation durant la nuit, sauf si vous avez des données à synchroniser. En effet, les logiciels de synchro consomment autant d’énergie et de données de nuit que de jour. Avec un serveur Nextcloud (tuto d’install) et votre Android, vous pouvez :

Le chiffrement

Vous pouvez chiffrer le contenu de la mémoire du mobile et ce sans installer d’application supplémentaire, c’est complètement géré par Android. Le chiffrement permet de rendre illisible le contenu de la mémoire pour un voleur, tant que ce dernier ne dispose pas d’une puissance de calcul suffisante pour lancer une attaque par force brute. Sachez que le chiffrement a un impact sur les performances de la machine, qui peut varier en fonction du processeur et de la qualité de la mémoire. Attention : le chiffrement de la mémoire n’est pas toujours compatible ou stable avec les gestionnaires d’amorçage (bootloaders) déverrouillés, bien que les retours aient l’air positif. En revanche, toutes les ROM ne gèrent pas forcément le chiffrement.

Gestion des applications

Gestion des permissions ———————– ###Comment gérer les permissions des applications

  • ParamètresApplicationsParamètresAutorisation des applications ;
  • autorisez le moins de permissions possible aux applications ;) screenshot-2018_05_30-Android-Acceder_menu_permissions_applications

###L’utilisation de données forgées (fake data) pour les applications demandant trop de permissions XPrivacyLua (pour Android 6 ou plus) ou XPrivacy (pour Android 5 ou moins) permet de leurrer les applications. Si vous êtes obligé d’installer une application demandant trop de permissions, c’est fait pour vous. L’accès super‐utilisateur (root) est obligatoire. screenshot XPrivacy

###Supprimer ou restreindre les permissions d’une application Lucky Patcher peut être utilisé pour supprimer des permissions à une application. C’est au niveau de l’application que la modification sera appliquée et donc peu importe les autorisations accordées par le système. Cela peut, bien entendu, provoquer des instabilités voire des dysfonctionnements des applications modifiées et des applications qui dépendent d’elles.

Gérer le démarrage des applications.

Lors de leur installation ou de leur paramétrage, les applications peuvent « demander » à Android de les lancer lorsqu’il y a certains évènements : démarrage (boot) de la machine, connexion à Internet en Wi‐Fi ou par le réseau opérateur, extinction de la machine, etc. Vous pouvez utiliser l’application libre Autostarts (ou via PlayStore/Yalp) pour gérer quelle application peut démarrer en fonction de quel type d’évènement. Si vous avez installé XPosed Framework, à la place d’autostart vous pouvez installer et utiliser son module BootManager selon vos préférences (l’accès super‐utilisateur root est obligatoire). Android-Autostarts-Demo

Forcer la suppression d’applications

Certaines applications comme Facebook, AVG et compagnie sont installées par les opérateurs (contre rétribution) avec blocage pour empêcher l’utilisateur final de les désinstaller. Pour contrer cela, vous pouvez utiliser Lucky Patcher, il permet de forcer la désinstallation d’applications, la suppression de publicité et autres bidouilles (l’accès super‐utilisateur root est obligatoire). Pour supprimer une application vous n’avez qu’à lancer Lucky Patcher, chercher ladite application, cliquer dessus puis choisir Désinstaller l’application. Attention : avant de supprimer une application vérifiez que votre système ou d’autres applications n’en dépendent pas. Pour ce faire, désactivez‐la, vérifiez si aucune erreur ne se produit avec les autres applications ou pire le système Android. Ensuite, redémarrez votre machine et si toujours aucune erreur ne se produit, alors vous pouvez la supprimer. Pensez à faire une sauvegarde de l’application afin de pouvoir la restaurer en cas de problème. Ne supprimez pas les applications des fabricants et opérateurs ni les applications système, car vous risquez un bootloop !

Démo de suppression d’application Android avec Lucky Patcher

Démo de l’application Android Lucky Patcher

Les applications de rencontre

Alice au pays des merveilles

Si vous avez moins de trente ans, c’est la catégorie qui pompe vos données personnelles et qui pourtant reste incontournable. En revanche, dans cette catégorie, n’espérez pas, il n’y a pas encore d’application de rencontre libre ni sans espionnage. Donc, voyons comment sauver vos miches sans vous empêcher de tchatcher.

Les applications de rencontre généralistes (Badoo, Facebook, Meetic, Tinder…)

Note : elles dépendent beaucoup de Google Play Service. Elles n’apprécient pas trop Orbot.

Elles n’ont pas besoin de la Géolocalisation (sauf si vous utilisez une fonctionnalité basée dessus). Sur les versions d’Android permettant la gestion des permissions, vous pouvez leur verrouiller l’accès à quasi tout sans qu’elles cessent de fonctionner. Pour les Android plus vieux, il faudra passer par XPrivacy, comme expliqué plus haut. S’il faut vraiment autoriser des permissions contraignantes (par exemple, l’accès à l’identifiant de l’appareil), passez par XPrivacyLUA. Pensez autant que faire se peut à supprimer les méta‐données de vos photos via, par exemple, Scrambled Exif (sur F-Droid ou sur Google PlayStore). N’oubliez pas que les autres utilisateurs peuvent facilement recopier vos photos et les utiliser pour faire de faux comptes. ;)

Les applications basées sur la Géolocalisation (Happn, Meetwo, The League…)

Note : elles dépendent beaucoup de Google Play Service. Elles n’apprécient pas trop Orbot.

Après utilisation, bien penser à Forcer l’arrêt de l’application dans le menu Application d’Android ou a minima de couper la géolocalisation. Pour répondre aux Matches, il faut que l’application soit lancée et connectée à Internet, mais pas besoin de la géolocalisation pour cela.

Lutter contre les vols

Géolocalisation ————— Note : peut avoir une incidence sur la batterie et la charge réseau selon la configuration.

Vous pouvez régler un logiciel comme GPSLogger pour exporter la géolocalisation de votre appareil en permanence ou uniquement lors du redémarrage de votre appareil. Si vous disposez d’un compte sur un serveur Nextcloud ou Owncloud, vous pouvez suivre ce tutoriel: Exporter géolocalisation sur le cloud (Nextcloud/Owncloud) avec GpsLogger.

Utiliser des « mots de passe d’application » (Token ou encore API Key)

Certains services, comme Nextcloud, permettent de créer des mots de passe uniques permettant d’être utilisés par une seule (ou plusieurs) applications. Ainsi, en cas de vol, on pourrait éventuellement récupérer votre mot de passe d’application, mais pas le vrai mot de passe de votre compte (ni des éventuels autres services sur lesquels vous pourriez avoir réutilisé ce mot de passe). Utilisez autant que faire se peut ce mécanisme et, en cas de vol/piratage, allez révoquer directement les accès compromis et ce le plus vite possible. Exemple Nextcloud de connexion via un jeton

L’accès à distance

Note : a une incidence sur la batterie et la charge réseau.

Certaines applications vous permettent de contrôler votre appareil Android à distance (depuis un ordinateur). La plus connue est AirDroid, hélas non libre et pas des plus saines (l’application permettant un contrôle depuis le site de l’entreprise). Il n’existe actuellement aucune alternative libre.