Comment minimiser un mal inévitable?

La lutte contre les faux positifs

L’analyse d’un objet quelconque (fichier ou ressource Internet) par un logiciel de sécurité informatique se résume à une prise de décision binaire: l’objet est dangereux ou il ne l’est pas. Le moteur antivirus part de l’hypothèse que l’objet en question est dangereux et vérifie si c’est bien le cas. Vu que le logiciel antivirus parfait n’existe malheureusement pas, il y a parfois des erreurs. Celles-ci sont scindées en deux types. Le premier type d’erreur consiste à considérer un objet sain comme dangereux, tandis que le deuxième consiste à considérer un objet malveillant comme sain. Dans la terminologie héritée des statistiques mathématiques, les erreurs du premier type sont appelées des faux positifs.

Les éditeurs qui développent des systèmes de sécurité adoptent des attitudes différentes vis-à-vis des faux positifs. Certains estiment que la priorité doit être la lutte contre les infections. La position de Kaspersky Lab en la matière est ferme : éviter les faux positifs est tout aussi important que de lutter contre les malwares. Nous allons nous pencher sur les méthodes de lutte contre les faux positifs en prenant notre société comme exemple.

Positif négatif

Pour l’utilisateur, un faux positif donné par la solution de protection signifie qu’il ne peut pas accéder au site qu’il doit consulter ou qu’il ne peut pas exécuter une application inoffensive. Quelle que soit l’importance du fichier ou du site concret, une erreur de détection entraîne à chaque fois des désagréments qui peuvent perturber les activités de l’entreprise.

Si l’application considérée par erreur comme étant dangereuse vient d’être créée, son auteur peut se plaindre auprès de l’éditeur du logiciel antivirus, les analystes reconnaissent l’erreur et la corrigent pour la mise à jour suivante des bases. Ce processus dure en général quelques heures, bien entendu si cette application ne réalise aucune action qui va au-delà de ce qui est permis pour une application légitime.

La situation est totalement différente lorsqu’une partie du système d’exploitation est considérée comme malveillante. Cela peut entraîner des conséquences plus sérieuses, jusqu’à un échec du système. Et quand un faux positif de cette ampleur se produit dans une grande entreprise, des arrêts sont inévitables, ce qui se traduit par des pertes de revenu. C’est la raison pour laquelle nous estimons que les sociétés qui développent des systèmes de sécurité doivent prêter une attention toute particulière à ce type d’erreur et tenter de les réduire au minimum.

Origines des faux positifs

Avant d’aller plus loin, il serait bon de s’arrêter un instant sur les causes des faux positifs. Il en existe plusieurs.

L’élément humain peut être à l’origine d’un faux positif car l’analyste qui étudie les virus n’est pas à l’abri d’une erreur. Toutefois, de tels cas sont très rares dans la situation actuelle car presque toutes les menaces (99 %) sont détectées automatiquement.

Un faux positif peut être obtenu lorsque les développeurs d’applications légitimes décident d’obfusquer le code et de le compresser (compression des fichiers exécutables). Ces méthodes sont souvent adoptées par les individus malintentionnés pour compliquer l’analyse des malwares. C’est la raison pour laquelle un système de sécurité pourrait soupçonner que cette application est malveillante.

Une autre cause de faux positif peut être l’utilisation de signatures génériques qui détectent les objets malveillants similaires. Cela fait longtemps que nous savons que bon nombre d’objets malveillants sont bien souvent des variations d’un même code. En d’autres termes, le recours à des méthodes de classement plus intelligentes permet de mettre en évidence des ressemblances et de créer une logique de détection unique (signature) qui identifiera tous les objets similaires. Ces signatures génériques sont utilisées par différents systèmes de détection. Plus les critères employés par le système pour identifier les segments similaires dans les objets malveillants sont étendus, plus le risque de voir une signature se déclencher pour un objet similaire, mais inoffensif, augmente.

Enfin, un objet peut être considéré par erreur comme un objet malveillant par les technologie qui analysent le comportement des applications. Par exemple, si une application inconnue commence à introduire des modifications suspectes dans la base de registres ou à transmettre les données personnelles de l’utilisateur sur le réseau, le module chargé de surveiller les événements dans le système d’exploitation doit sonner l’alarme. Pourtant, ces actions peuvent être le fait d’une application totalement inoffensive, mais qui n’est pas souvent utilisée.

Lutte contre les faux positifs

Les analystes spécialisés dans la lutte contre les virus ont très vite compris les conséquences potentielles des faux positifs. Toutefois, à l’époque, le nombre d’utilisateurs et le nombre de menaces sur Internet étaient mille fois moindre et les mises à jour des bases antivirus étaient beaucoup moins fréquentes. Il y a 18 ans, les méthodes utilisées pour vérifier les bases antivirus étaient assez simples : les développeurs disposaient d’une collection de fichiers sains cruciaux (principalement, des fichiers système) et avant de diffuser la mise à jour, les experts se contentaient d’analyser cette collection à l’aide de chaque nouvelle base. En cas de faux positif, la détection était modifiée uniquement après la réception des premières réclamations. Autrement dit, l’équipe d’analyste corrigeait la base manuellement et la menace n’arrivait qu’à un nombre restreint d’utilisateurs.

