Que change le chiffrement de WhatsApp?

L’ « annonce » de WhatsApp utilisant le chiffrement de bout en bout ne doit pas vous leurrer:

  • Le chiffrement de bout en bout utilisé fait abstraction du problème des métadonnées.
    Leur page sur la sécurité et le whitepaper sur le chiffrement prend bien soin de ne pas parler du traitement réservé aux métadonnées. Or les métadonnées sont les données les plus efficaces aujourd’hui pour décrire un comportement. Elles sont faciles à analyser.
    WhatsApp récupère toujours tout votre carnet de contacts et vous identifie par votre numéro de téléphone.
    Il note pour chaque message envoyé les numéros de téléphone de l’émetteur et du destinataire, l’heure, les IP. Donc si DSK appelle Julie Gayet à tous les jours à 2H du matin, WhatsApp a cette info, l’enregistre et la transmet à des tiers.
    C’est bien caché mais écrit noir sur blanc dans leur conditions légales, dans le paragraphe « The Information WhatsApp Does Not Collect » : « Notwithstanding the above, WhatsApp may retain date and time stamp information associated with successfully delivered messages and the mobile phone numbers involved in the messages, as well as any other information which WhatsApp is legally compelled to collect. »
    Donc vous ne pouvez même pas dire que vous ne saviez pas.
  • Derrière le vernis de la communication, personne ne peut vérifier ce qu’il en est réellement. On ne peut pas vérifier le code tournant sur le téléphone ni vérifier le contenu du serveur.
  • Si dans une prochaine mise à jour, WhatsApp coupe court au chiffrement pour faire du MitM, vous n’aurez aucun moyen de le voir.
  • Le serveur de WhatsApp est l’unique délivreur des clés publiques temporaires utilisées pour le chiffrement des messages. Il est donc aisé pour lui de faire un MITM quand ça lui chante sans aucune modification du code client.
  • WhatApp comme Signal, utilise Google Cloud Messaging pour acheminer les messages. Pour l’utiliser, il faut avoir les GoogleApps installées et donc donner les droits root sur son téléphone à Google. Donc rien n’empêche Google de récupérer votre clé privée de WhatsApp quand ça lui chante. Si c’est pour se protéger de Google/NSA/USA, c’est raté.
  • Facebook (la maison mère de WhatsApp) n’est pas philanthrope. Le but est de faire le maximum de thune. Avec WhatsApp, je pense qu’ils essayent aussi de conquérir 90% du marché pour remplacer les opérateurs de téléphonie classique. Si bien que demain on sera obligé de donner son carnet d’adresse et le détail de ses communications à WhatsApp/USA.

facture_detaillée

A mon avis, l’onion routing est une bien meilleure façon d’avoir une vie privée. Il faudrait contrôler chacun des nœuds intermédiaires pour avoir accès aux métadonnées.

Sinon, contrôler son serveur de connexion (celui qui manipule les métadonnées) peut également être une solution. Par exemple dans le cas serveur de connexion de WhatsApp, seul WhatsApp sait qui communique avec qui.

Voila, personnellement, j’utilise Conversations (un logiciel libre) depuis Fdroid (un dépôt d’application de logiciels libres recompilés et qui ne demande pas de droits root). Conversation fait du chiffrement de bout en bout (y compris sur le transfert des photos/audios/fichiers) avec OMEMO, OTR ou PGP au choix.
J’ai mon serveur XMPP sous Prosody.

