Anti-Frenzy v1.0 par Anonyme
Catégorie : Sécurité - protection
84 téléchargements
Description :

Description :

Anti-Frenzy est un anti-flood universel pouvant être appliqué sur des commandes n'en possédant pas, et il peut également faire office de script anti-badwords.

Vous pouvez définir une liste de commandes ou de masques de reconnaissance qui seront surveillés par Anti-Frenzy, comme par exemple :
{!*}
{.*}
{!kick *}
{* connard *}

D'autre part, Anti-Frenzy peut être utilisé comme un anti-flood complémentaire pour des commandes en possédant déjà un. Supposons que vous ayez réglé l'anti-flood de la commande !truc pour ne pas autoriser plus de 5 commandes en 3mn, donc rien n'empêche un utilisateur de taper 5 fois !truc en 1 seconde et ce n'est pas forcément une bonne chose.
Il vous suffit de paramétrer Anti-Frenzy pour qu'il intervienne si la commande !truc est utilisée disons 2 fois en moins d'1 seconde.

Anti-Frenzy permet d'appliquer une riposte graduée en plusieurs étapes.
Par exemple le premier abus peut être sanctionné d'un 1er avertissement + devoice, le second d'un 2ème avertissement + devoice + dehalfop + deop, le troisième d'un kick, le 3ème d'un ban, etc...

Gardez à l'esprit qu'Anti-Frenzy ne bloque pas l'exécution des commandes en cas de flood, mais il peut ignorer l'offenseur pendant quelques secondes (paramétrable).

Pour désactiver Anti-Frenzy sur un chan en particulier, vous pouvez taper la ligne suivante en partyline :
TCL
.chanset #nomduchan -AntiFrenzy


Ou pour le réactiver :
TCL
.chanset #nomduchan +AntiFrenzy


AntiFrenzy est activé par défaut sur tous les chans enregistrés sur l'eggdrop.

Anti-Frenzy est conçu pour fonctionner sur sur les serveurs qui possèdent un service du nom de ChanServ (Anope ou Epona) mais il devrait pouvoir être utilisé sur d'autres types de serveur moyennant un minimum de modifications.


Détails techniques :

