Skip to content

Surveillance

This content is not available in your language yet.

Le module de Surveillance est un système de sécurité proactive de pointe intégré à Lyxios. Classé comme module privé, il est exclusivement réservé et accessible aux bots et aux administrateurs généraux du projet : le bot de production Lyxios, le bot de développement LyxiosDev, xougui (le propriétaire/développeur principal) et kadawatcha (gérant/développeur).

Pour des raisons évidentes de confidentialité, d’éthique et de sécurité globale, ce module opère de manière invisible sur l’ensemble des serveurs où Lyxios est présent. Il analyse en temps réel les flux de messages pour identifier, censurer et neutraliser les menaces avant qu’elles ne nuisent à vos communautés.


Chaque message envoyé sur un serveur tiers fait l’objet d’une analyse asynchrone ultra-rapide exécutée dans un pool de threads dédié (ThreadPoolExecutor), garantissant une latence zéro pour l’utilisateur final.

Le scanner effectue une série de vérifications successives à plusieurs niveaux :

  1. Mots Interdits (dangerous_words) Détection directe et immédiate des termes jugés nocifs ou proscrits définis dans notre base de données.

  2. Regex de Phishing & Arnaques (scam_regex_patterns) Analyse sémantique via des expressions régulières pour cibler les structures de phrases récurrentes dans les escroqueries (ex: faux cadeaux Nitro, faux tirages au sort Steam).

  3. Détection d’Obfuscation (Anti-Contournement) Les spammeurs tentent souvent de contourner les filtres en insérant des espaces ou des caractères spéciaux (ex: F r e e N i t r o). Lyxios normalise automatiquement le texte en décomposant l’Unicode (Unicode NFKD), en retirant les accents et en ne conservant que les caractères alphanumériques afin de démasquer l’arnaque cachée.

  4. Secret Leak (Protection des Secrets)

    • Tokens Discord : Détection des tokens de comptes ou de bots exposés par erreur. Le bot valide rigoureusement la structure en décodant la partie Base64 (identifiant snowflake de l’utilisateur) afin d’éviter tout faux positif.
    • Webhooks & IPs : Identification des URLs de Webhooks Discord et des adresses IP exposées.
  5. Analyse de Phishing Heuristique & Avancée Pour chaque lien extrait, Lyxios applique un algorithme de calcul de risque poussé :

    • Typosquatting : Détection des tentatives d’usurpation de domaines de confiance (ex: discord-gift, steam-comunity).
    • Distance de Levenshtein & Similarité : Calcul de la distance d’édition entre le domaine scanné et les domaines officiels. Si le domaine ressemble à plus de 85% à discord.com ou steamcommunity.com avec une distance de 1 ou 2 caractères, le score explose.
    • Pondération des TLDs & Mots-clés : Présence de mots-clés à haut risque dans l’URL (nitro, gift) combinée à des extensions de domaine suspectes (.ru, .xyz, .click).
    • Pages de Connexion : Détection des termes comme login ou signin dans l’URI pour repérer les faux portails d’authentification.

Le comportement et les filtres du scanner sont entièrement dynamiques et configurés dans un fichier JSON structuré. Cela permet de mettre à jour les bases de données instantanément sans redémarrer le bot ni modifier le code source.

Censure & Sécurité

  • 21 mots et expressions extrêmement dangereux.
  • 15 motifs regex d’arnaques ciblés.

Analyse de Liens

  • 73 domaines de confiance sur liste blanche.
  • 24 mots-clés suspects sous surveillance.
  • 30 TLDs à haut risque (ex: .xyz, .ru).

