
Laboratoire de recherche en engagement défensif et en renseignement sur les menaces. Convertit les e-mails d'arnaque entrants en IOC exploitables grâce à un engagement IA contrôlé et piloté par des politiques. Architecture LLM multi-agents avec sélection adaptative de stratégies.
Plateforme automatisée de honeypot de scambaiting et de renseignement sur les menaces
La plupart des programmes de sécurité bloquent puis oublient : le courrier part, l'infrastructure de l'attaquant et les circuits financiers restent inobservés. ScamBuster, lui, engage la conversation, en entrée uniquement et dans le respect des politiques, transformant l'échange en IOC, en profils d'acteurs et en tactiques étiquetées (pourquoi).
ScamBuster a été présenté à Black Hat USA 2026 dans la track Human Factor.
Démo hébergée -- demo.scambuster.ai, identifiants [email protected] / Un1que$trongPassword2024.
Démo locale -- make demo-up, puis http://localhost:3002 : aucune clé API, aucun compte, aucune boîte mail (guide).
| Agent | Rôle |
|---|---|
| ScamClassifier | Catégorise l'arnaque (13 types), détecte la langue |
| IocExtractor | Extrait 36 types d'IOC avec leur contexte |
| Generator | Rédige la réponse guidée par la persona |
| Validator | Garde-fou de sûreté et de qualité (PolicyGuard + LLM) |
| ConversationDirector | Lit le fil de discussion, oriente chaque tour |
| Orchestrator | Exécute le pipeline, suit les coûts et les traces |
| InjectionDetector | Analyse de l'injection de prompt en deux couches |
| TtpExtractor | Étiquette les tactiques de l'escroc, taxonomie fermée |
Le choix de la persona est adaptatif : epsilon-greedy avec UCB1 apprend quelle persona produit le plus de résultats selon le type d'arnaque.
Multilingue par conception : les règles de détection et les prompts de persona contiennent volontairement du contenu non anglophone, afin de répondre aux escrocs dans leur propre langue (détails).
Des standards, pas des connecteurs propres à chaque fournisseur. Vérifié de bout en bout avec OpenCTI (ce qui arrive où) ; les trois autres suivent les mêmes standards, non testés en conditions réelles.
Chaque conversation produit un threat-actor :
{
"type": "threat-actor",
"name": "ScamBuster Actor - INVESTMENT #02114290",
"sophistication": "minimal",
"goals": ["financial-theft"],
"primary_motivation": "personal-gain",
"threat_actor_types": ["criminal"],
"description": "Criminal actor operating investment scam."
}
Les acteurs portent un mapping ATT&CK, des relations indicates vers chaque IOC, et un profil psychologique (profiling, TTPs, API).
git clone https://github.com/laugiov/scambuster.git
cd scambuster
cp .env.dist .env # edit it first, see below
make quickstart # build, start, migrate, seed, JWT keys, n8n
Renseignez ces 4 variables dans .env avant toute utilisation réelle :
| Variable | Ce qu'il faut faire |
|---|---|
LLM_API_KEY | Clé OpenAI (ou LLM_PROVIDER=mock, sans clé) |
HONEYPOT_IMAP_USER | Boîte aux lettres honeypot (IMAP, reçoit les arnaques) |
HONEYPOT_IMAP_PASSWORD | Mot de passe d'application, pas le mot de passe du compte |
MAILER_DSN | SMTP pour les réponses, @ écrit sous la forme %40 |
Laissées en tant que valeurs de substitution, l'outil démarre en mode démo et l'indique. Quickstart · démo · installation IA · production · architecture · feuille de route · toute la documentation.
ScamBuster est un outil de recherche défensive, pas une arme offensive.
L'usage responsable relève de la responsabilité de l'opérateur. Vérifiez que votre déploiement est légal là où vous opérez, maintenez-le en mode entrant uniquement, et ne l'utilisez jamais pour initier un contact, cibler des individus, harceler ou divulguer des informations personnelles. Lisez la Clause de non-responsabilité et usage responsable avant de déployer.
Pour en savoir plus : Sécurité et garde-fous, SECURITY.md.