Romolo Tavani - Fotolia
Phishing : comment Vade s’est mis à la Computer Vision
L’éditeur de solutions de protection de boîtes mail a renforcé ses capacités de détection d’emails frauduleux en optant pour la Computer Vision. Maxime Meyer, Lead Research Scientist chez Vade, déroule le cheminement du projet lancé il y a près de trois ans.
Fondé en 2009, Vade (anciennement Vade Secure jusqu'en juin 2021) est un éditeur français œuvrant à la sécurisation des boîtes mail. Il s’est notamment spécialisé dans la détection prédictive des emails frauduleux.
« Notre objectif est de protéger les boîtes mail des utilisateurs de tout type d’attaque, du spam classique, en passant par le phishing, au ransomware ou au spear phishing », liste Maxime Meyer, Lead Research Scientist chez Vade.
Pour ce faire, Vade recourt à « un certain nombre de techniques différentes ». La société entend défendre un peu plus d’un milliard de boîtes mail dans 76 pays dans le monde. Elle analyserait près de 100 millions de courriels par jour.
Habituellement, l’éditeur travaille avec deux grands types de clients. Les premiers sont les FAI comme Orange, Dokomo, Softbank ou encore Vodafone. Les seconds sont des entreprises.
« Ce n’est pas le même volume d’emails entre des FAI qui servent plusieurs milliers d’utilisateurs et des sociétés où l’on protège une dizaine à une centaine de boîtes mail », distingue le Lead Research Scientist.
Au sein d’une équipe de huit personnes, le travail de Maxime Meyer consiste à chercher de nouvelles méthodes afin de les intégrer dans les produits Vade.
Et comme Vade se présente tel un « des pionniers de la détection des menaces basées sur l’IA », « une bonne partie » des solutions de l’éditeur s’appuient sur des algorithmes.
L’une des plus utilisées par l’entreprise vise à analyser les caractéristiques du trafic Web. « Nous allons essayer de détecter des changements ou des anomalies. Par exemple, une boîte mail associée à une IP spécifique, qui se met à envoyer plusieurs milliers d’exemplaires de mails à travers le monde, indique probablement une vague de spams », explique Maxime Meyer.
Vade s’efforce également de déceler des templates de mails récurrents en provenance d’adresses suspectes, plaçant l’éditeur sur la piste de campagnes de cyberattaques en cours. « Cela nous permet de réagir de manière prédictive », affirme le chercheur.
Phishing : le Deep Learning, un instrument de contre-mesures
L’une des attaques les plus courantes auxquelles fait face Vade n’est autre que le phishing.
« C’est une attaque relativement simple à mettre en place qui dépend généralement du déploiement d’un site frauduleux usurpant l’identité d’un site réel », rappelle Maxime Meyer. « Puis, l’attaquant envoie des emails qui pointent vers ce site frauduleux afin d’obtenir des informations confidentielles telles que des identifiants, mots de passe, ou encore les numéros de carte bancaire des utilisateurs », complète-t-il.
Pour détecter ce type d’attaque, Vade analysait déjà le contenu du mail, les possibles pièces jointes, les liens de redirections, le code potentiellement embarqué dans le message, ainsi que le code HTML des pages Web de redirection.
Comme les méthodologies des cyberattaquants évoluent, il fallait renforcer ce dispositif. L’équipe de Maxime Meyer s’est penchée dès la fin de l’année 2018 sur une technique de Deep Learning.
« Nous nous sommes rendu compte qu’il y avait une amélioration significative des techniques de Computer Vision. Ces dix dernières années, la montée en puissance du Deep Learning d’une part, et du hardware dédié d’autre part, a largement contribué à ce phénomène », considère le chercheur. « Les modèles de traitements d’images déjà connus sont revenus sur le devant de la scène par le biais de papiers de recherche démontrant des performances très intéressantes », ajoute-t-il.
« Nous avons estimé que la détection de la marque était un critère déterminant pour la détection du phishing. Cela permet en outre de prévenir les marques concernées pour qu’elles fassent fermer les sites frauduleux », explique Maxime Meyer.
Maxime MeyerLead Research Scientist, Vade
Il fallait dès lors trouver la bonne méthodologie afin d’obtenir ce résultat, et sélectionner les données adéquates pour entraîner les algorithmes.
L’équipe de recherche de Vade s’est donc concentrée sur les logos des marques. « Pour cela, ce qui se fait de mieux aujourd’hui en Computer Vision, c’est la détection d’objets. Dans notre cas, ce sont des logos présents dans l’image de la page Web ».
Afin de récupérer ces logos, Vade réalise des captures d’écran des mails analysés. « Pour entraîner un algorithme de Computer Vision à détecter un objet, je vais lui présenter un gros volume d’images le représentant. Par exemple, pour détecter un chat, je vais présenter des images de mon animal dans différentes postures, je vais y faire figurer plusieurs races ou encore des représentations tronquées », illustre Maxime Meyer.
« Nous faisons la même chose avec les logos. Nous essayons d’obtenir toutes les représentations possibles du logo d’une marque, même celles déformées, altérées ou transformées afin que l’algorithme apprenne au mieux à reconnaître les caractéristiques de cet objet », complète-t-il.
En parallèle, l’équipe de Vade devait trouver le bon algorithme pour arriver à ses fins. Si des technologies de détection de logos existaient déjà, elles ne répondaient pas à son cas d’usage. Elle en a sélectionné deux plus généralistes, que les chercheurs ont adaptés à leurs besoins.
« Nous nous sommes appuyés sur plusieurs articles de recherche pour nous orienter dans nos choix. Nous avons finalement opté deux algorithmes de Deep Learning réputés pour leurs performances : VGG-16 et ResNet-50 », affirme le Lead Research Scientist.
VGG-16 est un réseau de neurones convolutifs (CNN) développé par Karen Simonyan et Andrew Zisserman, deux chercheurs de l’université d’Oxford. Ce CNN reposant sur 16 couches a été présenté en 2014, année lors de laquelle il fut testé dans le cadre du Challenge ImageNet obtenant un score de 92,7 % sur cette banque de données contenant à l’époque 14 millions d’images réparties dans 1 000 classes.
Présenté en 2015 par quatre chercheurs employés par Microsoft Research (Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun), RestNet-50 est lui aussi un CNN préentraîné comprenant 50 couches de convolution. Cette variante de ResNet est également réputée pour ses performances sur le benchmark de la base de données ImageNet. Ces deux algorithmes sont particulièrement utilisés dans la classification d’images et la détection d’objets.
Premier défi: constituer la bonne architecture
La bonne nouvelle, c’est que Vade n’avait pas à développer ses propres réseaux de neurones. La mauvaise, c’est qu’il fallait trouver les ressources de calcul. Un CNN dédié à la computer vision, même préentraîné, peut coûter cher avec une infrastructure inadaptée.
Habituellement, pour exécuter ces modèles de machine learning, l’éditeur s’appuie en majeure partie sur des infrastructures sur site, ainsi que sur les services de deux fournisseurs cloud, dont AWS.
Il se trouve qu’AWS inclut ces deux algorithmes au sein de l’un de ses services de data science depuis la fin de l’année 2018. « Ils sont déjà implémentés dans SageMaker. Nous avions juste à fournir le dataset, les images, à entraîner les modèles suivant nos critères et à les déployer en production », explique Maxime Mayer.
« Les algorithmes VGG-16 et ResNet-50 ont été optimisés pour s’appuyer sur les ressources des serveurs AWS », assure-t-il.
En l’occurrence, AWS a associé à sa plateforme de data science SageMaker des instances EC2 spécifiquement configurées pour les jobs de computer vision en couplant les vCPU, la mémoire vive avec des processeurs graphiques (GPU). « Ce type d’instance correspond à nos besoins. Cela permet d’accélérer fortement l’entraînement. L’entraînement de nos modèles est effectué en 24 heures environ ».
Mais avant d’entraîner, il faut bien constituer les corpus et les annoter les images. « L’annotation peut être automatisée, mais s’il n’y a pas de vérification humaine, il y a un risque d’introduire des erreurs dans l’entraînement du modèle. Pour le moment, tout est fait manuellement », indique le responsable.
Maxime MeyerLead Research Scientist, Vade
Pour ce faire, Vade emploie le service AWS GroundTruth. « Le processus d’annotation consiste à identifier chaque logo présent dans l’image – l’on entoure ce dernier avec sa bounding box [un cadre de délimitation souvent carré ou rectangulaire N.D.L.R] et l’on indique le label associé – c’est-à-dire la marque correspondante. Aujourd’hui, nous avons quelques milliers d’images annotées, environ 2 500 à 3 000 », déclare Maxime Meyer.
Les sources des images peuvent être les sites de phishing, des images Web contenant le logo légitime, des mails analysés et d’une collecte des logos officiels. Vade tient également son propre classement des 25 marques les plus usurpées, dont Crédit Agricole, Microsoft, PayPal, Facebook, la Banque Postale, Orange ou encore DHL.
Une phase d’entraînement tous les six mois…
Cela ne suffisait pas pour obtenir des performances décentes. Détail qui a son importance, les réseaux de neurones VGG et ResNet acceptent un format d’image carré de 224 par 224 pixels. Il faut adapter la capture avant la mise en production. Si l’image est trop grande ou trop petite, il faut la redimensionner.
L’équipe de Vade est alors passée par une phase d’augmentation de son jeu de données composé d’images.
« Nous prenons nos images et nous augmentons alors notre dataset. À cet effet, nous avons mis en place un algorithme de convolution afin de produire des images carrées (format d’entrée attendu par les modèles), et nous introduisons également des déformations, du bruit, des variations de contraste ou de colorimétrie ».
Au total, le corpus comprend « environ 200 000 images augmentées ». Aussi, l’équipe de Vade génère automatiquement des illustrations à partir d’arrière-plan disponible sur le Web. « Nous ajoutons ensuite des images générées. Nous obtenons des performances optimales en ajoutant environ 20-25 % d’images générées. Au-delà, les résultats sont moins bons, parce que le modèle surapprend (suréchantillonne) et la performance sur les images réelles se dégrade », indique Maxime Meyer. In fine, il faut environ 250 000 images pour que ces modèles basés sur ResNet-50 et VGG-16 aient une performance optimale à l’entraînement.
Le pipeline de préparation des données peut enfin cibler les modèles fondés sur les algorithmes d’apprentissage profond. Une fois entraînés, ils pourraient être poussés en production afin d’accomplir leur tâche de détection. Cependant, les chercheurs voulaient aller plus loin en comparant les résultats de leurs modèles de manière automatisée.
« Nous avons breveté une technique qui permet de combiner les prédictions de VGG-16 et ResNet-50, afin d’obtenir une liste de prédictions optimales », annonce Maxime Meyer.
Maxime MeyerLead Research Scientist, Vade
Ensuite, les résultats de l’algorithme de combinaison des prédictions sont analysés. « Afin de limiter les risques de faux positif, nous appliquons du post-processing, en utilisant de l’OCR, ou en comparant les proportions de la bounding box de chaque prédiction avec celles attendues pour le logo en question ».
C’est à partir de là que les modèles peuvent être placés en production depuis des buckets S3.
L’équipe de recherche de Vade n’entraîne pas son modèle tous les jours. « De manière générale, la computer vision fonctionne correctement quand elle n’est pas entraînée en permanence », remarque Maxime Meyer.
Dans ce contexte, le caractère changeant de l’apparence des sites de destination frauduleux pourrait mettre à mal une telle analyse. « Les logos, eux, ne changent pas souvent. Donc, le modèle n’a pas besoin d’être entraîné régulièrement », estime le chercheur.
Les modèles de détection de logos sont réentraînés environ tous les six mois, afin d’ajouter de nouvelles marques ou lors des mises à jour de logos. En février 2021, Vade prenait en compte 58 marques différentes. « Pour chacune de ces marques, nous disposons d’une à une dizaine de variantes de logos différentes ».
« Les pages de phishing reprennent souvent les logos officiels, mais l’on observe également l’utilisation de logos dégradés – ces derniers sont par exemple pixelisés, étirés ou compressés. L’utilisation de logos dégradés permet de rendre inopérantes des techniques simples de Computer Vision comme le template matching. Nos modèles Deep Learning sont toutefois résistants à ce type de variations. », précise Maxime Meyer.
…Complétée par de nouvelles techniques
Tous les emails de phishing ne sont pas traités par ces algorithmes. Pour réentraîner les modèles, Vade a mis en place un pipeline spécifique. « Les captures d’écran conservées sont anonymisées, dédupliquées et nous utilisons de l’Active Learning, une technique qui nous permet de sélectionner les images de manière optimale pour l’entraînement des modèles. Si par exemple nos deux modèles basés sur VGG-16 et ResNet-50 nous donnent des prédictions similaires avec des scores élevés, cela signifie que le logo a été détecté sans incertitude et l’image a finalement peu d’intérêt. En revanche, si les deux modèles ne donnent pas des résultats proches, s’il y a mésentente, alors l’image en question est intéressante pour entraîner les modèles », témoigne le spécialiste.
Lancé à la fin de l’année 2018, le projet a été publiquement intégré en production dans les offres Vade en octobre 2019. Au début de l’année 2021, l’équipe a terminé l’automatisation des pipelines, et a ajouté de nouvelles marques. En mars, l’éditeur a présenté RIANA (Remote Image ANAlysis), une solution qui combine OCR et NLP pour détecter des images de destination suspectes faisant office de rendu graphique de contenu HTML. En effet, certains attaquants ont pris l’habitude d’envoyer des mails comportant uniquement un lien vers ce type de fichiers. Vade aurait bloqué 500 millions de ces images au cours des trois premiers mois de l’année 2021.