🔍 Afficher la configuration JSON complète (21 mots, 73 domaines…)
surveillance_rules.json
{
"dangerous_words": [
"token grabber",
"stealer",
"download malware",
"install ransomware",
"keylogger download",
"botnet access",
"ip logger link",
"dox bin",
"raid tool",
"nitro generator",
"redline stealer",
"lumma stealer",
"vidar stealer",
"racoon stealer",
"discord token grabber",
"webhook spammer",
"account nuker",
"selfbot script",
"cookie grabber",
"passwords stealer",
"browser stealer"
],
"scam_regex_patterns": [
"(?i)\\b(free|gratuit)\\s*(nitro|steam|discord|promo|airdrop|gift|premium)\\b",
"(?i)\\b(nitro|steam|discord|promo|airdrop|gift|premium)\\s*(free|gratuit)\\b",
"(?i)\\b(qui\\s*veut|who\\s*wants)\\s*(un|a)?\\s*(nitro|steam|discord|gift)\\b",
"(?i)\\b(gift|cadeau)\\s*(steam|discord|nitro|premium)\\b",
"(?i)\\b(claim|réclamer)\\s*(nitro|airdrop|gift|bonus)\\b",
"(?i)\\b(steam|discord)\\s*(wallet|community|gift|free|promo)\\b",
"(?i)\\b(3|1)\\s*(months?|mois)\\s*(free|gratuit)\\b",
"(?i)\\b(skin|csgo|knife)\\s*(giveaway|free|gratuit|drop)\\b",
"(?i)\\b(glitch|generator|gen)\\s*(nitro|money|argent|coins)\\b",
"(?i)\\b(hack|tool|exploit)\\s*(account|compte|discord|steam)\\b",
"(?i)\\b(get|obtenir)\\s*(nitro)\\s*(free|now|instantly)\\b",
"(?i)\\bwho\\s*is\\s*first\\s*to\\s*message\\s*me\\b",
"(?i)\\b(click|cliquez)\\s*(here|ici)\\s*(for|pour)\\s*(free|nitro|steam)\\b",
"(?i)\\b(exclusive|exclusif)\\s*(offer|offre)\\s*(discord|nitro)\\b",
"(?i)\\b(limited|limité)\\s*(time|temps)\\s*(nitro|gift)\\b"
],
"whitelist": [
"discord.com",
"discord.gg",
"discordapp.com",
"discord.gift",
"media.discordapp.net",
"cdn.discordapp.com",
"discord.me",
"discordservers.com",
"top.gg",
"disboard.org",
"discordstatus.com",
"discord.media",
"discord-app.net",
"steamcommunity.com",
"steampowered.com",
"store.steampowered.com",
"help.steampowered.com",
"steamstatic.com",
"epicgames.com",
"store.epicgames.com",
"blizzard.com",
"battle.net",
"playstation.com",
"xbox.com",
"ubisoft.com",
"ea.com",
"roblox.com",
"ro.blox.com",
"minecraft.net",
"youtube.com",
"youtu.be",
"twitch.tv",
"twitter.com",
"x.com",
"instagram.com",
"reddit.com",
"facebook.com",
"tiktok.com",
"linkedin.com",
"github.com",
"githubusercontent.com",
"spotify.com",
"spotify.link",
"tenor.com",
"giphy.com",
"imgur.com",
"wikipedia.org",
"stackoverflow.com",
"google.com",
"linktr.ee",
"carrd.co",
"soundcloud.com",
"amazon.com",
"netflix.com",
"adobe.com",
"microsoft.com",
"apple.com",
"paypal.com",
"paypal.me",
"g.co",
"bit.ly",
"t.me",
"gitlab.com",
"medium.com",
"dev.to",
"behance.net",
"dribbble.com",
"pinterest.com",
"tenor.com",
"giphy.com",
"imgur.com",
"wikipedia.org",
"discord-transcript.xouxou-hosting.fr"
],
"suspicious_keywords": [
"nitro",
"gift",
"steam",
"free",
"giveaway",
"airdrop",
"billing",
"promotions",
"claim",
"bonus",
"event",
"acc",
"skin",
"promo",
"discord",
"support",
"badge",
"boost",
"premium",
"reward",
"winner",
"verify",
"official",
"unclaimed"
],
"high_risk_keywords": [
"nitro",
"gift",
"event",
"claim",
"airdrop",
"generator",
"stealer",
"grabber",
"hack"
],
"suspicious_tlds": [
".xyz",
".ru",
".cn",
".top",
".gq",
".tk",
".ml",
".ga",
".cf",
".shop",
".club",
".online",
".fun",
".info",
".site",
".click",
".link",
".monster",
".quest",
".pw",
".icu",
".buzz",
".cam",
".live",
".store",
".website",
".today",
".space",
".bid",
".date"
],
"safe_targets": [
"discord.com",
"discord.gift",
"steampowered.com",
"steamcommunity.com",
"discord.gg",
"epicgames.com",
"roblox.com",
"spotify.com",
"spotify.link",
"youtube.com",
"youtu.be",
"twitch.tv",
"twitter.com",
"x.com",
"instagram.com",
"reddit.com",
"facebook.com",
"tiktok.com",
"linkedin.com",
"github.com",
"githubusercontent.com",
"tenor.com",
"giphy.com",
"imgur.com",
"wikipedia.org",
"ro.blox.com",
"minecraft.net",
"netflix.com",
"adobe.com",
"microsoft.com",
"apple.com",
"paypal.com"
],
"typosquat_targets": [
"discord",
"steam",
"roblox",
"nitro",
"spotify",
"gift",
"epicgames",
"microsoft",
"google",
"paypal",
"disboard"
]
}

