paint-brush
Voici comment nous avons créé un détecteur de sites Web de phishing en temps réel pour MacOSpar@moonlock
1,135 lectures
1,135 lectures

Voici comment nous avons créé un détecteur de sites Web de phishing en temps réel pour MacOS

par Moonlock (by MacPaw)5m2024/08/26
Read on Terminal Reader

Trop long; Pour lire

Découvrez comment l'équipe Moonlock de MacPaw a développé un détecteur de sites Web de phishing de pointe en temps réel pour macOS. Cette solution sur appareil améliore la sécurité en avertissant instantanément les utilisateurs des menaces de phishing sans avoir recours au traitement cloud, garantissant ainsi une détection plus rapide et une meilleure confidentialité.
featured image - Voici comment nous avons créé un détecteur de sites Web de phishing en temps réel pour MacOS
Moonlock (by MacPaw) HackerNoon profile picture
0-item

Cette solution antiphishing en temps réel sur l'appareil pour macOS élève la détection basée sur les références à un nouveau niveau, avertissant instantanément les utilisateurs Mac qu'ils se trouvent sur un site Web de phishing.

Tout d’abord, le contexte

Combien de sites Web de phishing uniques ont été publiés en 2023 ? Le groupe de travail antiphishing dénombré près de 5 millions. Au début de 2024, la division de cybersécurité de MacPaw, Moonlock signalé à propos du voleur AMOS qui s'appuie sur de faux sites Web de marques fiables pour diffuser des logiciels malveillants sur les ordinateurs Apple. Non seulement ils infectent nos appareils, mais ils collectent également les identifiants des victimes à des fins malveillantes. Les sites Web falsifiés sont dangereux, c'est pourquoi mon équipe et moi avons décidé de faire quelque chose à leur sujet.


La solution que je décris ci-dessous a commencé comme une expérience de preuve de concept à Verrouillage de la lune Nous avons aplani les difficultés rencontrées lors de la R&D technologique de MacPaw et présenté le prototype fonctionnel au STAST 2024. Notre document de position décrit la solution en détail et a été initialement téléchargé sur arXiv.org Pour un aperçu sous le capot de notre application antiphishing, veuillez lire la suite.

Qu'avons-nous entre les mains à l'heure actuelle ?

Les applications antiphishing actuelles utilisent principalement trois méthodes de détection : la liste noire, l'approche basée sur la classification et l'approche basée sur les références. Chaque méthode a ses avantages, mais toutes nécessitent des améliorations supplémentaires. Explorons chacune d'entre elles.

Liste noire

La méthode de la liste noire est pratique et précise, mais elle ne peut pas suivre la vitesse à laquelle les sites Web de phishing se propagent. Elle n'est pas toujours efficace, car de nouveaux sites Web de phishing doivent encore être ajoutés à la liste, tandis que les attaquants modifient souvent les URL pour échapper à la détection.


Par exemple, Google Safe Browsing utilise des listes de sites de phishing connus. Lorsque vous essayez de visiter un site Web, le logiciel vérifie l'adresse par rapport à cette liste. S'il y a une correspondance, il bloque l'accès et vous avertit du danger. Mais que se passe-t-il si le site Web a été publié il y a quelques minutes à peine ? Il ne figurera pas sur la liste et l'utilisateur sera piégé.

Approche basée sur la classification

Dans cette méthode antiphishing, l'apprentissage automatique analyse les caractéristiques des pages Web telles que les structures d'URL, le contenu HTML et les métadonnées pour déterminer si un site Web est falsifié ou légitime. La classification est excellente pour les extensions de navigateur, car elle apprend à partir des données utilisateur pour repérer les nouveaux sites de phishing.


L’inconvénient est que l’apprentissage automatique nécessite des algorithmes complexes et de nombreuses données d’apprentissage, tandis que les cybercriminels inventent rapidement de nouvelles tactiques d’obscurcissement pour échapper à la détection. Cela rend les approches basées sur la classification moins précises et peu adaptées aux produits de sécurité autonomes.

Approche basée sur les références

Certaines des solutions basées sur des références sont considérées comme à la pointe de la technologie. Elles utilisent la vision par ordinateur pour analyser l'apparence des pages Web et détecter efficacement les sites Web de phishing. Cependant, nous constatons également que les solutions basées sur des références pourraient être plus rapides si elles ne traitaient pas les cas de phishing dans le cloud.


Il existe un délai critique entre la mise en ligne d'un site Web de phishing et son ajout à la liste par les systèmes de détection basés sur des références. Nous avons voulu réduire cet intervalle pour garantir une détection et une réponse plus rapides.