Les nouveaux déclencheurs sont ajoutés manuellement dans le script selon la syntaxe suivante :
{{#chan} {*mask*} {regexp/noregexp} {num:sec} {cm} {bantime} {cible :warn1} {cible :warn2} {kick msg} {ban msg}}
  • #chan peut valoir le nom du chan sur lequel vous voulez que cela s'applique ou peut valoir global si vous voulez que le déclencheur soit valable sur tous les chans sur lesquels Anti-Frenzy est actif.
  • *mask* contient le masque de détection. Vous pouvez utiliser des jokers ou des expressions régulières.
  • regexp/noregexp spécifie si le masque utilise des expressions régulières (regexp) ou non. Peut valoir regexp ou noregexp.
  • num:sec = combien de fois maximum:en combien de secondes. Détermine le nombre de fois qu'on tolère *mask* en un temps donné avant d'appliquer des contre-mesures.
    Peut valoir 0:0 auquel cas le déclencheur sera considéré comme un badword et les contre-mesures seront appliquées immédiatement à chaque déclenchement.
  • cm = contre-mesures. Voici une liste des contre-mesures disponibles :
    • w1 = warn1 (1er message d'avertissement)
    • w2 = warn2 (2ème message d'avertissement)
    • k = kick
    • do = deop
    • dh = dehalfop
    • dv = devoice
    • b = ban
    • f = flag (les flags -alo+dr sont appliqués sur le handle de l'user (qui est lui-même créé si nécessaire), puis il est déopé et déhalfopé.
      Les flags +dr ont pour effet d'empêcher le coupable d'être opé ou halfopé à l'avenir.
    Vous pouvez utiliser des combinaisons :
    w1do = warn1 + deop
    dodhdv = deop + dehalfop + devoice
    ...
    Vous pouvez cumuler autant de contre-mesures que vous le souhaitez et les combiner comme bon vous semble : {w1 dodhdv k w2f kb}
  • bantime = durée du ban en secondes.
  • cible :warn1 et cible :warn2 sont les 2 messages d'avertissement correspondant aux contre-mesures w1 et w2. La cible du message doit être spécifiée.
    Par exemple, pour afficher le message sur le chan on fera :
    {$chan :attention, ceci est un message d'avertissement !}
    ou en privé à l'utilisateur :
    {$nick :attention, te voilà averti}
    ou même envoyer une commande aux services :
    {ChanServ :DEPROTECT $chan $nick}
    Veuillez noter qu'il est important de respecter l'espace suivi des ":" après la cible du message.
  • kick msg est le message de kick qui sera utilisé.
  • ban msg est le message de ban qui sera utilisé.

Exemple détaillé :
{{global} {!*} {noregexp} {2:3} {w1do k kb} {600} {$chan :$nick > du calme avec les commandes} {$chan :$nick > dernier avertissement} {tiens, prends ça !} {et ça !}}
Explication de l'exemple :
On surveille toutes les commandes commençant par "!" sur TOUS les chans où Anti-Frenzy est actif (global).
On autorise au maximum 2 commandes en 3 secondes.
La première transgression déclenchera un avertissement + déop de la personne (w1do).
Le message d'avertissement suivant sera affiché sur le chan :
"$nick > du calme avec les commandes" (où $nick sera remplacé par le pseudo de l'utilisateur qui a commis l'abus).
La deuxième transgression déclenchera un kick (k) et la troisième un ban (b) d'une durée de 600 secondes.
Notez que si vous souhaitez utiliser les caractères { ou } dans les messages d'avertissement, le message de kick, le message de ban ou dans le nom du chan, vous devez antislasher ces caractères comme ceci : \{ \}



post support : http://www.eggdrop.fr/board/showthread.php?tid=412

Changelog

Version 1 par (31/05/2009)
84 téléchargements

Description :

Anti-Frenzy est un anti-flood universel pouvant être appliqué sur des commandes n'en possédant pas, et il peut également faire office de script anti-badwords.

Vous pouvez définir une liste de commandes ou de masques de reconnaissance qui seront surveillés par Anti-Frenzy, comme par exemple :
{!*}
{.*}
{!kick *}
{* connard *}

D'autre part, Anti-Frenzy peut être utilisé comme un anti-flood complémentaire pour des commandes en possédant déjà un. Supposons que vous ayez réglé l'anti-flood de la commande !truc pour ne pas autoriser plus de 5 commandes en 3mn, donc rien n'empêche un utilisateur de taper 5 fois !truc en 1 seconde et ce n'est pas forcément une bonne chose.
Il vous suffit de paramétrer Anti-Frenzy pour qu'il intervienne si la commande !truc est utilisée disons 2 fois en moins d'1 seconde.

Anti-Frenzy permet d'appliquer une riposte graduée en plusieurs étapes.
Par exemple le premier abus peut être sanctionné d'un 1er avertissement + devoice, le second d'un 2ème avertissement + devoice + dehalfop + deop, le troisième d'un kick, le 3ème d'un ban, etc...

Gardez à l'esprit qu'Anti-Frenzy ne bloque pas l'exécution des commandes en cas de flood, mais il peut ignorer l'offenseur pendant quelques secondes (paramétrable).

Pour désactiver Anti-Frenzy sur un chan en particulier, vous pouvez taper la ligne suivante en partyline :
TCL
.chanset #nomduchan -AntiFrenzy


Ou pour le réactiver :
TCL
.chanset #nomduchan +AntiFrenzy


AntiFrenzy est activé par défaut sur tous les chans enregistrés sur l'eggdrop.

Anti-Frenzy est conçu pour fonctionner sur sur les serveurs qui possèdent un service du nom de ChanServ (Anope ou Epona) mais il devrait pouvoir être utilisé sur d'autres types de serveur moyennant un minimum de modifications.


Détails techniques :

Les nouveaux déclencheurs sont ajoutés manuellement dans le script selon la syntaxe suivante :
{{#chan} {*mask*} {regexp/noregexp} {num:sec} {cm} {bantime} {cible :warn1} {cible :warn2} {kick msg} {ban msg}}
Exemple détaillé :
{{global} {!*} {noregexp} {2:3} {w1do k kb} {600} {$chan :$nick > du calme avec les commandes} {$chan :$nick > dernier avertissement} {tiens, prends ça !} {et ça !}}
Explication de l'exemple :
On surveille toutes les commandes commençant par "!" sur TOUS les chans où Anti-Frenzy est actif (global).
On autorise au maximum 2 commandes en 3 secondes.
La première transgression déclenchera un avertissement + déop de la personne (w1do).
Le message d'avertissement suivant sera affiché sur le chan :
"$nick > du calme avec les commandes" (où $nick sera remplacé par le pseudo de l'utilisateur qui a commis l'abus).
La deuxième transgression déclenchera un kick (k) et la troisième un ban (b) d'une durée de 600 secondes.
Notez que si vous souhaitez utiliser les caractères { ou } dans les messages d'avertissement, le message de kick, le message de ban ou dans le nom du chan, vous devez antislasher ces caractères comme ceci : \{ \}



post support : http://www.eggdrop.fr/board/showthread.php?tid=412