Un pilote lié au noyau Linux, datant de juin 2009, a été corrigé il y a quelques jours, révélait hier un chercheur en sécurité. Il ouvrait la voie à une double libération d'un même emplacement mémoire, permettant d'injecter du code arbitraire sans besoin de droits élevés.

Les failles se suivent et se ressemblent un peu. Le chercheur Alexander Popov de Positive Technologies a communiqué à kernel.org, le 28 février, un correctif pour une vulnérabilité dans un pilote du noyau Linux, datant de juin 2009. Considérée comme « dangereuse », elle permet une élévation locale de privilèges via le pilote N_HLDC. Ce dernier gère la séparation de trames réseaux, avec correction d'erreurs. Concrètement, une corruption de mémoire est possible par une double libération (« Double Free »), qui libère deux fois le même emplacement de la mémoire.

Il est donc possible d'injecter du code arbitraire, avec les privilèges de l'utilisateur identifié. Un déni de service est aussi envisageable. « Pour charger automatiquement le module concerné, un attaquant n'a besoin que des droits d'un utilisateur standard, et l'exploitation ne nécessite pas de matériel spécifique » note Popov. S'il s'adresse bien à un matériel particulier, le fait d'en appeler une fonction le charge.

Le correctif a été publié le 7 mars, il faudra donc le temps que les différents systèmes touchés se l'approprient et qu'il soit déployé. La vulnérabilité, ancienne, affecte de nombreuses distributions. Elle ne touche par exemple pas Red Hat Entreprise 5, mais bien les versions 6, 7 et MRG 2. En attendant de déployer une mise à jour du pilote, le module peut être bloqué manuellement par les administrateurs qui le souhaitent.

À aucun moment une éventuelle exploitation concrète ne semble avoir été détectée. Cette faille ancienne en rappelle tout de même une autre, vieille de neuf ans, qui avait bien été utilisée. Elle permettait d'écrire dans des emplacements de la mémoire habituellement en lecture seule. Au moment de sa publication en octobre dernier, elle était tout de même déjà corrigée. À la mi-février, c'était une vulnérabilité vieille de 11 ans qui disait ses adieux au noyau Linux, avec une exploitation semble-t-il assez proche de celle corrigée il y a quelques jours.