Archives par mot-clé : informatique

L’anorak à mon pote

C’était il y a bien longtemps, lorsque je pouvais encore escalader des montagnes skis et peaux de phoque aux pieds, en compagnie d’amis enthousiastes. L’un de ceux-ci, en compagnie duquel j’ai vécu bien des aventures palpitantes et heureuses sur les sommets, possédait un anorak tout à fait remarquable. Il avait dû l’acquérir à l’époque de son adolescence, et le portait encore la quarantaine passée. Il avait été rouge à l’origine (du moins on le suppose), mais les rayons ultraviolets lui avaient conféré une teinte délavée tendant vers l’indéfinissable. Et surtout, il avait été maintes fois reprisé, raccommodé, réparé, rafistolé et recousu, si bien qu’il n’y avait plus guère de tissu d’origine sur cette vénérable pièce vestimentaire; mais mon pote tenait fermement à cet anorak, et je suppose que s’en séparer dut constituer pour mon ami un déchirement traumatisant. Lui seul pourrait décrire le drame qu’il a vraisemblablement vécu le jour où il n’a plus trouvé personne pour repriser la déchirure du raccommodage d’il y a trois ans, lui-même consécutif à une couture réparatrice antérieure ayant subitement lâché.

Je repense très souvent à « l’anorak à mon pote« . En fait, j’y repense chaque fois que j’utilise du matériel informatique ou téléinformatique, c’est-à-dire plusieurs fois par jour. En effet, les logiciels qui forment l’infrastructure de base de notre société numérique sont très semblables à l’anorak en question, et probablement nettement plus décrépits. Permettez moi de m’expliquer brièvement :

La transmission d’informations est basée sur le protocole IP (Internet Protocol) dont les prémisses datent de 1972, et la première version publiée (la version 4) de 1981. Dans le courant des années 1990 fut définie la version 6 (IPv6), mais actuellement encore les deux versions coexistent, et ce sont les anciennes adresses qui sont le plus utilisées. Chose intéressante, IP fut défini à l’origine pour le transfert asynchrone de paquets de données entre ordinateurs, mais est actuellement très largement utilisé pour la transmission de données synchrones comme la voix ou le streaming de vidéos; ceci n’est possible qu’en surdimensionnant largement le réseau de transmission pour minimiser les différences de temps de propagation entre les divers paquets, et en introduisant des mécanismes de compensation des écarts de temps de propagation à la réception de l’information. Certaines applications maîtrisant plus ou moins bien la compensation des distorsions de propagation se caractérisent parfois par un parasitage excessif des conversations téléphoniques, comme What’s App par exemple, lorsque le débit est plutôt faible. C’est un peu comme si « l’anorak à mon pote » était utilisé comme robe de soirée; mais je ne crois pas que mon ami ait été aussi loin dans l’utilisation de son cher vêtement.

Windows (les versions que nous connaissons actuellement) est basé sur Windows NT, qui est lui-même une évolution de VMS de Digital Equipment Corporation, soit des racines architecturales qui remontent à 1977 ! Combien de corrections, de réécritures partielles de morceaux de code, d’ajouts de fonctionnalités et de corrections de bugs (pardon, de « software updates ») ont elles été nécessaires pour en arriver à l’actuel Windows 11 ? Mac OS de son côté est basé sur UNIX BSD (1977) et sur NeXTSTEP (1989, lui-même dérivé de UNIX BSD). Là aussi, on ne compte plus les corrections, adaptations, mises à niveau nécessaires pour conserver à des systèmes vieux de plus de 40 ans un minimum de crédibilité. Et ce n’est pas LINUX, un avatar de Minix, lui-même une version amaigrie (micro-noyau) de UNIX, qui va briller par ses caractéristiques novatrices.

A l’heure des rançongiciels, comment est-il possible que ces systèmes d’exploitation réputés modernes soient incapables de détecter et d’interrompre un programme en train d’encrypter quelques térabytes de données, mais en revanche vous demandent vingt fois si vous êtes sûr de vouloir effacer le fichier tmp12324.tmp ? C’est parce que les rançongiciels n’avaient pas été prévus dans les années 1970, et ajouter cette fonctionnalité demande des modifications structurelles importantes. La notion de fichier date également des années 1970, et on n’a jamais cherché à la remplacer par quelque chose de plus utile, qui permette par exemple aisément de retrouver un contenu alors qu’on a oublié sa localisation physique. Alors, pourquoi ne pas écrire un nouveau système d’exploitation, à l’instar de mon pote qui a dû se résoudre à acheter un nouvel anorak à l’époque ? La réponse est évidente : ça coûte cher et cela ne rapporte pas grand-chose; jusqu’au jour où il y aura un gros, gros souci, comme ce que j’avais évoqué dans mon élucubration Exploit, ou comme ce qu’ont imaginé Philippe Monnin et Solange Ghernaouti dans leur roman « OFF« .

