Superfish, ou comment Lenovo tue la confiance en SSL/TLS

Par SwissTengu @SwissTengu @SwissTengu — 19.02.2015
Lenovo ont fait fort, très fort : en installant une application d'un partenaire commercial, ils viennent de tuer le fonctionnement même de SSL/TLS et de la chaîne de confiance autour de cet écosystème.

Pire que POODLE, Heartbleed et autres failles au niveau des protocoles, on vous présente Superfish.

Superfish, c'est le nom d'une société (Superfish Inc) américaine. Elle fournit, entre autres, une application insérant de la publicité dans vos pages Web, en faisant tourner sur votre machine un serveur, et en forçant les connexions de votre navigateur à passer par lui (un mot : un proxy1).

Là où le bât blesse, c'est que ce proxy insère aussi du contenu dans les connexions chiffrées (vous savez, le petit httpS, avec le cadenas). Or, les connexions sécurisées sont, justement, censée éviter ce genre de comportement.

Comment se fait-il qu'un tiers se trouvant entre vous et, disons, Facebook (ou Twitter, ou votre banque) arrive ainsi à injecter du contenu ? Simple : l'application de Superfish génère des certificats à la volée, déchiffre le contenu, et rechiffre derrière.

Sauf que, normalement, votre navigateur devrait crier : le certificat de votre site n'est pas valide, parce que Superfish n'est pas une autorité de certification reconnue… Et bien, cher lecteur, chère lectrice, grâce à Lenovo, Superfish est considéré comme une autorité de confiance par votre ordinateur !

En effet, Lenovo ont commis une énorme bourde : ils ont installé le certificat de Superfish au cœur de votre système, en lui octroyant, en plus, la confiance maximale ! Du coup, les certificats créés à la volée par le proxy de Superfish sont considérés comme valides.

Mais ce n'est pas tout : pour signer les certificats générés, l'application de Superfish possède la clef. Évidemment. Sans cette clef, le proxy ne pourrait pas signer le certificat généré, et donc il n'y aurait pas moyen d'éviter que votre navigateur ne crie au scandale.
Évidemment, la clef est chiffrée. Mais comme elle est disponible sur quelques milliers de machines2, qu'elle circule déjà sur le Net3, on ne peut pas vraiment dire que ce détail va retenir des hackers de s'y mettre4.
Du coup, n'importe qui peut signer un certificat via l'autorité de Superfish.

Vous voyez où on veut en arriver ? Non ? Bon, reprenons :
vous êtes sur votre site d'achat favori, en SSL/TLS, donc connexion chiffrée. Vous faites vos petites affaires, pensant "c'est bon, je peux donner ma carte bancaire, y a le cadenas". Mais est-ce le bon certificat ? Combien d'entre nous vérifie l'émetteur du certificat ? Combien prennent le temps de réellement vérifier ? Pas des masses.

On ne parlera pas non plus de l'effet avec les mails de phishing5 — à ce niveau, Superfish pourrait être renommé en SuperPhish. Les possibilités sont infinies, à partir du moment où le nombre de cibles potentielles se mesure par le nombre de clients d'un des plus gros distributeurs de matériel informatique.

Et, cette fois, n'importe qui peut vous écouter : de votre voisin, au petit hacker boutonneux. Et sans aucun effort, surtout sur votre réseau local donc la clef WPA est "mon chien s'appelle Fido" voire, plus trivial, votre numéro de téléphone. En quelques manipulations très simples, voire enfantines, on peut faire en sorte que votre trafic passe par une machine sous notre contrôle, possédant les applications nécessaires6, et vos actions sur le Net n'ont plus aucun secret.

Ce qu'a fait Lenovo, c'est juste briser la chaîne de confiance, déjà mise à mal maintes reprises7

En installant de manière globale cette autorité, Lenovo a démontré que les fabricants ne savent pas ce qu'ils font. Qu'on ne peut pas leur faire confiance. Que le système complet des autorités de certification n'est pas fiable : s'il faut, à chaque fois qu'on achète un ordinateur ou, plus généralement, dès qu'on installe quelque chose dessus, s'assurer que le cercle de confiance n'est pas compromis, on n'est pas près de s'en sortir. Personne ne prend la peine de contrôler le keyring système. Plus de 600 autorités diverses, des autorités privées, étatiques, locales… La tâche est impossible. Comment savoir lesquelles sont ne serait-ce qu'utiles ? De là à déterminer nous-même lesquelles sont de confiance…

Mais c'est un autre sujet (tout aussi intéressant cela dit : quelle confiance peut-on avoir dans les autorités de certification ?).

Revenons sur Superfish. Dans le cas où vous avez récemment acheté un ordinateur Lenovo (bien qu'à notre sens il ne faille en aucun cas limiter à cette seule marque), voici les différents points pour vous assurer que vous n'êtes pas compromis par ce certificat vérolé :
  • Exécutez certmgr.msc (Windows+r pour avoir l'invite de commande)
  • Allez dans la partie "Autorités de certification racine"
  • Cherchez "Superfish Inc."

Si vous la trouvez, supprimez-la.

Vous pouvez aussi passer par ce site8 qui vous donnera une indication — mais l'option "vérification manuelle" décrite ci-dessus est la plus sûre.

Il vous faut aussi contrôler dans les logiciels installés que les produits de Superfish Inc sont absents. Histoire d'éviter qu'ils tournent, se mettent à jour ou que d'autres joyeusetés de ce genre n'arrivent.

Cette histoire montre à quel point nous, consommateurs, sommes dépendants des fournisseurs.
Cela montre aussi à quel point les fournisseurs ne peuvent pas avoir notre confiance — or, en sécurité, malheureusement, beaucoup de choses se basent sur la confiance (pour l'utilisateur final).
Nous, consommateurs, n'avons pas les connaissances nécessaires pour repérer les erreurs (volontaires ou non) commises sur des produits qu'on achète.


Commentaires (4)

par SwissTengu — 19.02.2015, 18:57 — PermaLink
Il semblerait que Superfish soit "connu" pour ses agissements : http://www.forbes.com/sites/th...

Vraiment, shootez ce machin ou, mieux, réinstallez vos machines à partir de sources fiables… Ou passez à Linux, le matériel Lenovo est particulièrement compatible :).
par SwissTengu — 20.02.2015, 09:15 — PermaLink
l'EFF a sorti un billet complet pour nettoyer son ordinateur.
par Crigou — 28.02.2015, 17:15 — PermaLink
Quand la justice s'en mêle:
http://www.computerweekly.com/...
par kl4v — 04.03.2015, 23:28 — PermaLink
Lenovo (contraint et forcé?) semble faire amende honorable et promet à l'avenir des Windows propres de tout truc du genre.

De toute façon, les ThinkPads, c'est fait pour faire tourner du Debian dessus. :-P
Ajouter un commentaire