# 🛡️ Darija-French Phishing Detector
**Détection d'ingénierie sociale (phishing) générée par IA dans des communications
code-switchées Darija-Français**, avec évaluation critique de la robustesse
adversariale.
Prototype de recherche pour le projet *"Detection of AI-Generated Social
Engineering in Code-Switched Darija-French Communications"*.
> ⚠️ **Statut : prototype de recherche sur données synthétiques.**
> Le pipeline est fonctionnel de bout en bout (génération → features →
> entraînement → test adversarial → API), mais le corpus est généré par
> template, pas collecté sur du réel. Voir Limites.
---
## 📌 Description
Ce projet propose un pipeline complet pour détecter, dans des messages
mêlant darija, français et arabe standard, trois catégories :
| Label | Description |
|---|---|
| `legitimate` | Message normal (personnel, professionnel, notification bancaire légitime) |
| `phishing_human` | Tentative de phishing écrite par un humain (fautes, urgence, majuscules) |
| `phishing_ai` | Tentative de phishing générée par IA (fluide, sans faute, ton corporate poli) |
Le classifieur combine :
- **TF-IDF mots + caractères** (capture les motifs multilingues sans tokenizer spécifique à une langue)
- **Features structurelles/stylométriques interprétables** : présence d'URL/IP, urgence, demande de identifiants, ratio de majuscules, ratio de fautes, ratio de code-switching darija/français/arabe, salutation générique, etc.
- **Régression logistique** — choisie pour l'interprétabilité (coefficients lisibles), contrairement à un transformer boîte noire.
Le point scientifique central du projet : le modèle atteint 100% d'accuracy
sur le split test synthĂ©tique, **mais sa prĂ©cision s'effondre Ă 20 %** face Ă
des paraphrases adversariales manuelles (suppression des mots-clés
d'urgence, reformulation des salutations, obfuscation des URLs) — démontrant
que les signaux lexicaux de surface ne sont **pas robustes** Ă la
reformulation, ce qui justifie le passage futur à des embedd …