Faille « zero day » ou contrôle degré zéro ?

Jacques Baudron    mars 2021

De nouveau, les attaques font parler d’elles : Microsoft Exchange, SolarWinds. Le point d’entrée le plus commun est constitué par une voire plusieurs failles dites « Zero day ».

Zero day

Les failles « Zero day » sont des erreurs logicielles non détectées par le développeur mais repérées par un tiers qui tait l’information. « Zero day » est le délai dont disposent les développeurs pour déployer une parade après exploitation de la faille, l’outil d’exploitation de ladite faille s’appelant sans surprise … « l’exploit ».

Le marché des exploits est particulièrement actifs : de superficielles recherches sur le darkweb laissent supposer qu’un exploit zero day se négocie dans une fourchette allant de 2.500 € à 250.000 $. Les services de protection gouvernementaux ne sont pas les derniers à se fournir en exploits pour leur propre consommation, voire à les produire eux-mêmes.

Wannacry

La NSA par exemple a repéré et récupéré des failles ignorées de Microsoft dans « SMB », protocole Windows d’échange entre différents nœuds d’un réseau. L’« exploit » mis au point par la NSA répond au doux nom d’« EternalBlue ». Il permet à l’attaquant de prendre le contrôle d’une machine à distance.

En 2017, la NSA s’est résolu à prévenir Microsoft de la faille dans SMB. Non pas par raison bienveillance ou éthique : EternalBlue avait été dérobé par un groupe pirate, « The Shadow Brokers ». Microsoft sort alors à la mi-mars 2017 un correctif pour les versions de 2006 à 2012. Après quelques péripéties où se mêlent mise à l’enchère infructueuse et diffusion partielle les outils sont librement accessibles sur le web plus ou moins dark. Mi-mai, bing (je ne pouvais pas choisir une autre onomatopée s’agissant de Microsoft) le ransomware Wannacry se diffuse grâce à EternalBlue. Microsoft étend alors ses correctifs jusqu’à XP (2001).

Je vous l’exprime autrement : dix-sept ans de procédure qualité n’ont pas permis à Microsoft de déceler une faille pourtant détectable puisque détectée sans délai par la NSA.

Microsoft Exchange

Si Wannacry se nourrit de rançons, de nombreux groupes exploitent les failles zero day de Microsoft Exchange qui permettent par exemple l’exécution de programmes (webshell) pour prendre la main sur une machine ou de voler les informations circulant sur le réseau. Le but premier est alors l’espionnage dans le milieu professionnel. On peut estimer à une trentaine de milliers de d’organisations gouvernementales ou entreprises atteintes pour le seul territoire des États-Unis. Pour la France, ce serait quinze mille serveurs sous menace. Bien entendu les comptes ne sont pas arrêtés.

Point commun avec la faille zero day de Wannacry : la faille remonte aux versions sorties 2013, soit un passage entre les gouttes des procédures qualité pendant huit ans. Comme quoi une faille peut résister à plusieurs années de contrôle d’une entreprise de la taille de Microsoft mais pas à une équipe de pirate.

SolarWinds

L’origine réside une fois de plus dans une faille zero day pour déployer la porte dérobée Supernova qui permet d’obtenir des droits sans avoir à s’authentifier sur les modules Orion de SolarWinds. Pour être complet, il faut préciser que c’est l’origine d’une des plus vastes opérations de cyber espionnage car les modules de SolarWinds sont diffusés auprès de trente trois mille professionnels pour la gestion centralisée des infrastructures informatiques et des réseaux.

L’affaire donne lieu à des ramifications. Microsoft a ainsi pu voir apparaitre une autre faille zero day dans Defender AV, un anti-virus. La faille autorise des acteurs externes à exécuter leur code à distance.

Zero day

« Notre objectif est avant tout la protection de nos clients et c’est pour cela que nous avons rapidement proposé des mises à jours de notre logiciel » précise Microsoft.

Très bien ! Mais ne serait-il pas préférable de réaliser un test de sortie des produits avant mise en production ?

L’affirmation selon laquelle « il reste toujours des bugs dans un logiciel » ne tient pas lorsque les dits bugs sont vus par des hackers tiers. Je crains que ça ne relève d’une philosophie non formalisée qui veut que les tests soient réalisés par le client et pris en compte dans des mises à jour.

Un responsable qualité devisait : « J’ai commencé avec la mécanique et alors la sanction est immédiate : si ça ne passe pas on refait. Puis dans l’électronique, quand ça ne marche pas un condensateur judicieusement placé gomme le problème. Avec l’informatique, c’est différent : il est normal que ça ne marche pas. On fera un patch ». Le problème est qu’il semble dans le vrai.

Peut-on continuer à traiter avec désinvolture les hôpitaux ou les réseaux ferrés pour qui une mise à jour d’applications critiques portant sur des milliers de terminaux est une épreuve hors de prix ?

Ne serait-il pas temps d’exiger des éditeurs de logiciels un minimum de comportement responsable en testant leurs produits comme tout industriel le fait ?

Quand vous entendrez “faille zero day”, n’oubliez pas de traduire par “contrôle efficacité zéro”.

Jacques Baudron    Secrétaire Forum ATENA    jacques.baudron@ixtel.fr    mars 2021