Autoprotection des logiciels antivirus | AV-TEST

Transcription

Autoprotection des logiciels antivirus | AV-TEST
25 novembre 2014
Créée par Markus Selinger
Autoprotection des logiciels antivirus
Une suite de sécurité Internet permet de protéger entièrement un système en utilisant à cet effet toutes les techniques
de protection disponibles. Mais comment ces logiciels protecteurs se protègent-ils eux-mêmes ? Utilisent-ils des
techniques de protection comme le DEP ou l'ASLR ? AV-TEST l'a vérifié en ce qui concerne 32 programmes.
Dans les films de science-fiction, un vaisseau spatial n'est jamais simplement attaqué par des tirs sur son bouclier. La première
cible des attaques est en effet toujours le générateur du bouclier de protection. Appliquez cette logique aux logiciels antivirus et
le générateur de bouclier devient le cœur de la suite de protection, c'est-à-dire le programme antivirus lui-même. Si le générateur
de bouclier tombe en panne, alors le vaisseau qui représente dans notre cas le système Windows est sans défense et peut donc
facilement être contrôlé par un tiers.
Les fabricants des suites de protection connaissent bien sûr ce problème depuis longtemps. C'est pourquoi ils ont développé
certaines mesures d'autoprotection et les appliquent. Ce que de nombreux utilisateurs ignorent : il y a déjà plusieurs années que
le secteur informatique a développé des mécanismes de protection librement disponibles pour les programmeurs afin qu'ils les
intègrent dans leur code de programme ; il s'agit de l'ASLR et du DEP.
Les experts d'AV-TEST ont examiné 24 suites de sécurité et 8 solutions de protection pour les entreprises en octobre 2014 afin
de savoir si elles utilisent déjà l'ASLR et le DEP. Lors de cette vérification, les fichiers pour 32 et 64 bits ont été saisis
séparément.
Les appellations complexes ASLR et DEP recèlent les significations suivantes :
L'ASLR ou Address Space Layout Randomization désigne un embrouillage de la mémoire, qui complique l'exploitation de
failles de sécurité dans les systèmes informatiques. L'ASLR attribue l'espace d'adressage des programmes de manière aléatoire.
Cela doit empêcher ou du moins compliquer les attaques dues à un dépassement de tampon.
Le DEP ou Data Execution Prevention est également appelé NX Bit (No eXecute). Cette protection est basée dans
l'équipement informatique en soi. Les fabricants de processeurs AMD et Intel implémentent cette technique depuis déjà 10 ans
sous leur propre nom EVP ou XP-Bit, et ce dans tous leurs processeurs. Elle doit empêcher que les programmes exécutent
n'importe quelles données en tant que programme et lancent ainsi un code malveillant.
Bien connues mais tout de même efficaces
Les techniques ASLR et DEP ont certes bien plus de 10 ans, mais elles sont plus actuelles que jamais. Leur objectif premier est
le suivant :
Le code d'un programme complexe est rarement exempt d'erreur. D'après Wikipedia (page allemande), les meilleurs programmes
ne comptent qu'une erreur pour 2 000 lignes de code. Cependant, Photoshop CS6 est par exemple composé d'environ 9 millions
de lignes de code et Windows XP en comporte près de 40 millions. Le diagramme du designer londonien David McCandless (en
anglais) fournit un bon aperçu concernant le nombre de lignes de code constituant les programmes.
Ces inévitables erreurs peuvent par la suite se révéler être des points faibles offrant une porte d'entrée pour le code malveillant
d'un attaquant. Une suite de sécurité connaît ces lacunes et tente de boucher les trous. Néanmoins, même une suite de sécurité
n'est qu'un programme composé de nombreux fichiers et d'une multitude de lignes de code. La suite elle-même peut présenter
une vulnérabilité qu'un attaquant peut exploiter. Cela aurait naturellement des répercussions fatales.
Si la prise en charge des techniques ASLR et DEP est intégrée lors de la programmation, alors le risque d'exploitation réelle
d'une éventuelle vulnérabilité diminue en conséquence. Il n'est toutefois pas possible de dire qu'un logiciel n'utilisant pas l'ASLR
et le DEP soit forcément dangereux. Si la programmation ne contient absolument aucune erreur, alors il n'est pas possible de la
rendre encore plus sûre. L'ASLR et le DEP constituent en tout cas une protection supplémentaire dont il ne faut pas se priver.
Leur utilisation est en effet très simple : il s'agit de fonctions présentes dans le compilateur qu'il suffit d'activer. Cela n'influence
pas l'étendue du code ou la durée d'exécution du programme.
32 produits examinés
Avec cette analyse, AV-TEST voulait découvrir dans quelle mesure les fabricants utilisent cette protection supplémentaire pour
leurs produits. Pour cela, les différents produits ont été installés et tous les nouveaux fichiers ont été consignés par écrit. Les
fichiers PE (Portable Executable) en mode utilisateur pour 32 et 64 bits ont ensuite été utilisés pour l'analyse. Tous les autres
fichiers, dont les fichiers PE dits natifs, étaient insignifiants pour le test. Les fichiers PE incluent par exemple les extensions
suivantes :
.exe ou « Executable », c'est-à-dire un programme ou un module exécutable
.dll ou « Dynamic Link Library », une bibliothèque de programmes
.sys ou « System », un logiciel du système
.drv ou « Driver », un fichier pilote pour un appareil
Entre 5 et 45 % des fichiers installés d'une solution de protection sont des fichiers PE, qui ont été examinés pour savoir s'ils
étaient aussi protégés par le DEP ou l'ASLR au niveau du code.
Sous forme de tableaux séparés en 32 et 64 bits, les testeurs ont ensuite indiqué en pourcentage combien de fichiers PE d'un
programme présentent cette protection supplémentaire. Le résultat est un peu surprenant étant donné que certains fabricants
utilisent l'ASRL et le DEP de manière partielle voire complète tandis que d'autres y renoncent presque entièrement.
Produits pour utilisateurs privés : tout le monde n'utilise pas la protection supplémentaire
Le laboratoire a présenté séparément les résultats des produits pour les utilisateurs privés et pour les entreprises. Parmi les
suites de sécurité Internet pour les utilisateurs privés, 24 produits ont été évalués au total. Ils ont aussi été présentés en deux
catégories : 32 et 64 bits. Les seuls produits à utiliser l'ASLR et le DEP à 100 % sont proposés par ESET (utilisateurs privés) et
Symantec (professionnels). Avira, G Data, McAfee et AVG (les deux produits) n'utilisent la protection supplémentaire à 100 %
que dans les fichiers 64 bits de leur produit. Pour la version 32 bits, le résultat varie entre 90 et presque 100 %.
Au total, la moitié de toutes les suites de protection mise à plus de 90 % sur l'utilisation de l'ASLR et du DEP. L'utilisation
diminue ensuite par pas d'environ 10 % de produit à produit jusqu'au plus petit résultat d'environ 5 %. Dans un seul cas, celui
d'Kingsoft pour 64 bits, le résultat est même de 0 %.
Peu importe que ce soit l'ASLR ou le DEP, de nombreux fichiers pour 64 bits utilisent davantage ces techniques de protection
que les fichiers pour 32 bits. Il n'est cependant pas possible d'identifier une règle.
Produits d'entreprise : un fort taux d'utilisation
Dans le cas des solutions d'entreprise, les fabricants misent bien plus sur l'autoprotection supplémentaire fournie par l'ASLR et le
DEP. Néanmoins, seul Symantec utilise continuellement la protection à 100 %. Sophos ne le fait que pour ses fichiers 64 bits.
Sophos fait cependant remarquer que ses fichiers 32 bits non protégés incluent un grand nombre de DLL qui ne contiennent que
des données et ne constituent donc pas un danger. En additionnant pour chaque produit les résultats obtenus pour 32 et 64 bits,
alors 6 des 8 produits présentent un taux d'utilisation entre 81,5 et 97 %. Seul Trend Micro ne mise pas sur cette technique et
n'utilise donc l'ASLR et le DEP que pour 19 % de ses fichiers PE.
Au final, il est possible de dire que cette autoprotection est plus souvent utilisée pour les fichiers 64 bits que pour les fichiers 32
bits. Il ne s'agit cependant que d'une tendance et non d'une règle.
Bilan : une bonne protection supplémentaire ne fait jamais de mal
Nous ne pouvons que recommander aux fabricants d'utiliser les techniques ASLR et DEP, lesquelles sont disponibles
gratuitement. Il s'agit en effet d'une protection supplémentaire, ce qui ne peut pas nuire. Certes, l'ASLR aussi peut être berné
avec des techniques de « Spraying » comme cela est décrit en ligne sur le site heise « Die Rückkehr der Pufferüberläufe » (« Le
retour des dépassements de tampon », article en allemand). Déjouer l'ASLR nécessite cependant plus de travail de la part de
l'auteur du code malveillant. Et c'est normalement quelque chose qu'il cherche à éviter.
Le DEP (ou NX Bit) n'est pas non plus une protection parfaite pour les fichiers mais les auteurs d'exploits doivent également
surmonter des obstacles supplémentaires ce qui requiert aussi plus de travail.
Comme souvent, c'est le cumul des choses qui compte. Le travail nécessaire à l'attaquant pour surmonter deux, trois remparts
ou plus demande du temps, des ressources et des étapes supplémentaires qui peuvent éventuellement plus facilement être
identifiés comme attaque par un logiciel antivirus.
La position des fabricants
AV-TEST a fait parvenir les résultats de l’analyse à tous les fabricants et leur a, le cas échéant, aussi demandé pourquoi ils
n'utilisent pas le DEP et l'ASLR. En résumé, les réponses sont les suivantes :
Certaines bibliothèques achetées ne font pas appel au DEP et à l'ASLR. Seules des bibliothèques utilisant ces
techniques devraient toutefois être achetées dans le futur.
Certains fichiers isolés utilisent une technique de protection propre qui ne serait pas compatible avec le DEP et l'ASLR.
Pour une protection spéciale, des fichiers particuliers ont été créés avec un compilateur non conforme avec Microsoft
ce qui les rend incompatibles avec le DEP et l'ASLR.
Certains fichiers ne sont plus activement utilisés par le programme et sont donc délaissés.
Des techniques de protection développées par les fabricants telles que le CFI (Control Flow Integrity) et la technique
du sandbox sont utilisées.
Informations techniques sur l'ASRL et le DEP
Plus l'écriture d'un programme compte de code, plus il est
vraisemblable qu'une erreur se transforme en une vulnérabilité
potentielle. Les techniques ASLR et DEP ne permettent certes pas de
supprimer directement ces points faibles mais de mieux les cacher et
de les protéger contre un accès non autorisé. En principe, un
programmeur ne devrait renoncer à l'ASLR et au DEP que si le
programme ne contient absolument aucune erreur.
Microsoft est depuis longtemps l'un des grands partisans de ces
techniques. Depuis Windows Vista, l'ASLR est utilisé sans exception.
Le DEP est pris en charge depuis la version XP SP 2. Windows a
acquis à tort la réputation d'un système avec de nombreuses failles de
sécurité. En réalité, un logiciel étranger installé est presque toujours à
l'origine des lacunes dans le système Windows. Adobe Reader, Flash
ou Java en sont des exemples populaires. Dans son Rapport sur les
données de sécurité, Microsoft nous informe constamment de
l'évolution actuelle dans ce domaine. Tous les rapports sont disponibles
gratuitement.
Il existe actuellement aussi une bonne étude de Joxean Koret,
COSEINC. Dans sa présentation en anglais (PDF), il démontre
clairement que les failles présentes dans les logiciels antivirus
présentent un grand risque : Breaking Antivirus Software.
Responsable du recherche
de logiciels malveillants :
Ulf Lösche
Dès 2005, AV-TEST a signalé des vulnérabilités dans les logiciels de sécurité et démontré quelles peuvent en être les
conséquences. Ce sujet est présenté ici sous forme de PDF (en anglais) : Insecurity in Security Software.

Logiciels antivirus pour les utilisateurs privés : certains fabricants pourraient encore fortement renforcer leur utilisation du DEP et de l'ASLR à l'avenir (version
10/14).

Solutions de sécurité pour les terminaux : les versions professionnelles ont plus souvent recours à la protection supplémentaire offerte par le DEP et l'ASLR
(version 10/14).

DEP et ASLR dans les versions pour les utilisateurs privés : le taux d'utilisation est en général plus important pour les fichiers 64 bits que pour les fichiers 32
bits mais il ne constitue pas encore la règle (version 10/14).

DEP et ASLR dans les versions professionnelles : DEP et ASLR dans les versions professionnelles : presque tous les fabricants misent plus sur l'utilisation
du DEP et de l'ASLR comme protection supplémentaire dans leurs versions professionnelles (version 10/14).
Copyright © 2016 by AV-TEST GmbH, Klewitzstr. 7, 39112 Magdeburg, Germany
Phone +49 (0) 391 60754-60, Fax +49 (0) 391 60754-69, www.av-test.org

Documents pareils