Détection d'attaque (flood)

cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012 - 21 févr. 2008 à 23:28
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 - 29 mars 2008 à 16:28
Bonjour,

Je suis op off sur le serveur voilà/orange depuis peu et je ne connais pas grand chose au scripting MIRC.

J'arrive à me personnaliser mes remotes un peu mais sans trop aller loin.

J'aimerai savoir si il est possible de détecter une attaque de flood sur un salon ?

La plupart de celles que je vois sont de ce type là :

‹ionpovipret›  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team «

‹Hidesiphil95700›  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ®

En gros ils répètent a peu près la même chose avec des pseudos differents.

Y'a t'il une solution pour détecter ce type d'attaque et de faire une action sur les modes du salon ?

Mettre les modes +mi par exemple ?

Merci d'avance pour vos réponses.

19 réponses

RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
22 févr. 2008 à 00:28
ils donnent une bien belle image de leur team ...

tu devrais utiliser un ON TEXT, mais la façon de l'utiliser dépend de ce qui est décrit plus bas

il aurait été interessant que tu colles vraiment leur procédé ... ils envoient plusieurs messages rapidement, ou alors chaque "bot" en envoie qu'un puis part ?
chacun de ces "bots" envoie exactement le même message ?

donne nous plus d'infos et nous essayerons de t'aider
0
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011
22 févr. 2008 à 00:53
ya aussi /mode #salon +f  [<nombre_messages>m#mi]:<secondes> qui peut t'aider, je pense...

Cordialement, uaip.
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
22 févr. 2008 à 06:09
@uaip: ce mode n'est pas dispo sur les serveurs actuels (de vieux bahamut modifiés sauce Orance)

@Surfsp33: dans Psi ou Teamscript 4 tu as des détections assez efficaces. Tu peux détecter ces attaques sur deux "facettes", la première c'est le mec qui répète trop de fois la même chose de suite dans le même message, la seconde c'est la même phrase répétée plusieurs fois par des pseudos différents.
Quoiqu'il en soit, les détecteurs sont plutôt mal vus, et si tu es débutant, c'est déconseillé de te reposer sur des systèmes automatisés au lieu de faire ton boulot d'op à la main...
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
22 févr. 2008 à 06:13
Voilà une partie de l'attaque :

[21:49:07]  Join  Charda - [mailto:guest@710.748.594.556 guest@710.748.594.556] -[362]- #!entremecs.tchat!
[21:49:07] <Charda>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team
[21:49:07] <Charda>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC T
[21:49:07]  Join  emanparhowl04 - [mailto:guest@747.672.735.511 guest@747.672.735.511] -[363]- #!entremecs.tchat!
[21:49:07]   !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!!
[21:49:08]   !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice
[21:49:08]  Join  HOMGORMAR - [mailto:guest@537.720.738.652 guest@537.720.738.652] -[364]- #!entremecs.tchat!
[21:49:08] <HOMGORMAR>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC
[21:49:08] <HOMGORMAR>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team «
[21:49:08]  Join  eougerongar50 - [mailto:guest@1784036165.BG guest@1784036165.BG] -[365]- #!entremecs.tchat!
[21:49:08] × Pseudo Précédent : eougerongar50 ‹-› atchaparhor [mailto:*!*@1784036165.BG *!*@1784036165.BG]
[21:49:08] <eougerongar50>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice T
[21:49:08] <eougerongar50>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team
[21:49:08]  Join  otvoiichewo - [mailto:guest@605.741.595.679 guest@605.741.595.679] -[366]- #!entremecs.tchat!
[21:49:08] <otvoiichewo>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC T
[21:49:08] <otvoiichewo>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!
[21:49:08] <otvoiichewo>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice
[21:49:08]  Join  tteettemich - [mailto:guest@731.667.599.741 guest@731.667.599.741] -[367]- #!entremecs.tchat!
[21:49:08] <tteettemich>  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Ni
[21:49:08] ‹tteettemich›  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice Team ® AOC Team « !!!  !!! Nice T