Comment fonctionne notre application antiphishing native pour macOS

Notre objectif était d'avertir les utilisateurs Mac des sites Web de phishing dès leur mise en ligne. Pour y parvenir, nous avons adopté l'approche basée sur les références et l'avons améliorée. Nous avons éliminé le traitement dans le cloud et suggéré d'effectuer tous les calculs localement, dans le but de réduire le temps de détection. En prime, notre solution améliore la confidentialité puisque toutes les données utilisateur sont traitées sur l'appareil et ne vont nulle part ailleurs.


Nous avons créé une application macOS native à l'aide de Swift, en intégrant des frameworks pour capture d'écran et l'apprentissage automatique. En convertissant nos modèles en CoreML format, nous avons assuré des performances fluides et minimisé l'utilisation des ressources système. De cette façon, notre prototype analyse en permanence les pages Web en arrière-plan, protégeant les utilisateurs Mac des sites Web de phishing sans nécessiter d'interactions supplémentaires. Le prototype fonctionne indépendamment des navigateurs. Le macOS Accessibilité Le cadre et les métadonnées d'accessibilité aident l'application à se concentrer sur certaines régions d'intérêt afin qu'elle sache où chercher le phishing.


Voici en quelques mots comment cela fonctionne.

Première étape : l'analyse de la page Web

Lorsque nous sommes sur un site Web, notre application essaie de comprendre la mise en page. Elle identifie les éléments clés de la page, comme les logos, les champs de saisie et les boutons. Pour cette tâche, nous avons choisi DETR avec ResNet-50 en raison de sa précision et de ses performances.


À cette étape, il est important de reconnaître l’emplacement des éléments sur le site Web, en particulier la zone avec le logo de la marque et les formulaires de saisie des informations d’identification.

Deuxième étape : l’attribution de la marque

Ensuite, le prototype vérifie si un logo détecté sur le site Web correspond à une marque connue. En outre, il compare l'URL de la page Web à une liste de référence de sites Web légitimes. Si le site Web est officiel, nous ignorons les étapes suivantes.


Par ailleurs, nous avons été consternés de voir le nombre de domaines officiels utilisés par les marques à des fins de marketing. Il n'est pas étonnant que les sites de phishing soient si efficaces pour tromper leurs victimes. Par exemple, DHL possède plusieurs domaines officiels comme dhl.com, express.dhl, mydhli.com, dhlsameday.com et dhlexpresscommerce.com.

Troisième étape : empêcher la récupération d’identifiants

Nous classons la page Web en deux catégories : si elle nécessite des informations d'identification ou non. Cette étape permet de vérifier si un site Web de phishing tente de voler des informations personnelles d'un utilisateur.


Dans la capture d'écran, notre prototype a trouvé des champs de saisie d'informations d'identification, a attribué la page à DHL et a comparé l'URL à la liste des domaines officiels DHL. L'utilisateur a reçu un avertissement de phishing car la page n'appartient pas à DHL.

Quelle est la précision du prototype ?

Notre système maintient ou dépasse la précision de base et offre certainement des temps de traitement plus rapides. Nous avons atteint une précision de 90,8 % dans la reconnaissance de logo et de 98,1 % dans la détection de la saisie d'informations d'identification.


Le graphique ci-dessous présente nos performances par rapport à d'autres solutions antiphishing, ainsi que nos résultats en termes de précision, de rappel et de taux de faux positifs. Nous sommes fiers d'avoir détecté 87,7 % des tentatives de phishing tout en maintenant le taux de faux positifs à un niveau bas de 3,4 %.

C'est rapide et fluide aussi

Les mesures finales démontrent que notre solution fonctionne parfaitement en arrière-plan sans perte notable de performances. L'utilisation du processeur est minimale : avec huit cœurs sur le Mac Apple M1, notre prototype n'utilise que 16 % des 800 % de capacité disponibles. Ce niveau de consommation est similaire à trois onglets Safari actifs ou à un appel Zoom.

Réflexions finales

Il existe de nombreuses applications antiphishing sur le marché, mais la plupart d'entre elles traitent les données sur des serveurs externes. Notre prototype montre que le matériel des ordinateurs modernes nous permet d'intégrer des modèles d'apprentissage automatique localement sur l'appareil. Nous pouvons les utiliser pour lutter contre le phishing sans nous soucier des vitesses de traitement et de l'utilisation des ressources système. Heureusement, l'écosystème Apple fournit des cadres et des outils d'optimisation.


Auteur : Ivan Petrukha, ingénieur de recherche senior chez MacPaw Technological R&D, ex-Moonlock.