Les vulnérabilités dans les mises à jour logicielles
Les fonctionnalités de mise à jour automatique de nombreuses applications logicielles s’avèrent vulnérables aux attaques. Les pirates en prennent bonne note. Et vous devriez aussi.
Beaucoup de débats ont eu lieu cette année sur la manière dont des mises à jour automatiques des logiciels, notamment celles pour télécharger des correctifs de sécurité, peuvent servir de vecteurs potentiels d'attaques. Il s'agit d'une situation fort regrettable car l'une des principales raisons de maintenir un système dans un état de sécurité relatif est de lui fournir les correctifs les plus récents. De plus, lorsque la plupart des utilisateurs, dont probablement la majorité des entreprises, ont besoin de mettre leurs systèmes à jour, ils ont tendance à faire confiance aux mises à jour qui leur sont proposées et à les télécharger sans même vérifier leur authenticité.Penchons-nous sur ce qui est arrivé à la fin du mois dernier aux serveurs utilisés par Red Hat pour diffuser des paquets logiciels à ses utilisateurs. Fin août, Red Hat confirmait que des pirates avaient compromis les serveurs d'infrastructure utilisés par la société ainsi que le projet Fedora. Étaient concernés les serveurs utilisés pour signer les paquets logiciels de Fedora. Et même si Red Hat a déclaré que la phrase de passe utilisée pour sécuriser ses paquets logiciels n'avait pas été volée, l'entreprise a modifié ses clés de signature.
Plus tôt dans l'année, le chercheur en sécurité Francisco Amato d'Infobyte Security Research a publié ISR-evilgrade, un outil utilisé pour démontrer les vulnérabilités liées aux mises à jour automatiques. Parmi les applications affectées figuraient notamment Sun Java, Winzip, Winamp, Mac OS X, OpenOffice, iTunes et la barre d'outils Linkedin. Cependant, pour s'assurer d'un large succès, un pirate doit déclencher une attaque "man-in-the middle" fructueuse. Ce type d'attaque est possible en utilisant une attaque de type DNS spoofing, qui passe par prise de contrôle et empoisonnement, ou tout autre moyen que le pirate peut déployer entre l'utilisateur final et le serveur de mise à jour.
La vulnérabilité par empoisonnement du cache DNS de Dan Kaminsky a révélé combien il était facile de mener une telle attaque, tout simplement en faisant croire aux systèmes et aux personnes qu'elles arrivent bien sur le serveur de leur choix alors qu'en réalité elles arrivent sur un serveur malveillant. Une fois connecté à ce serveur bidon, l'utilisateur n'a plus qu'à télécharger le type de codes malveillants que le pirate souhaite : chevaux de Troie et autres formes de logiciels espions, enregistreurs de frappe au clavier et zombies.
Certains éditeurs de logiciels, peu nombreux, tel que Microsoft, ont pris des mesures pour renforcer la sécurité de leurs mécanismes de mise à jour automatique. Par exemple, Microsoft Windows Update et Microsoft Update semblent bien plus fiables que bien d'autres mécanismes de mise à jour parce que Microsoft atténue les risques en signant ses mises à jour logicielles et en veillant à ce que seulement Microsoft Update puisse installer des programmes binaires de Microsoft.
Malheureusement, concernant la plupart des systèmes de mise à jour automatique de logiciels, pas facile de dire si le correctif est légitime. Si bien que les utilisateurs sont contraints de vérifier les totaux de contrôle MD5 manuellement après avoir téléchargé la mise à jour. En outre, la plupart des éditeurs de logiciels utilisent des serveurs proxy pour simplifier et accélérer la fourniture des logiciels. Aussi, même s'il s'agit d'un moyen pratique, il suffit au pirate d'attaquer l'un des serveurs proxy et d'y placer son propre code malveillant. De plus, il n'existe aucun mécanisme de mise à jour standard utilisé par tous les éditeurs, si bien que les utilisateurs peuvent être victimes de ces types d'attaques, en particulier si l'éditeur de logiciels utilise un protocole non sécurisé.
Face à cette situation, que peuvent faire les utilisateurs et les entreprises ? Sur le long terme, il est certainement souhaitable de mettre la pression sur les éditeurs pour qu'ils sécurisent la fourniture de leurs mises à jour et qu'ils prévoient de signer leurs mises à jour de manière numérique. En attendant, il est préférable de télécharger vos mises à jour manuellement et de vous assurer que les totaux de contrôle des paquets téléchargés correspondent bien aux totaux de contrôle publiés sur le site Web de l'éditeur. La plupart des éditeurs permet de procéder à la mise à jour manuelle des correctifs, même si certains ne facilitent pas cette tâche.
Ensuite, il est conseillé de vérifier quelles applications logicielles exécutées dans votre entreprise sont vulnérables à evilgrade. Il est donc recommandé de désactiver les fonctionnalités de mise à jour automatique de ces applications et d'installer manuellement ces mises à jour sur vos serveurs intermédiaires à des fins de déploiement. Même s'il n'existe pas de solution miracle, ces précautions peuvent s'avérer précieuses, en particulier dans le contexte actuel des attaques lancées contre les fonctionnalités de mise à jour automatique des logiciels.