Cinq mythes sur l’apprentissage automatique en cybersécurité

Cela fait longtemps que l’apprentissage automatique s’est répandu dans toutes les sphères d’activité de l’Homme. Non seulement il joue un rôle important dans la reconnaissance vocale, l’identification des gestes ou la reconnaissance des écritures et des images, mais sans lui, il est difficile de s’imaginer ce que serait la médecine moderne, les activités bancaires, la bioinformatique ou n’importe quelle activité du contrôle de la qualité. Même les prévisions météorologiques ne peuvent se passer de l’aide de machines capables d’apprendre et de généraliser.

J’aimerais ici vous mettre en garde contre certaines conceptions erronées sur l’application de l’apprentissage automatique dans notre domaine d’activité, à savoir la cybersécurité.

Mythe n°1 : « l’application de l’apprentissage automatique dans la sécurité de l’information est récente »

Pour une raison inconnue, on a commencé à parler ces derniers temps selon une fréquence suspecte d’une intelligence artificielle dans la cybersécurité. Si vous n’avez pas vraiment suivi l’évolution, vous pourriez même penser qu’il s’agit d’une nouveauté.

Petit rappel historique : la création d’un des premiers algorithmes d’apprentissage automatique, un réseau neuronal artificiel, remonte aux années 1950. Il est étonnant de voir qu’à l’époque, on pensait que cet algorithme allait pouvoir créer une intelligence artificielle forte. A savoir, une intelligence capable de penser, de comprendre et de résoudre des tâches autres que celles pour lesquelles elle a été programmée. On l’oppose à l’intelligence artificielle faible qui ne peut résoudre que certaines tâches : reconnaître des images, prévoir le temps, jouer aux échecs, etc. Aujourd’hui, 60 ans plus tard, nous comprenons mieux qu’il nous faudra attendre encore longtemps avant de créer une véritable intelligence artificielle et que ce que nous appelons « intelligence artificielle » est de l’apprentissage automatique.

malanov_5myths_01

Source : http://dilbert.com/strip/2013-02-02

Mais même dans le domaine de la cybersécurité, l’apprentissage automatique n’est pas une nouveauté. Les premiers algorithmes de cette catégorie ont commencé à être intégré il y a 10 ou 12 ans. A l’époque, le nombre de nouveaux produits malveillants doublait tous les deux ans et à un moment donné, il est devenu évident que la simple automatisation de l’analyse des virus ne suffisait pas. Il fallait un sursaut de qualité. C’est ainsi qu’est né le traitement de tous les fichiers présents dans les collections de virus afin de pouvoir lancer des recherches sur des fichiers semblables aux fichiers étudiés. Au début, la décision finale sur le caractère malveillant était prise par un être humain. Mais très vite, cette fonction a également été confiée à un robot.

Donc, le recours à l’apprentissage automatique dans la lutte contre les virus n’est pas une nouveauté.

Mythe n°2 : « l’apprentissage automatique est facile à mettre en œuvre dans la cybersécurité. Tout a déjà été pensé »

Pour certains domaines d’application de l’apprentissage automatique, il existe en effet une myriade d’algorithmes prêts. Par exemple, la recherche de personnes sur la base d’une photo, leur reconnaissance, la reconnaissance des émotions, la distinction entre un chat et un chien. Dans ces cas, et dans de nombreux autres, une personne a réfléchi soigneusement, a identifié les signes, a sélectionné l’appareil mathématique requis, a investi dans de la puissance de calcul, puis a partagé son travail avec le reste de la communauté. Et désormais, le premier écolier venu peut appliquer ces algorithmes.

malanov_5myths_02

L’apprentissage automatique définit le standard de qualité de petits gâteaux selon la qualité du chocolat et la taille
Source : http://simplyinsight.co/2016/04/26/an-introduction-to-machine-learning-theory-and-its-applications-a-visual-tutorial-with-examples/

Cela donne la fausse impression que tout est prêt également pour les tâches de détection de malwares. Mais ce n’est pas le cas. Chez Kaspersky Lab, nous avons consacré plus de 10 ans à développer plusieurs technologies et à les breveter. Et nous continuons à les développer et à en créer d’autres à cause du mythe suivant…

Mythe n°3 : « l’apprentissage automatique s’opère une fois et puis c’est tout »

Il existe une différence de contexte entre détecter un malware et détecter des visages/des chats sur une photo. Un visage aujourd’hui restera un visage demain. Rien ne change. Dans la grande majorité des cas d’application de l’apprentissage automatique, la tâche à réaliser ne change pas au fil du temps. Alors que dans le cas des malwares, les changements sont rapides et continus. Ceci s’explique par le fait que les individus malintentionnés ont des modifications concrètes (argent, espionnage, terrorisme), leur intelligence n’est pas artificielle : ils résistent et modifient les malwares afin qu’ils ne correspondent plus au modèle enseigné.

