This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.


For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.

i need a script for .....

Old posts that have not been replied to for several years.
Locked
l
laynuks
Voice
Posts: 35
Joined: Tue May 06, 2003 4:09 pm

i need a script for .....

Post by laynuks »

Hi again :)
These days a lot of abusive ops in Undernet with access level of 400+ sometimes give an access to his extra undernet username to use to massban the channel. For example this abusive op username is John2003 with 450 access level. Now he has an extra username called "Jaguar". Then he gives his other username Jaguar and access level of 100 by doing /msg x adduser #channel Jaguar 100

then he quickly use that username to massban a channel by typing:
/msg x ban #channel *!*@*

* slordax was kicked by X ((Jaguar) this is a mass ban
* schatter was kicked by X ((Jaguar) this is a mass ban
* jerk was kicked by X ((Jaguar) this is a mass ban
* qqq was kicked by X ((Jaguar) this is a mass ban

and this will ban all chatters in the channel then John2003 quickly remove the access of Jaguar by doing
/msg x remuser #channel Jaguar


To get the information who gave a temporary access to username Jaguar before John2003 removes the access so no one can trace him, I must type this command quickly
/msg x access #channel Jaguar -modif

and @X output will say:

-X- USER: Jaguar ACCESS: 100 LU
-X- CHANNEL: #channel -- AUTOMODE: OP
-X- LAST SEEN: 0 days, 06:52:33 ago.
-X- LAST MODIFIED: (John2003) JohnsNick!chat@aol.com (156 days, 20:45:54 ago)
-X- End of access list

This output says that it was last Modified by John2003 the one who gave the 100 access to Jaguar to use to mass ban the channel.

-X- LAST MODIFIED: (John2003) <-- John2003 the one who gave the access and the abusive op

Now, if anyone can make a tcl script that would get or extract the username of the abusive op from the output who gave the temp access to Jaguar and in this example it is "John2003", then make the bot say " john2003 is the one who gave the access" in the channel or msg my nickname in the channel or msg the bot.


note: sometimes they hide this ident of the username by making it invisible so no one can check the info but its okay coz usually the abusive that do this massbans rarely make his extra username invisible


Thank You

LAYNUKS
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

Code: Select all

bind kick - * mass:ban

proc check:whogave {onickx uhost hand ochanx targ rsn} {
global ochanx onickx
 if {([string tolower $targ] == [string tolower $botnick]) && ([string match -nocase $rsn "*this is a mass ban*"])} {
 putquick "PRIVMSG X :access $ochanx $onickx -modif"
 }
}

bind notc - "*LAST MODIFIED:*" check:adder

proc check:adder {nick uhost hand arg dest} {
global ochanx onickx
 set adder [lindex [split $arg] 2] ; set host [lindex [split $arg] 3] ; set interval [join [lrange $arg 4 end]]
putserv "NOTICE $ochanx :$adder added $onickx with host : $host since : $interval"
}
I guess this should do it.
l
laynuks
Voice
Posts: 35
Joined: Tue May 06, 2003 4:09 pm

thanks

Post by laynuks »

Thank You :) I will try it and I will let u know if it works.


LAYNUKS
User avatar
strikelight
Owner
Posts: 708
Joined: Mon Oct 07, 2002 10:39 am
Contact:

Post by strikelight »

Code: Select all

set adder [lindex [split $arg] 2] ; set host [lindex [split $arg] 3] ; set interval [join [lrange $arg 4 end]] 
Should Be:

Code: Select all

 set adder [lindex [split $arg] 2] ; set host [lindex [split $arg] 3] ; set interval [join [lrange [split $arg] 4 end]] 
l
laynuks
Voice
Posts: 35
Joined: Tue May 06, 2003 4:09 pm

question

Post by laynuks »

Hello I just want correct my mistake of my explanation, I wanna point out that the output message from @X for the massban like this one:

slordax was kicked by X ((Jaguar) this is a mass ban


actually the word "this is a mass ban" is only a comment that the abusive type as a comment he made in the command:
/msg x ban #channel *!*@* this is a massban


I am sorry, I forgot to made this clear. So in other words when he type the command usually without the comment is:
/msg x ban #channel *!*@*

the out the output message from @X is:

but the BOT see in shell the message in the channel:
slordax kicked from #channel by X: (Jaguar)



But anyways , I think it would be accurate if the script is base on what message the bot sees or receives. So when the bass ban in the channel happens and the BOT got kicked and get or see the message:

BotNick kicked from #channel by X: (Jaguar)

then a bot script should run to extract the username "Jaguar" then execute this command:

/msg x access #channel Jaguar -modif

the output the bot will see in shell from @X is:

-X (cservice@undernet.org)- USER: Jaguar ACCESS: 499 L
-X (cservice@undernet.org)- CHANNEL: #pagadian -- AUTOMODE: OP
-X (cservice@undernet.org)- LAST SEEN: 0 days, 06:57:45 ago.
-X (cservice@undernet.org)- LAST MODIFIED: (John2003) chat@aol.com (157 days, 20:52:50 ago)
-X (cservice@undernet.org)- End of access list


This output says that it was last Modified by John2003 the one who gave the 100 access to Jaguar to use to mass ban the channel.

LAST MODIFIED: (John2003) <-- John2003 the one who gave the access and the abusive op

Then a tcl script will get or extract the username of the abusive op from the output who gave the temp access to Jaguar and in this example it is "John2003",

then make the bot message my nickname LAYNUKS and my Bot, and the message would say" John2003 is the creator of the extra username"


Again sorry for my error

Thank You

LAYNUKS
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

Code: Select all

##nickname of user who the bot should send the new op adder's nick
set sendwho "YourNickOnIRC"

bind kick - * mass:ban 

proc check:whogave {nick uhost hand ochanx targ rsn} { 
global onickx
 if {([string tolower $targ] == [string tolower $botnick]) && ([string match -nocase $nick x]) && ([string match -nocase "*\\\(*\\\)*" $rsn])} {
 set onickx [string trim [lindex [split $rsn "\\\("] 1] "\\\)"] 
 putquick "PRIVMSG X :access $ochanx $onickx  -modif" 
 } 
} 

bind notc - "*LAST MODIFIED:*" check:adder 

proc check:adder {nick uhost hand arg dest} { 
global sendwho onickx 
 set adder [lindex [split $arg] 2] ; set host [lindex [split $arg] 3] ; set interval [join [lrange [split $arg] 4 end]] 
putserv "PRIVMSG $sendwho :$adder added $onickx with host : $host since : $interval" 
}
tell me if it works.
User avatar
BarkerJr
Op
Posts: 104
Joined: Sun Mar 30, 2003 1:25 am
Contact:

Post by BarkerJr »

Why don't you just not give ops to people you don't trust? With any lag at all, that new user can be deleted before the bot can respond.
l
laynuks
Voice
Posts: 35
Joined: Tue May 06, 2003 4:09 pm

thanks

Post by laynuks »

Thank You Sir_Fz I will let u know if it works :)
Locked