En attendant, c’est vrai que l’explorateur de fichiers ouvert sur mon écran dont le fond représente le Bryce Canyon enneigé au lever du soleil a de la gueule. « L’anorak à mon pote » ne peut pas rivaliser du point de vue esthétique, je crains. Mais du point de vue raccommodages et bidouillages, même tout à la fin de son existence, il était moins décrépit que nos systèmes informatiques. Beaucoup moins. Enfin bon, puisque vous lisez ceci, c’est que cela marche encore. Comme « l’anorak à mon pote » à l’époque…

Exploit

Un exploit est, dans le domaine de la sécurité informatique, un élément de programme permettant à un individu ou à un logiciel malveillant d’exploiter une faille de sécurité dans un système informatique. (Wikipédia)

Natalya Anissimova s’assit sur son banc préféré, à la pointe de l’île Vassilievski, pour contempler la Neva et sa ville natale de Saint-Petersburg. En cette soirée de fin juin, le soleil n’était pas encore couché, bien qu’il fût largement passé vingt-deux heures, et les rayons de lumière orangée éclairaient le palais d’hiver et le musée de l’Hermitage d’une lumière magique.

Hermitage et la Neva, de l’île Vassilievski

Les « orgues de Poutine », jeux d’eau parfaitement mis en valeur dans la lumière rasante, dansaient leur ballet quotidien.

Les « orgues de Poutine »

Elle venait très souvent le soir à cet endroit, après les journées chargées (dix à douze heures par jour parfois) auxquelles elle s’était habituée. Mais ce soir, elle n’était pas vraiment d’humeur à goûter la douceur de la soirée; les évènements récents tendaient à remettre en question tout ce pourquoi elle s’était investie depuis le début de sa carrière professionnelle.

Après des études brillantes à Saint-Petersburg, elle avait pu, grâce à ses résultats exceptionnels, trouver une bourse pour faire un doctorat aux Etats-Unis, au M.I.T. Sa thèse, « Methods for algorithmic determination of security flaws in a computer program » avait eu un gros retentissement, et la défense de son travail avait attiré quelques éminentes personnalités des GAFAM et même du gouvernement des Etats-Unis, intéressés au plus haut point par un algorithme qui pourrait traquer les failles dans un programme. Suite à cette présentation, on lui avait proposé un poste de cheffe de projet à Mountain View (CA), chez Google, où elle avait contribué au développement du système d’exploitation Android, spécialement dans le domaine de la sécurité. Quelques années plus tard, lorsque son employeur avait décidé de faire du logiciel IntelliJ IDEA la base de développement des programmes pour Android (Android Studio), elle avait saisi l’opportunité offerte pour revenir à Saint-Pétersbourg , la société JetBrains, conceptrice du logiciel en question, étant sise dans sa ville natale où elle avait gardé ses racines et ses amis. Elle avait d’abord joué un rôle de coordinatrice entre les équipes de développement de Google et celles de JetBrains pour le développement des modules spécifiques à Android, puis avait rapidement su se rendre incontournable, et ses connaissances très exhaustives en cybersécurité l’avaient vite fait connaître dans les conférences du monde entier.

A trente-quatre ans, elle avait décidé, avec quelques collègues, de créer sa propre entreprise. L’un des produits phares qu’elle souhaitait réaliser était la matérialisation de sa thèse de doctorat, sur laquelle elle n’avait jamais cessé de plancher. A sa durable surprise, elle n’eut pas trop de peine à trouver des investisseurs, bien au-delà de ses besoins estimés. Les investissements provenaient de diverses sources, principalement de banques et assurances, mais sur le moment, elle n’avait pas trop prêté attention aux motivations des investisseurs, toute à la joie de voir son projet démarrer avec tant de promesses. L’une des premières réalisations de la jeune entreprise fut justement le produit « Dark Sun », une suite d’outils informatiques constituant une précieuse aide à la détermination d’éventuelles failles de sécurité d’une application et permettant d’en caractériser l’importance et le domaine applicatif. Ce logiciel assit durablement la réputation d’excellence de Natalya et de sa société auprès des spécialistes internationaux de la sécurité, bien qu’il fût encore loin d’automatiser complètement le processus de localisation de failles informatiques.

