Trouver des signaux d'hameçonnage
Explorer les motifs dans les objets et le contenu des e-mails.
Ingénierie indépendante en IA, données, plateformes web et systèmes d’entreprise.
Organisation
Cyber Centre de Deloitte Maroc
Année
2024
Rôle
Stagiaire en cybersécurité et IA
Plateforme
Extension Chrome + API Flask
Un système de détection d'hameçonnage fondé sur l'IA, conçu pour aider les utilisateurs à identifier les messages suspects grâce à l'apprentissage automatique, au traitement du langage naturel et à une extension Chrome directe.
Le projet a été développé pendant mon stage au Cyber Centre de Deloitte Maroc, avec pour objectif de traduire un problème de cybersécurité en un système d'IA appliqué, testable dans un flux d'e-mails quotidien.



L’hameçonnage reste l’une des menaces de cybersécurité les plus persistantes, tandis que l’examen manuel des e-mails est lent, incohérent et difficile à déployer à grande échelle. Le projet devait détecter précisément les contenus suspects sans donner à l’utilisateur l’impression de suivre le processus d’un spécialiste de la sécurité.
L’approche associait des jeux de données d’hameçonnage sélectionnés, l’ingénierie des caractéristiques, l’entraînement des modèles et une couche de déploiement web. Plusieurs modèles d’apprentissage automatique et de traitement du langage naturel ont été évalués avant de retenir celui qui convenait le mieux à une extension de navigateur concrète.
Le jeu de données a été divisé en ensembles d'entraînement, de validation et de test. Les classifieurs traditionnels utilisaient des variables construites comme la longueur de l'e-mail, le nombre d'URL, la proportion de caractères spéciaux et les mots-clés d'hameçonnage. DistilBERT recevait le sujet et le corps combinés, puis utilisait sa représentation contextuelle du langage en complément des signaux extraits.
Chaque candidat a été évalué sur le jeu de test réservé à l’aide de l’exactitude, de la précision, du rappel et du score F1. La comparaison ci-dessous explique la décision de déploiement : DistilBERT est le seul modèle à avoir obtenu des performances solides et équilibrées sur les quatre mesures.
| Modèle | Exactitude | Précision | Rappel | Score F1 |
|---|---|---|---|---|
| Forêt aléatoire | 84.69% | 85.23% | 82.17% | 83.67% |
| Gradient Boosting | 83.56% | 83.94% | 80.69% | 82.28% |
| Régression logistique | 64.85% | 64.79% | 56.30% | 60.25% |
| DistilBERT | 98.08% | 98.05% | 98.10% | 98.07% |
Métriques sur le jeu de test rapportées dans le rapport de stage. DistilBERT utilisait le texte brut des e-mails en complément des signaux d'hameçonnage extraits.
Le déploiement a séparé l'interaction utilisateur de l'inférence du modèle. Une extension Chrome a capturé le sujet et le corps de l'email ouvert; un service Flask a préparé l'entrée, lancé la prédiction, et a retourné une probabilité d'hameçonnage au navigateur.
Extension Chrome
HTML, CSS et JavaScript exposent une action « Détecter l'hameçonnage » dans Gmail et Outlook, puis envoient le contenu de l'e-mail au format JSON.
API Flask
POST /detect segmente l'e-mail en jetons, extrait les signaux construits, lance l'inférence et renvoie une réponse de probabilité en JSON.
Le stage a abouti à une preuve de concept complète pour la détection de l’hameçonnage : données sélectionnées, caractéristiques conçues, modèles optimisés, choix de déployer DistilBERT, API d’inférence Flask et extension Chrome intégrant le résultat au traitement des e-mails.
La décision technique ne consistait pas seulement à rechercher la meilleure exactitude, mais à associer un traitement contextuel du langage à des indicateurs d’e-mail interprétables et à un mécanisme de restitution permettant aux utilisateurs d’agir.
Résultat du stage
Cyber Centre de Deloitte Maroc