Sécurité de l'OpenSource

Il y a peu, une faille de sécurité jugée importante, touchant l'ensemble des versions d'OpenSSL disponibles depuis la 0.9.8c-1, soit septembre 2006, a été divulguée. Cette actualité relance les débats autours de la sécurité des logiciels OpenSource.
Si l'ouverture du code à la communauté permet sa relecture par un grand nombre d'individus, la quantité de relecteurs peut varier en fonction de la notoriété du projet. Il faut en outre pouvoir allier des compétences tant au niveau du langage de programmation utilisé qu'au niveau du domaine d'application du logiciel relu  (cryptographie, réseau, ...) afin d'obtenir une relecture efficace.
De plus, les logiciels OpenSource sont écrits en mode collaboratif la pluspart du temps, ce qui rend leur lecture plus complexe que celle des logiciels industriels soumis à des standards de programmation beaucoup plus drastiques en terme de formalisme, structuration...
Rappelons que la décourverte d'une faille par un individu ne lui impose pas plus d'en informer la communauté dans un contexte OpenSource que dans un autre contexte. Une telle faille, bien que détectée, ne sera pas corrigée et pourra continuer d'être exploitée.
Ainsi, le label "OpenSource" ne devrait en aucun cas être lu comme synonyme de code sécurisé. Code propriétaire ou non, la meilleure des assurances ne résiderait-elle pas dans les projets de "certification"? On peut alors mieux estimer les ressources allouées à la relecture de code ainsi que la cible de sécurité retenue. Début 2008, le rapport du projet OSH (Open Source Hardening Project) Coverity_White_Paper-Scan_Open_Source_Report_2008.pdf mettait en avant 11 projets OpenSource presque exempts de faille de sécurité. Ce projet a été lancé en mars 2006 par le département américain de la sécurité intérieure pour un budget initial de 300 000 dollars et confié à l'Université de Stanford et à la société Coverity. Cette étude de près de 10 milliards de lignes de code a ainsi mis en avant des tendances en terme d'erreurs les plus courantes ex: Déréférencement du pointeur NULL à 28%.

Christophe Roland

Edit de l'équipe Orange Business : Christophe a quitté le groupe Orange depuis ses derniers articles