Elle se retrouvait maintenant à la tête d’une société bénéficiaire composée d’une équipe de cinquante experts en cybersécurité, avec des contrats signés pour les trois prochaines années. Natalya avait tout réussi jusqu’ici, sans que sa vie n’eût été facile pour autant : le travail abattu était en proportion des résultats obtenus.

Il y a quelque mois, elle avait décroché deux mandats très intéressants, aussi bien financièrement que techniquement.

Le premier mandant était l’Union Européenne (en tous cas, le chef de projet se réclamait de cette autorité avec toutes les identifications nécessaires) qui voulait faire vérifier un programme pour smartphone à l’aide de la suite logicielle Dark Sun. Il s’agissait rien moins que de la nouvelle version du certificat COVID, qui avait dû être profondément modifié suite à l’apparition du variant mu contre lequel les vaccins les plus efficaces, basés sur la technologie ARN-messager, éprouvaient de sérieuses difficultés. Divers pays hors UE (le Royaume-Uni, la Norvège, la Suisse) allaient également adopter ce logiciel, ce qui faisait pas mal d’argent lorsque l’on tarifie ses services en proportion du nombre de licences installées ! Le genre de mandat que l’on ne peut pas refuser, en ayant de plus l’impression de faire une bonne action en permettant d’améliorer la qualité d’un logiciel appelé à une large distribution.

Le deuxième mandant se réclamait d’un gouvernement d’un pays du Moyen-Orient, qui désirait trouver un moyen d’inoculer un virus informatique (un spyware) dans des smartphones. L’objectif annoncé était de lutter contre la grande criminalité et contre le terrorisme en contrôlant les communications des suspects. L’équipe de Natalya était un peu dubitative vis-à-vis de ce mandat, mais il était très bien payé, et le mandant semblait tout à fait « clean », après les réserves que l’on peut mettre ou non sur les mandats d’états…

Natalya et son équipe avaient parfaitement exécuté les deux mandats, et délivré des résultats très positifs en un temps record. Le rapport de Natalya concernant le mandat de l’Union Européenne mettait en évidence l’existence de plus de cent failles logicielles, pour la plupart bénignes, sauf deux d’entre elles qualifiées de graves, et assorties de la mention « A corriger impérativement avant toute publication ». C’est trois semaines après la remise de ce rapport que le nouveau certificat COVID fut distribué dans les pays de l’UE et les pays associés. Natalya n’eut pas connaissance de la nature des correctifs apportés, si tant est qu’il y en eût (et la suite de l’affaire montra que l’objectif poursuivi par le mandant était de découvrir les failles en vue de les exploiter, non de les corriger).

Deux semaines plus tard, ce fut le chaos dans ces pays, bien que d’autres pussent être marginalement concernés. De fait, en raison de l’interconnexion des moyens de communication, on ressentit les effets de la catastrophe même à Saint-Petersbourg, mais les effets les plus délétères purent être maîtrisés à temps. En Europe, des hôpitaux et des administrations virent toutes leurs données anéanties; les moyens de communication (physiques et médias) furent dans une très large mesure rendus inopérants, l’approvisionnement en énergie fut coupé dans de très larges secteurs, le trafic de paiement devint inopérant, les soutiens logistiques, privés de toute référence, ne parvinrent plus à livrer aux détaillants des marchandises qui n’arrivaient même plus chez le grossiste. Ces difficultés allèrent en augmentant dans les jours qui suivirent, les difficultés de communiquer rendant les actions concertées difficiles. Cette action d’envergure continentale fut revendiquée par un groupe terroriste jusqu’alors inconnu, qui se baptisait « Jannah » (le paradis des croyants) et qui semblait disposer de moyens financiers quasi illimités. Les ressources de communication détruites ne permettaient pas aux enquêteurs de fonctionner normalement, et pour l’instant, il fallait se borner à essayer de venir en aide aux plus nécessiteux, lorsqu’on parvenait à les identifier et à les localiser.

