Coverity était pratiquement inconnue il n’y a pas un mois. Cette entreprise spécialisée dans l’analyse statique et dynamique des codes sources et des architectures d’applications vient de publier un rapport sur l’intégrité des programmes Open Source en général et sur la solidité du noyau Android en particulier. Rapport qui fait état de 88 défauts considérés comme « à haut risque » (corruption ou accès à la mémoire, exécution à distance, fuite d’informations, variables non-initialisées etc.) et 271 défauts de moyenne importance.
Plus que la sévérité des trous répertoriés, c’est le nombre de vulnérabilités annoncées qui transforme cette analyse statistique en petite bombe médiatique. Pourtant, insiste le rapport, rien ne vient distinguer le noyau de Google de tout autre projet du monde Open Source, tant en qualité qu’en quantité de failles découvertes. Android serait même plus sûr que la plupart des applications écrites jusqu’à maintenant, mais moins « bon » que le noyau Linus. Ajoutons que si le nombre de défauts majeurs peut sembler élevé, il n’est jamais fait référence à un quelconque « indice d’exploitation possible » qui, aussi imprécis soit-il, donne une meilleure idée de la dangerosité réelle des trous de sécurité.
Le détail des failles découvertes ne sera pas publié avant le début du premier trimestre 2011, afin de laisser le temps à Google de colmater les défauts les plus facilement exploitables.
L’accès à la mémoire est un haut risque ? L’exécution à distance aussi ? Mais un noyau doit bien le faire pour plein de choses de nos jours, non ?
Désolé mais Coverity dans le domaine de l’analyse statique de code, ça fait quelques années qu’ils sont connus et qu’ils publient des rapports avec de nombreuses vulnérabilités et pas seulement en 2010 avec Android.
Ils ont un contrat avec le Dpt Home of Security depuis 2006 pour analyser les principaux projets open-source et par le passé ont trouvé de nombreuses « failles » dans le code du kernel Linux, Apache, Perl, Python… voir http://scan.coverity.com/all-projects.html