Chaque semaine, les auteurs du blog sécurité vous proposent de découvrir leurs Slurps.
Bonbons acidulés et sucrés en gélatine, les Slurps sont leur carburant principal, symbole de leurs coups de cœur, coups de gueule, coups de kick.
slurps présentation
Ne vous êtes-vous jamais demandé ce que signifiait "Mise à jour de sécurité cumulative pour les kill bits ActiveX" dans la description d'un bulletin de sécurité Microsoft ?
Pour faire simple, les killbits sont à la sécurité des contrôles ActiveX ce que les sites pornos sont au contrôle parental : simples, indispensables et quasiment indissociables.
Les contrôles ActiveX sont des composants logiciels, intégrés au sein des pages web, qui sont exécutés sur un poste client via le navigateur web - principalement voire uniquement Internet Explorer à ce jour. Chaque composant ActiveX possède un identifiant unique global (GUID ou CLSID), codé sur 16 octets, soit 128 bits.
En raison des problèmes de sécurité induits par certains contrôles ActiveX (codes malveillants par exemple), Microsoft a introduit au sein de la base de registre Windows, une solution permettant d'indiquer à Internet Explorer si un contrôle ActiveX ne doit pas être exécuté (quelque soit le choix de l'utilisateur).
Concrètement, le killbit est une valeur spécifique (0x00000400) associée à une clé nommée "Compatibility Flag" contenue dans la branche "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\<ActiveX-GUID>".
slurps plus
La liste des killbits est ouverte, simplement compréhensible et ne demande que très peu d'intelligence au navigateur pour interdire l'exécution de contrôles ActiveX malveillants.
De la même manière, il est relativement aisé pour Microsoft de mettre à jour la liste des killbits et de publier les fameuses "Mise(s) à jour de sécurité cumulative pour les kill bits ActiveX".
Autre point intéressant, la mise en place d'un scanner de composants malveillants est à la portée de tous, puisqu'il suffit de comparer la liste noire contenue dans le base des registres, à la liste des contrôles installés et disponibles pour Internet Explorer...
Malheureusement, la liste des avantages d'un tel mécanisme de protection s'arrête là...
slurps moins
Si le positionnement d'un killbit peut être fait même si le contrôle ActiveX concerné n'est pas installé sur le poste client, ce type de sécurité reste préventif et réactif. Rien de garanti à l'utilisateur qu'il possède une liste de killbits exhaustive.
De même, la simplicité de maintenance des killbits entraîne à l'inverse une simplicité pour celui qui souhaiterait les contourner : une attaque 0-day pourrait introduire des modifications au sein de la base de registre et réactiver ainsi (même temporairement) l'exécution d'anciens composants ActiveX, toujours présent sur des sites web infectés.
Parmi les autres inconvénients de la solution, nous noterons aussi le problème suivant : lorsqu'un éditeur découvre une faille dans un contrôle ActiveX de son cru (ex: Odobe QuockTome), s'il publie un killbit associé à son GUID, le code HTML de toutes les pages web utilisant cet identifiant devront être mises à jour. D'où l'absence systématique de passage en killbits de certains composants non sécurisés.
slurps bonus
Plutôt que de vous offrir de scabreux jeux de mots à partir de killbit, je vous propose une liste de liens qui permettront à ceux qui sont intéressés, d'aller plus loin sur le sujet :
- Présentation de la fonctionnalité "Kill bit" (Cert-IST)
- Bloquer les Contrôles ActiveX dangereux (Cert-IST)
- Les contrôles ActiveX et le Kill-Bit
- Kill Bit Action Process (Microsoft)
- The Kill-Bit FAQ : partie 1, partie 2, partie 3 (Microsoft Technet)
- Internet Explorer Kill-Bits (Cert US)
Bon week-end et ne négligez pas la mise à jour de vos killbits.
Vincent