Après coup, Natalya et son team avaient analysé le modus operandi du virus informatique; un virus du type « rançongiciel ou ransomware » (rendant les données de l’utilisateur inexploitables, mais sans demande de rançon associée) avait été inoculé aux smartphones via une faille du certificat COVID de l’UE. Le virus était à action différée : il exploitait une faille de type zero-day (découverte par l’équipe de Natalya, justement, et catégorisée comme grave) pour s’installer et s’activer ; ensuite, dans un premier temps, il se comportait comme un spyware qui « apprenait » les ressources disponibles, les mots de passe et les identifications biométriques de l’utilisateur. A l’heure H, au jour J, il encryptait, renommait ou détruisait les ressources ainsi découvertes. L’action différée lui permettait de ne pas être détecté avant d’être diffusé très largement, vu l’installation quasi obligatoire du logiciel en Europe. De fait, de nombreux responsables de services informatiques (du moins, ceux qui utilisaient le même smartphone pour leur activité professionnelle que dans le privé), avec des responsabilités très conséquentes et des droits d’accès étendus à des ressources vitales avaient été infectés, ce qui avait rendu les effets du rançongiciel extrêmement délétères en anéantissant des ressources informatiques à très haut niveau, dans des bases de données d’importance capitale, accessibles sur les clouds. Et c’était indubitablement Natalya et son équipe qui avaient rendu l’exploit possible en découvrant la faille, alors que leur travail était en principe consacré à l’amélioration de la sécurité informatique ! L’injection du virus dans le smartphone avait également été accomplie grâce aux indications de son équipe. Le fait qu’elle eût été trompée à chaque fois par le mandant (sur son identité, certainement, et sur ses motivations) n’était qu’une faible consolation pour Natalya. Elle se sentait responsable de nombreux morts, d’un dramatique effondrement économique qui allait dans le proche futur entraîner plus de morts encore, et d’une mobilisation armée qui allait elle aussi faire de nombreuses victimes.

Il était à prévoir qu’elle recevrait bientôt la visite du FSB (Service fédéral de sécurité de la fédération de Russie, successeur du KGB); elle avait à cet effet devancé les enquêteurs en signalant une possible responsabilité de sa société dans cette affaire, tout en assurant l’autorité de sa pleine collaboration dans la recherche des vrais coupables. Elle s’attendait à se retrouver devant des auditoires peu agréables ces prochains jours, et son futur emploi du temps paraissait rien moins que compromis. Mais c’est surtout la ruine de son œuvre et des illusions qu’elle avait entretenues sur le rôle qu’elle pensait jouer dans la société qui la désespérait, pour ne rien dire des remords qu’elle ressentait à la lecture des bilans encore très incomplets qui fuitaient d’une région économiquement dévastée.

C’est pourquoi ce soir-là, la beauté de la Neva au soleil couchant ne parvenait guère à dérider Natalya.

Natalya n’existe pas vraiment; ou plutôt, il doit exister nombre de spécialistes en Russie ou dans les pays baltes (ces nouveaux paradis de l’informatique) qui pourraient se reconnaître dans le parcours de Natalya. Et on n’a pas encore, à ma connaissance, inventé d’algorithme capable de déterminer des failles de sécurité dans un programme informatique (et si on en inventait un, je ne pense pas que je serais le premier averti !). Et a fortiori, de catégoriser et de qualifier ces failles. Mais certaines sociétés (comme l’israélienne NSO Group, éditeur du logiciel espion Pegasus ) se sont fait une spécialité de l’exploitation de vulnérabilités zero-day (des failles pas encore documentées). S’ils n’ont pas développé un logiciel permettant la découverte de ces failles, ils ont à tout le moins développé une certaine expertise dans ce domaine, ainsi que dans celui d’exploiter les failles découvertes dans le but de lancer des logiciels espion. Et à l’heure de rédiger ces lignes, je n’ai pas connaissance de variant mu de SARS-Cov-2. Mais je ne suis pas pressé d’acquérir cette connaissance, encore que la réticence de certains à se faire vacciner puisse avoir une telle conséquence.

Une telle attaque, avec des effets aussi délétères que ceux décrits ici, est actuellement techniquement possible, encore qu’il semble difficile de réunir les compétences techniques, l’argent et les opportunités pour réaliser une action d’une telle envergure et d’une portée aussi vaste. Mais un état suffisamment puissant pourrait sans doute envisager la chose; je ne suis d’ailleurs pas persuadé d’être le premier à y songer. Ou plutôt, pour m’exprimer autrement, je me demande quel département de la sécurité de quel état n’y a pas encore songé. On m’a bien parlé d’un pays où le/la ministre de la défense continue à utiliser son smartphone privé pour communiquer à son état-major le choix du prochain avion de chasse américain qu’ils vont acheter pour répondre à toutes les menaces étrangères. Mais c’est probablement de la science-fiction.