Lorsqu’une menace est confirmée par le scanner, Lyxios génère instantanément une alerte détaillée dans le canal privé de surveillance de notre équipe.


Exemple de l'embed envoyé dans le salon de surveillance

L’alerte se présente sous la forme d’un Embed riche accompagné d’une vue interactive persistante (boutons) permettant d’agir à la vitesse de l’éclair :

BoutonStyle du BoutonRôle & Fonctionnement
Supprimer🗑️ SupprimerSupprime instantanément le message suspect du salon d’origine pour protéger les membres. Ce bouton ne sera utilisé qu’en cas avéré.
Timeout (1h)⏳ Timeout (1h)Exclut temporairement l’auteur du message pendant 1 heure pour stopper immédiatement l’attaque. Ce bouton ne sera utilisé qu’en cas avéré.
Bannir🔨 BannirBannit définitivement l’utilisateur du serveur d’origine, supprime son message et désactive les boutons de l’alerte. Ce bouton est utilisé en cas extrême de spam, de phishing, de raid ou autre.
Faux Positif✅ Faux PositifSupprime simplement le log d’alerte de notre salon de surveillance s’il s’agit d’une erreur de détection.

En complément des boutons de l’alerte, les administrateurs du bot disposent de puissantes commandes textuelles de modération et de diagnostic.

Cette commande permet d’envoyer un message d’alerte de sécurité rédigé de manière professionnelle en message privé à l’owner du serveur concerné.

  • Syntaxe : !prevenir <message_id> [raison] (ou alias !p)
  • Fonctionnalités :
    • Identifie automatiquement le propriétaire du serveur d’origine.
    • Envoie un récapitulatif clair contenant la nature de la menace et le contenu du message suspect censuré.
    • Insère un lien d’accès direct vers le message d’origine si celui-ci existe encore.
    • Fournit des conseils de modération et un lien direct vers notre serveur support.
; Exemple d'exécution de la commande
!prevenir 123456789012345678 Spam intensif de faux liens Nitro.
; Retour du bot
✅ MP envoyé à l'owner (ID: 987654321012345678).

Exemple de l'embed envoyé en message privé à l'owner

Pour prendre une décision de modération éclairée sans avoir à rejoindre le serveur externe, cette commande permet de lire les messages ayant précédé ou suivi le signalement.

  • Syntaxe : !contexte <message_id> [direction] [limit] (ou alias !c)
  • Paramètres :
    • <message_id> : L’identifiant unique du message d’alerte dans le salon de surveillance.
    • [direction] :
      • avant : messages précédant la menace.
      • apres : messages suivant la menace.
      • deux (par défaut) : historique entourant la menace.
    • [limit] : Nombre de messages à récupérer (compris entre 1 et 50, par défaut 5).

Le bot génère un historique clair du salon. Le message d’alerte suspect est marqué par un cercle rouge 🔴 et les messages environnants par un cercle noir .

⚫ 19:41:50 [MembreA] : Salut tout le monde, ça va ?
⚫ 19:41:55 [MembreB] : Hello ! Oui et toi ?
🔴 19:42:05 [AuteurSuspect] : Regardez ce lien c'est trop bien ! cdn-discord.xyz/nitro
⚫ 19:42:10 [MembreA] : C'est quoi ce lien bizarre ?
⚫ 19:42:15 [MembreB] : Clique pas c'est une arnaque !