Au fil du temps, le flux de malwares a été multiplié par 1 000, ces malwares sont devenus plus complexes, tout comme les technologies de détection des objets malveillants. A l’heure actuelle, Kaspersky Lab détecte chaque jour 325 000 nouveaux objets malveillants. L’arsenal employé dans la lutte contre les menaces Internet s’est également développé : alors que dans les années 90, les méthodes basées sur les signatures suffisaient amplement pour protéger les ordinateurs, les produits proposés aujourd’hui par Kaspersky Lab intègrent des technologies comme la prévention automatique de l’exploitation des vulnérabilités, des outils de contrôle des privilèges des applications, un module qui surveille les événements dans le système d’exploitation et bien d’autres technologies. Les bases modernes d’une application légitime occupent des téra-octets sur un disque.

Il est évident que dans ces conditions, les méthodes archaïques de lutte contre les faux positifs ne peuvent être employées. Les méthodes adoptées actuellement pour prévenir ce phénomène sont plus diverses et plus efficaces. Ces méthodes sont appliquées lors de la détection d’objets malveillants et lors de l’essai et de la diffusion des bases. De plus, il existe un ensemble distinct de méthodes qui permet de réduire le risque de faux positifs lors de l’exploitation de la solution de protection.

Contrôle des signatures

Au risque d’énoncer une évidence, la manière la plus simple d’éviter les faux positifs consiste à publier des signatures qui ne contiennent aucune erreur. C’est la raison pour laquelle la création des signatures des objets malveillants reçoit autant d’attention. Mais même si l’erreur se manifeste plus tard, il existe un moyen de rectifier le tir, alors que les bases ont déjà été envoyées à l’utilisateur.

Etape de la détection (création de signatures statiques)

Tout d’abord, un système autonome de contrôle automatique analyse les signatures statiques que les experts de la lutte contre les virus ajoutent manuellement aux bases. Le fait est que la personne plongée dans une analyse de code peut ne perdre de vue la perspective générale. C’est la raison pour laquelle ce module de contrôle signale l’erreur éventuelle à l’analyste avec des arguments en cas de tentative d’ajout à la base des signatures d’un objet que le système considère comme sain pour une raison quelconque.

Ensuite, pour rechercher les faux positifs dans les nouvelles signatures, on utilise une collection de hash (résultats uniques du transformation du code par un algorithme déterminé) d’objets dont le caractère « sain » ne fait aucun doute. La signature créée sur la base d’un fragment de code malveillant est comparée aux hash de la collection. Si le système détecte que la nouvelle signature, pour une raison quelconque correspond au hash d’un objet légitime, il choisit un autre segment de code pour créer la signature de cette menace.

De plus, Kaspersky Lab conserve une base de données distincte contenant le « dossier » de chaque objet malveillant analysé à un moment donné par les technologies de protection. La détection tient compte des antécédents de l’objet détecté. Si cet objet n’avait jamais suscité aucun doute, il est soumis à une analyse complémentaire.

La protection contre les erreurs repose également sur une collection de fichiers qui ont déjà provoqué des faux positifs. Elle permet d’éviter une répétition de l’incident en cas de légère modification de l’objet (par exemple, diffusion d’une nouvelle version de l’application).

Les bases de signatures statiques sont régulièrement enrichies de signatures génériques : si le système de détection automatique enregistre une multitude de malwares similaires, une seule logique de détection est créée pour ceux-ci.

Etape des essais et de la publication des bases

Pour s’assurer que les signatures (statiques et génériques) ne seront pas activées sur une application « saine », les bases générées sont vérifiées à l’aide d’une liste blanche, la base de connaissances dynamique Dynamic Whitelist. Il s’agit d’une volumineuse collection constamment enrichie de l’application légitime et qui contient également des données complémentaires sur chacun des objets (éditeur, nom du produit, version de la dernière mise à jour et bien d’autres choses encore). Pour en savoir sur le fonctionnement de Dynamic Whitelist, cliquez ici.

La création et la mise à jour en temps utile de cette collection sont confiées à un service spécial de Kaspersky Lab. Grâce aux accords conclus avec plus de 600 éditeurs de logiciel, la majorité des applications les plus utilisées est ajoutée à cette collection avant même la commercialisation.

Le système chargé de cette analyse mérite un peu d’attention. Dans la mesure où le volume de la collection de l’application légitime est immense et vu que les bases sont mise à jour une fois par heure, il est évident qu’il n’est pas possible de réaliser l’analyse sur un serveur habituel. Un système de traitement distribué des données a été créé spécialement pour cette tâche. Il utilise des dizaines de serveurs et de stockages de données pour équilibrer la charge.

Toutes les signatures qui éveillent le moindre soupçon sont ajoutées à un registre distinct que l’on pourrait nommer « verdicts potentiellement dangereux ». Ces signatures sont soumises à une analyse complémentaire, souvent avec l’intervention d’analystes.

Réaction (lutte au moment de l’exploitation)