C’est la raison pour laquelle, il faut sans cesse revoir le modèle, voire en créer un nouveau. Il va de soit qu’une solution de protection qui repose sur l’utilisation d’un modèle quelconque sans mise à jour des bases antivirus sera inutile dans le contexte de l’actualisation permanente des malwares. Les individus malintentionnés sont créatifs, donc nous devons l’être également.

Mythe n°4 : « une solution de protection peut être dotée d’une capacité d’apprentissage du côté du client »

Admettons qu’elle traite les fichiers du côté du client, mais la majorité d’entre eux est saine. Il y a parfois des fichiers malveillants. Ces derniers connaissent des mutations, mais le modèle peut les assimiler.

Ceci ne peut pas fonctionner car l’ordinateur du client lambda est exposé à beaucoup moins d’exemplaires d’un malware que ceux qui sont captés par les systèmes de collecte des éditeurs de logiciel antivirus. Et en l’absence d’exemplaires pour l’apprentissage, l’apprentissage ne peut pas avoir lieu. De plus, si l’on revient au point précédent sur l’imagination des auteurs de virus, la détection sera déjouée et le modèle pensera tout simplement que les malwares sont des fichiers sains et son apprentissage sera inutile.

malanov_5myths_03

Mythe n°5 : « il est possible de créer une solution de protection sur la base uniquement d’un modèle qui intègre l’apprentissage automatique, sans recours aux autres méthodes de détection.

A quoi sert une protection à plusieurs niveaux sur la base de différentes technologies alors qu’on pourrait placer tous nos œufs dans le même panier vu que ce panier est tellement intelligent et avancé. Un algorithme suffit pour tout.

Mais voilà, la majorité des malwares appartient à des familles composées d’un grand nombre de versions d’un même malware. Par exemple, Trojan-Ransom.Win32.Shade est une famille qui compte 50 000 ransomwares. Le modèle peut apprendre sur un grand volume de modèles et il devient capable de détecter les menaces à venir (dans les limites connues, cf. 3e mythe). L’apprentissage automatique fonctionne de manière remarquable.

Mais il arrive souvent qu’une famille ne compte que quelques exemplaires, voire un seul. Son auteur n’a pas souhaité entrer en guerre avec le logiciel de protection : admettons que son malware a été détecté sur la base du comportement dès sa création. L’auteur est déçu et ne cherche pas à trouver une parade mais se contente d’attaquer les utilisateurs qui n’ont pas de logiciels de protection ou ceux dotés d’un logiciel qui n’identifie pas les malwares sur la base du comportement (celui-là qui a mis tous ses œufs dans le même panier justement).

Le modèle ne peut rien apprendre sur de telles mini-familles. Il est impossible de généraliser (ce que fait l’apprentissage automatique) sur la base d’un ou de deux exemples. Dans ce cas, il sera plus efficace de détecter la menace à l’aide de méthodes qui ont fait leur preuve comme le hash, les masques, etc.

Les attaques ciblées constituent un autre exemple. L’auteur d’une telle attaque n’a pas l’intention de lancer une offensive de grande ampleur en produisant toujours de nouveaux exemplaires. L’auteur crée un exemplaire pour une victime et vous pouvez être certain que cet exemplaire ne sera pas détecté par la solution de protection (sauf par les solutions prévues pour cette fin comme la Kaspersky Anti-Targeted Attack Platform. Ici aussi, la méthode la plus efficace est celle qui repose sur le hash.

Conclusion : il est préférable d’utiliser différents outils dans différentes situations. La protection à plusieurs niveaux est plus efficace que la protection à un seul niveau. On ne peut pas abandonner ce qui est efficace sous le seul prétexte que ce n’est pas à la mode.

Problématique du robot-policier

Et dernier point. Ce n’est pas un mythe, mais plutôt un avertissement. Les chercheurs s’intéressent de plus en plus aux erreurs des modèles complexes : dans certains cas, les solutions qu’ils adoptent ne peuvent pas être expliquées simplement du point de vue de la logique humaine.

Il faut faire confiance à l’apprentissage automatique. Mais dans des systèmes critiques (pilotage automatique des avions ou des voitures, médecine, centres d’appels, etc.), les critères de qualité sont très stricts, on a recours à la vérifications des applications, et dans l’apprentissage automatique, nous transmettons à la machine une partie des idées et de la responsabilité. Il est dès lors crucial que le contrôle de la qualité du modèle soit confié à des experts de renom.

Posts similaires

Laisser un commentaire

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