Etc.. etc...

En fait c'est tout le temps des pseudos differents mais leur phrases commencent toujours pareil.
En gros il faudrait que le script détecte par exemple qu'au bout de 4 fois le même début de phrase d'affilé quelque soit le pseudo il passe en mode +mi .
le salon.

Qu'en pensez-vous ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
22 févr. 2008 à 06:18
Pada j'avais pas vu ta réponse : J'ai TS4 déjà mais le flood est tellement rapide que j'ai l'impression que çà ne le détecte pas, et il ne me propose que "Avertissement" "Kick" "Kickban".

Et tu dis que TS4 détecte la même phrase répétée plusieurs fois par des pseudos différents ? Il me semble pas l'avoir constaté encore mais c'est pas impossible.

Quoi qu'il en soit dans ce genre de situation seul les modes +mi sont efficase pour stopper le flood.
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
22 févr. 2008 à 06:43
Dans ce cas reste sur un truc simple, c'est pas utile de généraliser un remote super tordu qui va détecter tous les floods.
Un truc qui détecte "Nice Team" ou "AOC Team" suffirait non ?

on *:TEXT:*Nice*Team*:#:{ if ($me isop $chan) { mode $chan +im } }

Enfin, le débat dépasse le thread, mais ce n'est pas à des ops à galérer à remettre des sécurités parce qu'il n'y a plus de bots et de geos... On marche sur la tête...
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
22 févr. 2008 à 06:55
Ouai je sais bien mais bon vu qu'ils ont pas l'air motivé pour faire revenir les bots....

Par contre dès fois "Un truc qui détecte "Nice Team" ou "AOC Team" suffirait non ?" ca ne fonctionnera pas car ils font aussi du flood sur d'autre chose que leur team, ils ont aussi prit une dizaine de pseuso et faisait des HL en flood sur ces pseudo sans arrêt.

C'est pour ca que détecter que les 20 premiers caractères d'une phrases se répètent sur plusieurs ligne d'affilé par des pseudos differents serait pas mal. Mais après reste à voir si c'est pas trop compliqué à faire.

Sinon tant pis lol. En tout cas merci de me répondre si vite ^^
0
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011
22 févr. 2008 à 11:48
Une question intéressante aussi, passent-il par proxy ? Gardent-ils toujours les mêmes pseudos (j'en doute) ?

Et PaDa, désolé je ne suis jamais allé sur Voila/Orange

Cordialement, uaip.
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
22 févr. 2008 à 12:09
Jamais la même IP , jamais le même pseudo.

Il faut bien compliquer un peu les choses lol
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
22 févr. 2008 à 12:11
@uaip: Tu n'as rien raté ;)

@Surfsp33 : ce n'est pas très compliqué mais ca ne tient pas en 2 lignes non plus, et sachant que tout ça va changer bientôt, je n'ai pas envie de me prendre la tête à chercher un code qui marche. Cela dit, tu peux t'inspirer de cette source : http://mhc.magnetik.org/?p=flood en plus des sources de TS4 (qui sont sûrement un peu hard à exploiter, je m'en excuse)
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
22 févr. 2008 à 12:34
Oui en effet leur code est pas mal mais il fonctionne uniquement si c'est une même personne qui fait plus de 3 phrases en moins de 6 secondes.

ON *:TEXT:*:#:{
if (%flood. [ $+ [ $chan ] $+ . $+ [ $nick ] ]) {
inc %flood. [ $+ [ $chan ] $+ . $+ [ $nick ] ]
if ((%flood. [ $+ [ $chan ] $+ . $+ [ $nick ] ] > 3) && ($me isop $chan)) kick $chan $nick Anti-flood : plus de 3 phrases en 6 secondes.
}
else set -u6 %flood. [ $+ [ $chan ] $+ . $+ [ $nick ] ] 1
}

Je suis pas sur que çà puisse fonctionner avec le type d'attaque que j'ai présenté.
Car ce sont des pseudos differents a chaque phrase.

Mais t'embête pas Pada, si c'est trop compliqué. Je vais essayer de trouver de mon côté ou si quelqu'un a un code magique à proposer ^^
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
22 févr. 2008 à 13:31
Oui oui, c'est à adapter.
Je te décris ce que je fais, je compte sur toi pour ne pas copier bêtement le code final, mais essayer de bien comprendre ce que je fais et lire le code, sinon ca n'a aucun intérêt.

Regarde, à chaque fois que quelqu'un parle, c'est la variable :
%flood. [ $+ [ $chan ] $+ . $+ [ $nick ] ]
Qui est changée. Donc c'est une variable qui prend en compte le salon et le pseudo. Si tu mets une variable uniquement sur le salon, et que tu ne prends plus en compte le pseudo, alors ca marchera comme ce que tu désirais au départ. Mais il faut bien voir que là, le but est de détecter les gens qui font des c/c par exemple, ce n'est pas tout à fait ce que tu veux. Mais bon, on obtient déjà ça :

ON *:TEXT:*:#:{
if (%flood. [ $+ [ $chan ] ]) {
inc %flood. [ $+ [ $chan ] ]
if
((%flood. [ $+ [ $chan ] ] > 3) && ($me
isop $chan)) kick $chan $nick Anti-flood : plus de 3 phrases en 6
secondes.
}
else set -u6 %flood. [ $+ [ $chan ] ] 1
}

Ensuite, il faudrait se débrouiller pour que ça détecte quand c'est plusieurs fois la même phrase de suite.
On se concentre sur les 20 premières lettres de la phrase, donc $left(la phrase,20). "La phrase", c'est $1-, mais on va enlever les couleurs, ce n'est pas rare que ce genre d'attaques se fasse avec des couleurs différentes. Donc $left($strip($1-),20)

On va à chaque tour stocker cela, et si la phrase d'après est identique, on continue. Sinon, on remet les compteurs à zéro.
Ca donne :

ON *:TEXT:*:#:{
if (%flood. [ $+ [ $chan ] ]) {
var %debut_phrase
$left($strip($1-),20)
if (%debut_phrase = %flood.phrase_d_avant) {
inc %flood. [ $+ [ $chan ] ]
}
else {
%flood.phrase_d_avant = %debut_phrase
}
if
((%flood. [ $+ [ $chan ] ] > 3) && ($me
isop $chan)) {
kick $chan $nick Anti-flood : plus de 3 phrases en 6
secondes.
}
}
else set -u6 %flood. [ $+ [ $chan ] ] 1
}

Bon, presque. Toi tu veux mettre un mode +mi plutot que kicker les pseudos. De plus, on ne va activer ces décomptes que si tu es op sur le salon :

ON *:TEXT:*:#:{
if ($me isop $chan) {
if (%flood. [ $+ [ $chan ] ]) {

var %debut_phrase
$left($strip($1-),20)

if (%debut_phrase = %flood.phrase_d_avant) {
inc %flood. [ $+ [ $chan ] ]

}

else {
set %flood.phrase_d_avant = %debut_phrase

set -u6 %flood. [ $+ [ $chan ] ] 1


}
if
(%flood. [ $+ [ $chan ] ] > 3) {
mode $chan +mi

}

}
else set -u6 %flood. [ $+ [ $chan ] ] 1
}
}

Bon ce n'est pas très bien codé, mais ca devrait marcher.
Si tu rencontres des erreurs ou que tu ne comprends pas quelque chose, n'hésite pas !
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
22 févr. 2008 à 15:24
en plus simplifié, ça donnerait (je pense) :

ON @:TEXT:*:#:{
  if ($nick isop $chan) return
  ;if (!$timer($+(flood.,$nick))) $+(.timerflood.,$nick) 1 3 hdel AntiFloodSystem $nick
  ;tu peux rajouter ce timer si tu trouves que l'anti-flood est trop sévère. Ces bots ne passeront quand même pas qu'il soit présent ou pas.
  hinc -mu4 AntiFloodSystem $nick $iif($hget(AntiFloodMemoire,$nick) == $strip($1-),2,1)
  hadd -mu4 AntiFloodMemoire $nick $strip($1-)
  if ($hget(AntiFloodSystem,$nick) > 2) {
    mode $chan +mi
    $+(.timerMI.,$chan) 1 120 mode $chan -mi
  }
}

la table AntiFloodMemoire sert à vérifier si le pseudo se répète. Si c'est le cas, alors cela a plus de chance de ressembler à du spam.
S'il se répète ne serait-ce qu'une fois en moins de 3sec, c'est considéré comme du spam

idem que PaDa, si t'as des questions, n'hésite pas
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
22 févr. 2008 à 15:43
Peut-être un peu moins lisible pour un débutant, mais jolie amélioration ;-)
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
27 févr. 2008 à 15:41
Merci PaDa & ArKanis.

Désolé de ce retard mais le temps de bien comprendre le code de voir comment il fonctionne et de le laisser en test pour voir.

J'ai quelque peu modifier le code :

ON *:TEXT:*:#:{
  if (%flood. [ $+ [ $chan ] ]) {
    var %debut_phrase $left($strip($1-),20)
    if (%debut_phrase = %flood.phrase_d_avant) {
      inc %flood. [ $+ [ $chan ] ]
    }
    else {
      set %flood.phrase_d_avant = %debut_phrase
      set -u10 %flood. [ $+ [ $chan ] ] 1
    }
    if (%flood. [ $+ [ $chan ] ] > 4) {
      echo -a $timestamp �2;�3;8,13ATTENTION ATTAQUE DE FLOOD DÉTECTÉE SUR $chan !!!
    }
  }
  else set -u10 %flood. [ $+ [ $chan ] ] 1
}

Si je laisse le set ça ne fonctionne pas. Je l'enlève ca marche. Mais je ne sais pas pouquoi.

Je trouve çà parfait , sur ces quelques jours il a fonctionner à merveille.

Juste une question ? si je peux me permettre.

Il se déclanche aussi par contre quand c'est une même personne qui se répète. Il y a possibilité d'éviter çà ?

Encore merci à vous
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
27 févr. 2008 à 18:27
enlève le = sur la ligne du set, il te fait bugguer ton code

pour déclarer une variable, on procède ainsi :
var %variable = valeur (locale)
set %variable valeur (globale)
0
modserv Messages postés 9 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 29 mars 2008
29 mars 2008 à 12:33
j'ai peut etre ce qu'il te faut ma remote detecte les flood bot ( vu qu'il flood la meme seconde que leur arriver ) je suis owner du salon #fashions sur orange c'etai un ancien copain qui me l'avait filet ( goliath ) donc dit moi ce que tu souhaiterais quelle face ( sur ce forum ) et je te la filerais si tu me cherche je suis sur le salon #fashions
0
cs_Surfsp33 Messages postés 44 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 27 février 2012
29 mars 2008 à 12:47
Hello modserv,

Ben je cherche un système qui détecterai une attaque de clones/proxy en flood sur un salon.

Le système que PaDa et RCA ArKanis fonctionne mais ça ne détecte pas toutes les attaques.

Récemment il utilise pas la même procédure pour flooder et je n'ai aucune détection.

Je sais que le salon #!bordeaux! en à un très efficasse mais je ne sais pas qui l'a codé.

Merci d'avance en tout cas.

PS : Je suis sur le salon #!bordeaux! quasiment en permanance avec le pseudo Surfsp33.
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
29 mars 2008 à 16:28
Je ne prétends pas faire quelque chose d'exhaustif ou efficace, j'ai trop peu de matière pour coder un truc qui marche à tous les coups. Pour l'antiflood de !Bdx! j'avais dû l'avoir passé un moment, mais je sais pas si j'arriverai à le retrouver.
Au bout d'un moment, si on est envahi de floodeurs, on arrête de se reposer sur les remotes et on prend des dispositions appropriées, non ? :-) Bon courage en tout cas,
0
Rejoignez-nous