Computrace - Le mouchard universel présent sur les PC, Mac et appareils Android
Et si je vous disais qu’il y a dans votre ordinateur un mouchard que vous ne pouvez pas enlever, qui a été mis en place par le constructeur, qui est sur les listes blanches de la plupart des antivirus et dont vous n’avez jamais entendu parler ?
La société Kaspersky, spécialisée dans la détection et l’élimination de malware a débusqué il y a quelques mois un logiciel installé sur plus de 2 millions d’ordinateurs de par le monde qui est commercialisé par la société Absolute et qui permet OFFICIELLEMENT :
- De sécuriser les données d’un parc de postes à distance
- De déployer toujours à distance des mises à jour, des licences ou de lancer des audits
- De géolocaliser des ordinateurs volés
- De produire des rapports concernant les machines
- De récupérer des fichiers
- D’effacer à distance des documents ou tout le disque dur
Et qui est OFFICIEUSEMENT un trou béant dans la sécurité de votre ordinateur, car il peut être utilisé par un attaquant pour faire ce qu’il veut sur votre PC.
Le plus flippant là dedans, c’est qu’après les révélations de Kaspersky, personne ou presque n’en a parlé dans la presse ou sur les sites spécialisés. Bouuuh !
L’histoire de cette découverte n’est pas banale. La femme d’un des chercheurs de Kaspersky a constaté des plantages et des ralentissements sur son ordinateur. Elle l’a donc confié à son mari qui a commencé à analyser la bestiole, pensant y trouver un virus connu. Il est alors tombé sur des dll et des processus appartenant au logiciel Absolute Computrace.
Jusque là, rien de vraiment anormal puisque Absolute Computrace et son équivalent grand public LoJack sont vendus à des tas de sociétés pour que les administrateurs puissent suivre à la trace les machines, lancer des audits, faire des mises à jour…etc., le tout à distance.
Seulement, l’employeur de la dame n’avait jamais entendu parler de ce logiciel. Les chercheurs de Kaspersky ont alors commencé à regarder autour d’eux et se sont rendu compte qu’il y avait exactement le même logiciel installé sur leurs ordinateurs du boulot et leurs ordinateurs personnels.
Angoisse !
Ils ont alors mené une enquête plus approfondie et voici ce qu’ils ont découvert. Computrace se divise en 3 modules présents dans l’option ROM PCI qui est chargée ensuite par le BIOS de la machine.
- Computrace Loader Module : Module de chargement lu par le BIOS et capable d’appeler le module d’installation.
- Agent Installation Module : Module qui installe l’agent sur Windows.
- Agent : L’agent en lui-même qui est ensuite présent et fonctionnel sous Windows.
Cette “option” Computrace est normalement visible dans le BIOS des machines et est mise en place par le fabricant de l’ordinateur. Absolute est fière de compter parmi ses clients des constructeurs comme Acer, Apple, ASUS, Dell, Fujitsu, Gateway, HP, Lenovo, Microsoft, Panasonic, Samsung, Sony et Toshiba. Ah oui, j’oubliais… Même si Kaspersky ne s’est penché que sur la version PC Windows, Computrace / LoJack existe aussi en version smartphone / tablette (Android) et Mac OSX.
Edit: Il semble que cette dernière phrase n’ait pas été comprise par tous. Je vais tenter de mieux l’expliquer. L’agent Computrace est un logiciel qui peut s’installer volontairement. Cet agent est dispo sous Linux, Windows, Android et MacOSX. Seulement pour le moment et jusqu’à preuve du contraire, seuls certains PC Windows sont équipés d’un Computrace par défaut logé dans le bios et capable de déployer son agent sous Windows. Pour MacOSX ça ne semble pas être le cas. En tout cas, personne n’a encore creusé dans cette direction. Et pour Android, aucune preuve n’a été apportée non plus, même si certains téléphones et tablettes sont marqués par Absolute (voir liste ci-dessous) comme équipé d’un Computrace. Bref, pour les PC Windows on est sûr car Kaspersky a bien analysé tout le bordel mais pour OSX et Android, c’est non-prouvé.
En ce qui concerne Computrace sur PC, il est normalement désactivable dans le BIOS mais pas dans tous, puisque certains des ordinateurs analysés par Kaspersky n’avaient même pas cette option visible dans le BIOS et contenaient pourtant l’agent Computrace.
L’intérêt d’une telle présence dans le BIOS de la machine, c’est la persistance du programme. Que vous réinstalliez, formatez ou changiez de disque dur, le tracker sera toujours présent. N’espérez pas pouvoir l’effacer en mettant à jour votre BIOS. Non, car il est présent dans une partie non modifiable et si vous flashez votre BIOS avec un nouveau firmware, il ne sera pas dégagé.
Dès l’initialisation du BIOS, le module Computrace scanne les partitions FAT/FAT32/NTFS de la machine à la recherche du répertoire Windows**. Il fait une copie de sauvegarde du logiciel autochk.exe et le remplace par sa propre version modifiée.**
Autochk.exe ayant un accès complet aux fichiers et à la base de registre de Windows, cela permet à Computrace d’installer son agent rpcnetp.exe dans le répertoire System32 puis de l’enregistrer comme un service à lancer automatiquement à chaque démarrage.
Une fois que c’est fait, il restaure la sauvegarde de autochk.exe.
Rpcnetp.exe enregistre alors sa DLL rcpnetp.dll et l’injecte en mémoire. Un processus masqué utilisant iexplore.exe (Internet Explorer) est alors lancé et permet de communiquer avec le serveur de gestion de Computrace via des URL classiques (avec des POST et des GET). Passer par Internet Explorer permet d’utiliser les mêmes proxys et la même config que ceux de l’internaute. Des données sont envoyées et reçues entre cet agent et les serveurs d’Absolute, ce qui peut provoquer des ralentissements sur la machine.
Ce module télécharge alors un autre agent baptisé rpcnet.exe qui est un peu plus gros, mais qui se comporte sensiblement de la même manière que rpcnetp.exe. Il s’immisce dans le système et d’après Kaspersky, permet de donner un accès distant et complet à la machine sur laquelle il tourne. En gros, il s’agit d’un logiciel de tracking et de prise de contrôle à distance.
Computrace utilise les mêmes techniques de filou que les logiciels malveillants et cherche délibérément à se cacher de l’utilisateur. La raison est d’éviter qu’un voleur de portable le remarque, et puisse masquer sa localisation ou bloquer Computrace.
Computrace marque aussi avec un ID unique la machine, ce qui permet de l’identifier de manière sûre.
En analysant les trames réseau échangées entre les agents et le serveur de gestion, Kaspersky a remarqué qu’il était possible à n’importe qui d’injecter à distance n’importe quel code afin de l’exécuter sur la machine. Le protocole utilisé n’étant pas chiffré, n’exigeant pas d’authentification de la part du serveur gestionnaire et les serveurs appelés l’étant via de simples URL, il est possible de faire croire à l’agent Computrace qu’il discute avec son serveur de gestion alors qu’il s’agit d’un attaquant qui a détourné quelques DNS. L’attaquant peut alors lancer du code sur la machine, accéder aux fichiers, récupérer les trames réseau..etc.
Potentiellement, tous les ordinateurs infectés par Computrace sont des botnets en puissance. Kaspersky a aussi remarqué à plusieurs reprises que Computrace s’activait immédiatement sur des PC neufs.
Kaspersky a aussi contacté la société Absolute et leur a fourni des numéros de série de matériels qui contenaient l’agent Computrace. Absolute n’a aucune trace de ces appareils dans sa base de données. Cela signifie que Computrace a été activé sur ces machines par un autre canal que celui “officiel” d’Absolute. Jusqu’à aujourd’hui, ça reste un mystère.
D’après les sondes de Kaspersky, voici la répartition dans le monde des ordinateurs équipés de Computrace / LoJack.
Au total, ce sont plus de 2 millions de postes qui seraient infectés par Computrace. Tous les constructeurs seraient touchés, ce qui est logique puisqu’ils sont partenaires d’Absolute. Ces chiffres sont bien sûr réduits puisqu’ils sont été remonté uniquement par les postes où les logiciels de Kaspersky sont installés.
Seul Toshiba a reconnu avoir pré-installé Computrace sur ses machines. Les autres ne se sont pas exprimés sur le sujet.
Le problème avec Computrace, c’est qu’il n’est pas reconnu comme un logiciel malveillant par la plupart des antivirus. Il l’a été pendant un moment, notamment par Microsoft qui l’a nommé Win32/BeeInject, mais a ensuite été retiré des listes de détection.
En effet, comme il s’agit d’un logiciel légitime de tracking et prise de contrôle à distance qui est vendu par une société reconnue et qu’il est présent sur un grand nombre de machines, il figure sur la plupart des listes blanches.
On n’en connait pas les raisons, mais les constructeurs l’ont mis en place sur leurs ordinateurs progressivement depuis 2005 sans avertir leurs clients. Et Computrace étant vulnérable à tout un tas d’attaques et de détournements, il s’agit là d’une véritable backdoor affaiblissant les ordinateurs sur lesquels il se trouve.
Cela soulève tout un tas de questions, parmi lesquelles :
- Pourquoi des PCs neuf se retrouvent avec Computrace activé d’office ? (et masqué dans certains BIOS)
- Pourquoi Absolute n’a aucune connaissance de certains appareils dont l’agent Computrace est actif ?
- Computrace est-il utilisé par des organismes gouvernementaux à l’insu d’Absolute, pour accéder à nos machines quand bon leur semble ? (Comprenez : La NSA a-t-elle quelque chose à voir là-dedans ?)
Pour cette dernière question, vu tout ce qu’on a appris durant cette année sur la surveillance globale (merci, Snowden), y compris durant l’affaire Heartbleed, on est en droit de penser que oui.
Alors, maintenant que faire ?
Tout d’abord, si votre ordinateur fait partie de cette liste, vous êtes susceptible d’être l’heureux propriétaire d’un agent Computrace (Edit : Ce n’est pas systématique. Il s’agit là du matos compatible avec Computrace). Félicitations !
Mais alors ? Comment s’en débarrasser ?
Et bien malheureusement, il n’y a pas de solution miracle. Le plus sain est de changer de carte mère avec si possible un BIOS libre non signé comme Coreboot. Autrement, une autre solution qui ne dégage pas Computrace, mais qui permet de bloquer les connexions de l’agent, c’est d’entrer les URL ci-dessus dans votre fichier Hosts en les faisant pointer vers votre adresse localhost (127.0.0.1).
Autrement, je n’ai pas de solution pour le moment, mais si vous avez d’autres infos, je suis preneur.
L’avenir est sombre avec ce genre de choses surtout qu’Absolute n’est pas le seul sur ce marché. Des technologies similaires existent sous le nom de FailSafe dans les BIOS de Phoenix Technologies (en mode SMM avec tous les privilèges) et sous le nom de VPro sur les puces Intel.
Elles fonctionnent de manière totalement indépendante, sont persistantes, peu importe l’OS présent sur la machine et surtout elles sont capables d’exploiter le matos directement (carte WiFi, GPS…etc.). Le pire là-dedans, c’est que même si votre ordinateur est éteint, ça peut fonctionner. Vous ne me croyez pas ? Allez lire la doc d’Intel.
Il est scandaleux que les constructeurs intègrent ce genre de choses dans leurs ordinateurs surtout sans en informer leurs clients et pour le moment, on ne connait pas encore l’étendue des dégâts. Mis à part les PC, Computrace est aussi présent sur les appareils mobiles et les Mac, donc j’imagine le pire. Malheureusement, aucune étude sur Android ou iOs n’a été réalisée à ce jour pour savoir si Computrace y était implanté par défaut comme c’est le cas sur les PC.
Même chose avec Linux même si on sait que l’agent est dispo sous Linux et tourne sur RedHat 6, Ubuntu 10, Mint 9, openSuse 11, CentOS 5, Fedora 13 et Debian 5. On ne sait pas, par contre si le module présent dans le BIOS est capable de détecter la présence d’un Linux et d’installer le binaire équivalent à rpcnet.exe qui va bien.
Computrace travaille-t-il avec des agences de renseignement et des gouvernements ? Des attaques exploitant Computrace ont-elles déjà eu lieu ? Impossible à savoir pour le moment.
La seule réponse possible pour le moment, face à ce genre de chose est d’aller gueuler dans les oreilles de votre constructeur et d’opter pour du matériel libre. Mais malheureusement, cela doit représenter 0,0001% du parc de machines, tous types confondus et c’est encore très difficile à trouver pour les utilisateurs lambda. Il est aussi probable qu’installer Linux bloque le fonctionnement de Computrace même si celui-ci est présent dans le BIOS mais ce n’est qu’une supposition.
Sources :
- http://corelabs.coresecurity.com/index.php?module=Wiki&action=view&type=publication&name=Deactivate_the_Rootkit
- http://www.absolute.com/en/partners/bios-compatibility
- http://www.absolute.com/en/resources/whitepapers/absolute-persistence-technology
- https://www.google.com/patents/US20060272020
- http://en.wikipedia.org/wiki/LoJack
- http://www.securelist.com/ru/analysis/208050831/Ugroza_iz_BIOS
Merci au gentil lecteur qui m’a informé de ce scandale.
Entièrement dédiée à la cybersécurité, l'école Guardia est accessible soit directement après le bac (post-bac), soit après un bac+2 ou bac+3. En rejoignant l'école Guardia, vous deviendrez développeur informatique option cybersécurité (Bac+3) ou expert en cybersécurité (Bac+5).