Une faille critique dans le noyau Linux !

Une vulnérabilité critique vient d’être découverte dans le noyau Linux 2.6.30. Elle a été rapidement corrigée, mais le débat fait rage.

Brad Spengler, l’auteur de grsecurity (un module de sécurité pour Linux) vient de découvrir une faille importante dans le noyau Linux 2.6.30.

Code d’exemple à l’appui, il montre qu’il est en mesure d’utiliser cette vulnérabilité pour couper des systèmes de sécurité, comme SELinux, AppArmor ou LSM. Ceci fonctionne aussi bien avec les versions 32 bits que 64 bits du noyau. Comble du comble « avoir SELinux activé affaiblit la sécurité du système face à ce type d’exploits », révèle Brad Spengler.

Lors de la lecture du code source incriminé le bogue semblait pourtant inexploitable. « C’est grâce à certaines optimisations du GCC qu’il le devient », précise Brad Spengler, qui s’est par ailleurs lâché dans les commentaires du code source de son exploit. Le moins que l’on puisse dire c’est que les personnes chargées de gérer le développement du noyau Linux en prennent pour leur grade, sur le ton de « je vous avais prévenu ».

Si l’impolitesse et la rudesse de Brad peuvent être critiquées (lequel n’en est pas à son premier dérapage verbal), la faille est toutefois bien réelle et certaines remarques sont justifiées. Il n’en fallait pas plus pour lancer la polémique, laquelle risque fort de durer.

Cette vulnérabilité est corrigée dans la mouture 2.6.30.2 du noyau Linux, qui remet les choses en place et demande par la même occasion à GCC de ne plus enlever le code testant les pointeurs nuls. C’est en utilisant ce type d’optimisation que la faille était devenue exploitable.