Une fois que les bases antivirus ont subi tous les essais, elles sont diffusées aux utilisateurs. La structure de diffusion dans le nuage Kaspersky Security Network obtient les statistiques relatives aux détections réalisées du côté de l’utilisateur et surveille le nombre de déclenchements de la signature.

Les analystes, responsables de la diffusion, restent attentifs à la manière dont les produits réagissent à la mise à jour. En cas de détection d’une anomalie (menace détectée chez un grand nombre d’utilisateurs au cours d’un bref intervalle), il pourrait s’agir d’un faux positif. Dans ce cas, l’analyste reçoit un signal d’alarme et il réalise une analyse complémentaire de l’objet détecté.

Si l’analyse indique clairement que l’objet est considéré par erreur comme un objet malveillant, la technologie Record Management System permet de rappeler la signature en quelques secondes via le Kaspersky Security Network. La signature incorrecte est également supprimée des bases. S’il s’avère qu’une signature générique détecte par erreur des objets « sains », les analystes modifient la logique de détection et corrigent les bases. Quoi qu’il en soit, l’erreur n’apparaîtra plus dans la mise à jour suivante.

Contrôle des erreurs des technologies proactives

Il n’est pas facile de rechercher des faux positifs dans les technologies qui identifient le comportement anormal des applications sur les ordinateurs pendant le développement Il est pratiquement impossible de deviner toutes les actions que l’utilisateur pourrait réaliser sur son ordinateur et toutes les versions d’une application « saine » qu’il pourrait utiliser. C’est la raison pour laquelle ce sont principalement les technologies dans le nuage qui permettent de protéger les utilisateurs contre les faux positifs.

Quand le produit découvre un objet inconnu au sujet duquel les bases antivirus n’ont aucune information, le hash de cet objet est aussitôt transmis à l’infrastructure dans le nuage qui indique en quelques secondes si cet objet est connu ou non. S’il se trouve dans la liste blanche de l’application de confiance, l’objet est considéré comme sain.

De plus, les technologies dans le nuage permettent de vérifier l’authenticité de la signature numérique du fichier suspect et la réputation de la société qui a émis le certificat de signature numérique. Si la réputation est sans taches et que le certificat est authentique, cela confirme également la légitimité de l’objet. Il convient de signaler que les données relatives à la réputation de la compagnie ou de la signature ne sont pas statiques. En cas d’incidents, la confiance vis-à-vis de celles-ci peut être atteinte, ce qui entraîne une modification de la réaction de la solution de protection contre les fichiers.

Il convient d’être particulièrement attentif aux outils de détection proactive pendant la mise à niveau des fonctions du produit. Des surprises peuvent en effet se produire lorsque les technologies actualisées sont déployées pour la première fois sur le terrain après les tests en laboratoire. C’est la raison pour laquelle les mécanismes de protection sont activés non pas tout de suite sur tous les produits, mais par étape. Les mises à jour sont d’abord proposées à un groupe d’essai réduit. Si aucun faux positif n’est déclenché, les nouvelles fonctions sont proposées à un groupe élargi d’utilisateurs. Ainsi, en cas d’échec de la nouvelle technologie, la majorité des utilisateurs n’en saura rien.

Lutte contre les faux positifs lors de l’analyse de ressources Internet

Il convient d’ajouter quelques mots sur les technologies de protection contre les faux positifs lors de l’analyse des ressources Internet. Kaspersky Security Network permet de surveille la réputation d’une ressource. En cas de détection de contenu malveillant sur une page du site, c’est la réputation de celui-ci qui permettra de décider si le site doit être bloqué entièrement ou partiellement. Si la réputation du site est sans taches, les solutions de Kaspersky Lab bloqueront uniquement la page qui constitue une menace pour les utilisateurs et non pas tout le site.

De plus, Kaspersky Security Network surveille les statistiques de visite du site. Si un site très visité est considéré comme dangereux, les analystes reçoivent automatiquement un signal qui les amène à réaliser une vérification complémentaire. Cela permet d’éviter un faux positif sur une ressource populaire.

Conclusion

Les faux positifs dans les produits de production sont inévitables. La solution idéale n’existe pas. Les éditeurs doivent toutefois veiller à les réduire au minimum. Et cela est possible.

Les experts de Kaspersky Lab contrôlent soigneusement le fonctionnement des technologies de protection pour éviter toute erreur. Pour chaque type d’objet qui pourrait contenir une menace (pages Internet, fichiers, bannières, secteurs d’amorçage, flux de trafic, etc.), il existe des mécanismes spéciaux qui préviennent les faux positifs ainsi que des collections d’objets dont le caractère « sain » ne fait aucun doute.

Kaspersky Lab possède un groupe spécial qui perfectionne les méthodes existantes de lutte contre les faux positifs et qui en développe de nouvelles. Ce groupe enquête sur chaque cas, analyse les causes et crée les outils qui éviteront que cette erreur ne se répète à l’avenir.

Grâce aux efforts fournis par ce groupe, les essais de produits de Kaspersky Lab organisés par des chercheurs indépendants ne donnent ces derniers temps pratiquement aucun faux positif

Posts similaires

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *