egghelp.org community Forum Index
[ egghelp.org home | forum home ]
egghelp.org community
Discussion of eggdrop bots, shell accounts and tcl scripts.
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Melts NickChecker against flood bots
Goto page 1, 2, 3  Next
 
Post new topic   Reply to topic    egghelp.org community Forum Index -> Script Support & Releases
View previous topic :: View next topic  
Author Message
[R]
Halfop


Joined: 30 Apr 2004
Posts: 98

PostPosted: Sun Oct 24, 2004 10:29 am    Post subject: Melts NickChecker against flood bots Reply with quote

Hello,

Hm Well.. I have seen a script... called as Nickchecker...
What do you think about this script?
Is it good? Or does the script ban normal users?

Write what do you think about this script .. maybe I install it.


Greets & Thx

[R]


############################################
Meltdowns NickChecker V0.1 (25-09-2004)

http://scripts.udp.at
############################################
Back to top
View user's profile Send private message
Alchera
Revered One


Joined: 11 Aug 2003
Posts: 3344
Location: Ballarat Victoria, Australia

PostPosted: Sun Oct 24, 2004 10:47 am    Post subject: Reply with quote

How about you install it and inform us if it's good? Wink
_________________
Add [SOLVED] to the thread title if your issue has been.
Search | FAQ | RTM
Back to top
View user's profile Send private message Visit poster's website
awyeah
Revered One


Joined: 26 Apr 2004
Posts: 1580
Location: Switzerland

PostPosted: Sun Oct 24, 2004 10:49 am    Post subject: Reply with quote

Well what does the script do? Check nicks? Check bad nicks? or something? If so I can give you other better scripts than this.
_________________
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
[R]
Halfop


Joined: 30 Apr 2004
Posts: 98

PostPosted: Sun Oct 24, 2004 10:50 am    Post subject: Reply with quote

Laughing Not a good idea... I have a big channel and dont want a kick channel Laughing


.. hmm What do you think? Rolling Eyes

Edit:

Code:
#################################################################
# Meltdowns NickChecker V0.1 (25-09-2004)                         #
#                                                               #
# http://scripts.udp.at                                         #
#                         #
# Script detects suspicious nicknames on /join and bans them.   #
#                        #
# It detects the nicks by following consonants, which make   #
# no sense. Rate is at about 90%.            #
#                        #
# Activate it for a chan with .chanset #CHANNEL +nickcheck   #
#                                                               #
# Contact: meltdown@gmx.at | #meltdown on quakenet              #
#                                                               #
# [! LEAVE THESE CREDITS INTACT. !] thx...                      #
#                        #
#################################################################

#
# Bantime in seconds
set check(bantime) "600"


bind join - * checkthisnick

setudef flag nickcheck

set check(kmessage) "You were detected as a Spam/Flood-bot. To join this channel, pls change your nick to something... erm...normal"

set check(cons) "bcdfghjklmnpqrstvxyz"
set check(good) "tt ll ss"
set check(affixture) "off bnc \[ \] afk"

proc checkthisnick { nick uhois hand chan} {
global check
if {[lsearch -exact [channel info $chan] +nickcheck] == -1} {return 0}
set const_count 0
set score 0
set txt [list $nick]

# basic l337-translat0r
        set txt [string map "0 o 1 l 3 e 7 t 4 a" $txt]

# Remove double-cons
   foreach x [split $check(good)] {
      set txt [string map -nocase "$x \"\"" $txt]
   }
# Remove "off","bnc" etc and lower score
   foreach x [split $check(affixture)] {
      if {[string match -nocase *$x* $txt]} {
         set txt [string map -nocase "$x \"\"" $txt]
         set score [expr $score - 10]
      }
   }

# Check cons frequency
   for {set x 0} {$x<[string length $txt]} {incr x} {
      if {[string last [string index $txt $x] $check(cons)] > -1} {
         incr const_count
         if {$const_count >= 3} { set score [expr $score+10] }
      } else {
         set const_count 0
      }
   
   }
  if {$score >= 30} {
   putlog "Found suspicious nickname in $chan: $nick ($score)"
   pushmode $chan +b "$nick!*@*"
   flushmode $chan
   putkick $chan $nick "$check(kmessage) -blub"
   utimer $check(bantime) "[list pushmode $chan -b "$nick!*@*"]"
  }
}


The script.

Ps: I need a script that detect generated nicks like this:

Quote:
w0v43



... and BAN them.
Back to top
View user's profile Send private message
Alchera
Revered One


Joined: 11 Aug 2003
Posts: 3344
Location: Ballarat Victoria, Australia

PostPosted: Sun Oct 24, 2004 10:53 am    Post subject: Reply with quote

awyeah wrote:
If so I can give you other better scripts than this.

I wouldn't be making such a broad statement as this without first testing the script yourself to see just what it does or how good it is. You're also hinting your scripts are better than anyone else's; possibly not the case.
_________________
Add [SOLVED] to the thread title if your issue has been.
Search | FAQ | RTM
Back to top
View user's profile Send private message Visit poster's website
demond
Revered One


Joined: 12 Jun 2004
Posts: 3073
Location: San Francisco, CA

PostPosted: Sun Oct 24, 2004 11:03 am    Post subject: Reply with quote

I've been using this (as part of spambuster.tcl) for a pretty effective detection of random or semi-randomly generated nicks, commonly used by spammers and floodbots:

Code:

proc sb:score {str} {
   set score 0
   set vowel "aeiouy"
   set cnant "bcdfghjklmnpqrstvwxz"
   set other "{}\\\[\\\]-_^`|\\\\"
   set digit "0123456789"
   set str [string tolower $str]
   incr score [llength [regexp -all -inline \[$vowel\]{3,} $str]]
   incr score [llength [regexp -all -inline \[$cnant\]{3,} $str]]
   incr score [llength [regexp -all -inline \[$other\]{2,} $str]]
   incr score [llength [regexp -all -inline \[$digit\]{2,} $str]]
   incr score [llength [regexp -all -inline \[$vowel$other\]{4,} $str]]
   incr score [llength [regexp -all -inline \[$cnant$other\]{4,} $str]]
   incr score [llength [regexp -all -inline \[$vowel$digit\]{4,} $str]]
   incr score [llength [regexp -all -inline \[$cnant$digit\]{4,} $str]]
   incr score [llength [regexp -all -inline \[$other$digit\]{3,} $str]]
   incr score $score
}
Back to top
View user's profile Send private message Visit poster's website
awyeah
Revered One


Joined: 26 Apr 2004
Posts: 1580
Location: Switzerland

PostPosted: Sun Oct 24, 2004 11:09 am    Post subject: Reply with quote

Demond would this only give randomnly generated nicks? with vowels or without vowels?

Because I am using one currently on a large IRC channel meaning various of nicks, join and part in secs so I need this to be perfect and not kick innocent users.

I am just using something simple as this which I made, the same combinations in 'nonsensenick' (one of the addons of the mIRC Oz Script).

Code:

set userident [string trimleft [string tolower [lindex [split $uhost "@"] 0]] "~"]
  if {([string length $userident] >= 4) && ([string length $nick] >= 7) && ([string length $nick] <= 11) && (![regexp -nocase "a" $nick]) && (![regexp -nocase "e" $nick]) && (![regexp -nocase "i" $nick]) && (![regexp -nocase "o" $nick]) && (![regexp -nocase "u" $nick]) && (![regexp -nocase "mrs" $nick]) && (![regexp -nocase "mr" $nick]) && (![regexp -nocase "xyz" $nick]) && (![regexp -nocase "dj" $nick]) && (![regexp -nocase "chr" $nick]) && (![regexp -nocase "fr" $nick]) && (![regexp -nocase "msn" $nick]) && (![regexp -nocase "dr" $nick]) && (![regexp "\[-|_aeiouxyz0\]" $nick]) && (([regexp {^[^aeiou_^-`]+$} $nick] && [regexp {[^0-9]?$} $nick]) || [regexp {^[A-z][0-9]{1,}$} $nick] || [regexp {^(\w){3}(\d){2}\w(\d){3}$} $nick] || [regexp "_\[0-9\]\[0-9\]$" $nick] || [regexp "^\[a-z\]\[a-z\]-" $nick] || [regexp "\[0-9\]\[0-9\]\[0-9\]$" $nick] || [regexp -nocase "gv" $nick] || [regexp -nocase "gz" $nick] || [regexp -nocase "qb" $nick] || [regexp -nocase "qc" $nick] || [regexp -nocase "qd" $nick] || [regexp -nocase "qf" $nick] || [regexp -nocase "qg" $nick] || [regexp -nocase "qh" $nick] || [regexp -nocase "qk" $nick] || [regexp -nocase "qm" $nick] || [regexp -nocase "qn" $nick] || [regexp -nocase "qp" $nick] || [regexp -nocase "qj" $nick] || [regexp -nocase "qr" $nick] || [regexp -nocase "qs" $nick] || [regexp -nocase "qt" $nick] || [regexp -nocase "qw" $nick] || [regexp -nocase "qv" $nick] || [regexp -nocase "qx" $nick] || [regexp -nocase "qz" $nick] || [regexp -nocase "xd" $nick] || [regexp -nocase "xf" $nick] || [regexp -nocase "xg" $nick] || [regexp -nocase "xh" $nick] || [regexp -nocase "xk" $nick] || [regexp -nocase "xm" $nick] || [regexp -nocase "xn" $nick] || [regexp -nocase "xq" $nick] || [regexp -nocase "xr" $nick] || [regexp -nocase "xt" $nick] || [regexp -nocase "xv" $nick] || [regexp -nocase "xz" $nick] || [regexp -nocase "zb" $nick] || [regexp -nocase "zc" $nick] || [regexp -nocase "zd" $nick] || [regexp -nocase "zf" $nick] || [regexp -nocase "zh" $nick] || [regexp -nocase "zm" $nick] || [regexp -nocase "zq" $nick] || [regexp -nocase "zr" $nick] || [regexp -nocase "zt" $nick] || [regexp -nocase "zv" $nick] || [regexp -nocase "zx" $nick] || [regexp -nocase "kz" $nick] || [regexp -nocase "lx" $nick] || [regexp -nocase "vb" $nick] || [regexp -nocase "vf" $nick] || [regexp -nocase "vg" $nick] || [regexp -nocase "vh" $nick] || [regexp -nocase "vk" $nick] || [regexp -nocase "vm" $nick] || [regexp -nocase "vn" $nick] || [regexp -nocase "vq" $nick] || [regexp -nocase "vx" $nick] || [regexp -nocase "vw" $nick] || [regexp -nocase "wj" $nick] || [regexp -nocase "jwm" $nick] || [regexp -nocase "ql" $nick] || [regexp -nocase "qy" $nick] || [regexp -nocase "xb" $nick] || [regexp -nocase "xc" $nick] || [regexp -nocase "xj" $nick] || [regexp -nocase "xl" $nick] || [regexp -nocase "xp" $nick] || [regexp -nocase "xs" $nick] || [regexp -nocase "xw" $nick] || [regexp -nocase "zg" $nick] || [regexp -nocase "zj" $nick] || [regexp -nocase "zk" $nick] || [regexp -nocase "zl" $nick] || [regexp -nocase "zn" $nick] || [regexp -nocase "zp" $nick] || [regexp -nocase "zs" $nick] || [regexp -nocase "zw" $nick] || [regexp -nocase "zx" $nick] || [regexp -nocase "zy" $nick] || [regexp -nocase "vc" $nick] || [regexp -nocase "vd" $nick] || [regexp -nocase "wx" $nick] || [regexp -nocase "vp" $nick] || [regexp -nocase "vs" $nick] || [regexp -nocase "vt" $nick] || [regexp -nocase "vp" $nick] || [regexp -nocase "vy" $nick] || [regexp -nocase "vz" $nick] || [regexp -nocase "wq" $nick] || [regexp -nocase "wx" $nick] || [regexp -nocase "wz" $nick]) > 0} {


Look's messy right?
I'll change it into a list and would use a foreach loop to do a string match on each element that should do it as well.
_________________
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
[R]
Halfop


Joined: 30 Apr 2004
Posts: 98

PostPosted: Sun Oct 24, 2004 11:14 am    Post subject: Reply with quote

Scripts in english!
Not that [censored].. sry Rolling Eyes
Spambuster.tcl sucks Rolling Eyes
Back to top
View user's profile Send private message
Alchera
Revered One


Joined: 11 Aug 2003
Posts: 3344
Location: Ballarat Victoria, Australia

PostPosted: Sun Oct 24, 2004 11:33 am    Post subject: Reply with quote

Und NickChecker ist Deutsch? Nein!

***Edited***

Code:
#################################################################
# Meltdowns NickChecker V0.1 (25-09-2004)
#
# http://scripts.udp.at
#
# Script detects suspicious nicknames on /join and bans them.
#
# It detects the nicks by following consonants, which make
# no sense. Rate is at about 90%.
#
# Activate it for a chan with .chanset #CHANNEL +nickcheck
#
# Contact: meltdown@gmx.at | #meltdown on quakenet
#
# [! LEAVE THESE CREDITS INTACT. !] thx...
#
#################################################################

[R] It would help if you actually read the information at the top of these scripts. Razz
_________________
Add [SOLVED] to the thread title if your issue has been.
Search | FAQ | RTM


Last edited by Alchera on Sun Oct 24, 2004 11:44 am; edited 1 time in total
Back to top
View user's profile Send private message Visit poster's website
[R]
Halfop


Joined: 30 Apr 2004
Posts: 98

PostPosted: Sun Oct 24, 2004 11:37 am    Post subject: Reply with quote

Hallo,

Nein NickChecker von Meld ist english.
Aber spambuster.tcl ist 'ne komische Sprache...


Greets

[R]
Back to top
View user's profile Send private message
demond
Revered One


Joined: 12 Jun 2004
Posts: 3073
Location: San Francisco, CA

PostPosted: Sun Oct 24, 2004 11:38 am    Post subject: Reply with quote

@awyeah:

naturally, you will never have 100% accuracy - neither with your solution nor with mine, not with any other - and innocents are going to be shitlisted; but at least those would be pretty lame innocents Razz

as you might have already noticed, in spambuster I set the default score threshold to 17; based on my experience, I'd say it has a success rate of around 95% (out of 20, 19 are real/potential spammers and 1 is innocent) on a lame channel, and virtually 100% on a channel with clueful ppl only

a "lame innocent" would have an idiotic nick:
Code:

<(saavik> [10:06] spambuster v2.6: spam nick [[[mmm]]]!zzzzzzzzzz@sp124.spidernetbg.com (score: 18)


btw, spambuster counts the whole $nick!$user

as of the score logic, it assigns score points for:

  • 3 or more adjacent vowels
  • 3 or more adjacent consonants
  • 2 or more adjacent nonalphanum chars
  • 2 or more digits
  • and a couple more combinations of the above which you can figure out yourself Razz
Back to top
View user's profile Send private message Visit poster's website
awyeah
Revered One


Joined: 26 Apr 2004
Posts: 1580
Location: Switzerland

PostPosted: Sun Oct 24, 2004 12:05 pm    Post subject: Reply with quote

So how would this be used?

Code:

Would I string match or what?

set spamchecknick [sb:score $nick]

proc sb:score {str} {
   set score 0
   set vowel "aeiouy"
   set cnant "bcdfghjklmnpqrstvwxz"
   set other "{}\\\[\\\]-_^`|\\\\"
   set digit "0123456789"
   set str [string tolower $str]
   incr score [llength [regexp -all -inline \[$vowel\]{3,} $str]]
   incr score [llength [regexp -all -inline \[$cnant\]{3,} $str]]
   incr score [llength [regexp -all -inline \[$other\]{2,} $str]]
   incr score [llength [regexp -all -inline \[$digit\]{2,} $str]]
   incr score [llength [regexp -all -inline \[$vowel$other\]{4,} $str]]
   incr score [llength [regexp -all -inline \[$cnant$other\]{4,} $str]]
   incr score [llength [regexp -all -inline \[$vowel$digit\]{4,} $str]]
   incr score [llength [regexp -all -inline \[$cnant$digit\]{4,} $str]]
   incr score [llength [regexp -all -inline \[$other$digit\]{3,} $str]]
   incr score $score
   return $str
}

_________________
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
demond
Revered One


Joined: 12 Jun 2004
Posts: 3073
Location: San Francisco, CA

PostPosted: Sun Oct 24, 2004 12:19 pm    Post subject: Reply with quote

in spambuster, I use it like this:
Code:

set score [sb:score $nick!$user]

and then take action depending on score
Back to top
View user's profile Send private message Visit poster's website
awyeah
Revered One


Joined: 26 Apr 2004
Posts: 1580
Location: Switzerland

PostPosted: Sun Oct 24, 2004 12:26 pm    Post subject: Reply with quote

kthx, I'll download spambuster as well and check to see how you utilize various score results to what outputs.
_________________
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
[R]
Halfop


Joined: 30 Apr 2004
Posts: 98

PostPosted: Sun Oct 24, 2004 1:02 pm    Post subject: Reply with quote

Hello,

Back ² Topic please...
Can you make Melts nickchecker better, for me?
I like this script .. maybe you can fix it... Rolling Eyes

Thx !! & Greetz

[R]
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    egghelp.org community Forum Index -> Script Support & Releases All times are GMT - 4 Hours
Goto page 1, 2, 3  Next
Page 1 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Forum hosting provided by Reverse.net

Powered by phpBB © 2001, 2005 phpBB Group
subGreen style by ktauber