20 réactions sur “ Que change le chiffrement de WhatsApp? ”

  1. Gilles

    Merci pour les précisions.
    Je résume : les textes des messages sont chiffrés, mais peuvent l’être via du MitM.
    Les métadonnées ne sont pas chiffrés.
    WhatsApps pourrait donc donner les clefs et les métadonnées aux « espions ».
    \o/.
    Donc tu recommandes quoi pour envoyer des messages chiffrés ?
    SMSSecure ?

  2. Gilles

    Je rajoute : Whatsapp c’est de l’envoi de message genre SMS, non ?
    Et Conversation de l’instantané genre Pidgin ?
    Du coup je ne vois pas les mêmes utilités car Whatsapp (et SMSecure) se basent sur le smartphone du contact, alors que Conversation se base sur un compte Jabber/XMPP donc si en plus le compte n’est pas auto-hébergé, c’est chaud de garantir la confidentialité.

  3. Tuxicoman Auteur Article

    WhatsApp passe par Internet et son serveur pour acheminer les messages. L’equivalent, c’est Conversations +serveur XMPP.

    SMSsecure Textsecure utilise le reseau SMS. Il chiffre le contenu mais pas les metadonnées qui sont visibles par les operateurs telecom (comme un mail chiffré avec PGP)

    XMPP ne fait pas que de l’instantané.

  4. Tuxicoman Auteur Article

    Ca depend de quoi tu veux te proteger.
    C’est facile pour l’etat de se brancher sur le serveur de metadonnées de quelques gros operateurs (la preuve en est les boites noires francaises recemment mise en place chez nos gros FAI).

    Si les serveurs sont multiples, ca complexifie bcp sa tache (coût + visibilité).

  5. Gilles

    Je parlais de SMSecure, pas Textsecure ;) qui je crois chiffre de bout en bout les SMS y compris les métadonnées, mais je ne suis pas sûr.
    Et du coup je pensais SMS.
    Les conv. instantanées, faut avoir un ID XMPP, chose moins courante chez mes contacts qu’un numéro de téléphone portable :)
    De toute façon, le fait d’utiliser un SMS pour communiquer amène des métadonnées inchiffrables : antenne utilisée (donc position géographique), opérateur, heure d’envoi.
    Mais c’est mieux que rien.

  6. Bertrand

    Bonjour,

    Je serai curieux d’avoir quelques précisions sur l’utilisation de Prosody, en particulier pour l’envoi d’images via le client Conversations. Je m’étais installé un Prosody il y a peu, mais je n’avais pas trouvé comment gérer les fichiers multimédia. Aurais tu sous le coude une ressource qui explique comment faire? A défaut, te rappelles tu avoir trouvé facilement (auquel cas je chercherai à nouveau)?

    Merci par avance!

  7. Fran6t

    signal est pas mal, il y a les sources a disposition sur github, on passe néanmoins par des serveurs tiers.

  8. Gabriel

    En réponse à Gilles, SMSSecure utilise les SMS au lieu du GCM de Google, et donc il est possible de savoir à qui vous envoyez le message et à quelle heure. Par contre aucun moyen de savoir ce que vous envoyez. L’avantage est que cela fonctionne même sans avoir les données d’activées. Cependant s’il est primordial pour vous que personne ne puisse savoir avec qui vous communiquez alors je pense que Signal ou Conversations seront de meilleurs choix.

  9. Tuxicoman Auteur Article

    @Fran6t : tu peux me trouver un exemple de quelqu’un qui utilise Signal sans utiliser le binaire du PlayStore?

  10. Bertrand

    Je ne me rappelle pas avoir touché à des proxy lors de mon installation; je ne savais pas que c’était de ce côté là qu’il fallait que je cherche (novice inside). Du coup je vais réessayer. Merci de la piste en tout cas!

  11. Bertrand

    Au temps pour moi: j’ai réessayé, et j’avais bien activé les proxy pour l’hôte en question. Il s’avère en fin de compte que c’est l’un des clients (pidgin) qui ne suportait pas la réception des images; entre mobiles ça roule, pourvu que les deux soient connectés. Ton retour m’a permis de voir que j’étais pas trop à côté de la plaque sur mon premier essai, et de creuser du bon côté cette fois! Merci à toi, tant pour ce coup de main que pour ton blog!

  12. Michel

    Et donc finalement : telegram, conversation, smssecure ou autre ?
    Merci

  13. Simon

    Le problème reste toujours de convaincre les utilisateurs « lambda » à faire attention. J’utilise SMSSecure pour ne pas avoir besoin d’activer le 3G en permanence mais si mon correspondant ne l’utilise pas, c’est un SMS classique qui transite. Je n’ose même pas imaginer de proposer à mes potes de s’inscrire sur un serveur XMPP pour me parler… :-D

  14. Ping Avec Silence, chiffrez vos SMS sur Android – Tuxicoman

  15. Anon

    Bonjour,

    Peut-tu s’il te plait détailler comment tu as déployer ton propose serveur XMPP, notament, la partie ou il faut relier le DNS au serveur.

  16. Tuxicoman Auteur Article

    Ajoute les lignes suivantes dans ta zone DNS. Le « . » supplémentaire à la fin du nom de domaine n’est pas une erreur :

    _xmpp-client._tcp 86400 IN SRV 5 0 5222 mondomaine.com.
    _xmpp-server._tcp 86400 IN SRV 5 0 5269 mondomaine.com.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.