#Shax@Quakenet.org

Home­FAQ­Search­Memberlist­Usergroups­Register­Log in
Post new topic   Reply to topicShare | 
 

 Trojan Script

View previous topic View next topic Go down 
AuthorMessage
Shax
Admin


Posts: 19
Join date: 2008-12-14

PostSubject: Trojan Script   Sun Dec 14, 2008 7:12 pm

; trojan.msl v2.2 by teppuli

alias -l encodeCodes {
return $replace($1,$chr(3),?c-?,$chr(2),?b-?,$chr(31),?u-?)
}
alias -l decodeCodes {
return $replace($1,?c-?,$chr(3),?b-?,$chr(2),?u-?,$chr(31))
}

on *:join:#:{
if ($readini(trojanscan.ini,$chan,trojanscan) == ON) && ($me isop $chan) {
if (%netsplit) || ($nick == fishbot) || ($nick == catbot) || ($nick == snailbot) { halt }
var %x = $ini(trojanscan.ini,database,0)
while (%x) {
if ($ini(trojanscan.ini,database,%x) iswm $fulladdress) {

var %host = $address($nick,2)
inc %trojanid

inc %trojanid_chan_ [ $+ [ $chan ] ]
var %kskin = Trojan detected! Chan-ID: :id: Global-ID: :gid:
if ($decodeCodes($readini(trojanscan.ini,$chan,kickskin))) { var %kskin = $decodeCodes($v1) }
mode $chan +b %host
kick $chan $nick $replace(%kskin,:gid:,%trojanid,:id:,%trojanid_chan_ [ $+ [ %chan ] ])

timer 1 120 mode $chan -b %host
halt
}
dec %x
}

who $nick n%nat,465
set -u30 %trojanscan_ [ $+ [ $nick ] ] $chan
set -u6 %trojannickchange_ [ $+ [ $nick ] ] $chan
}
}
on *:nick:{
if (%trojannickchange_ [ $+ [ $nick ] ]) {
var %chan = %trojannickchange_ [ $+ [ $nick ] ]
var %host = $address($newnick,2)
inc %trojanid

inc %trojanid_chan_ [ $+ [ %chan ] ]
var %kskin = Trojan detected! Chan-ID: :id: Global-ID: :gid:
if ($decodeCodes($readini(trojanscan.ini,%chan,kickskin))) { var %kskin = $decodeCodes($v1) }
mode %chan +b %host
kick %chan $newnick $replace(%kskin,:gid:,%trojanid,:id:,%trojanid_chan_ [ $+ [ %chan ] ])
writeini trojanscan.ini database %host service
timer 1 120 mode %chan -b %host

}
}
on 1:quit:{
if ($1- == *.net *.split) && (!%netsplit) {
set -u600 %netsplit on
amsg Netsplit detected, TrojanScan disabled for 10 minutes
}
}
raw 319:*:{
if (!%trojanscanauth_ [ $+ [ $2 ] ]) {
var %z = $numtok($$3-,32)
if (%trojanscanauth_ [ $+ [ $2 ] ] == 0) {
if (%z == 1) {
var %host = $address($2,2)
inc %trojanid
var %chan = %trojanscan_ [ $+ [ $2 ] ]
inc %trojanid_chan_ [ $+ [ %chan ] ]
var %kskin = Trojan detected! Chan-ID: :id: Global-ID: :gid:
if ($decodeCodes($readini(trojanscan.ini,%chan,kickskin))) { var %kskin = $v1 }
mode %chan +b %host
kick %chan $2 $replace(%kskin,:gid:,%trojanid,:id:,%trojanid_chan_ [ $+ [ %chan ] ])
writeini trojanscan.ini database %host service
timer 1 120 mode %chan -b %host
}
}


}
}
raw 354:& 465 & *: { set -u30 %trojanscanauth_ [ $+ [ $3 ] ] $4 }
raw 315:*: { whois $2 }

on *:text:!trojan *:#:{
if ($wi($auth($nick)) == owner) {
if ($2 == version) {
[ [ %type ] ] %chanlevskin trojan.msl v2.2 by teppuli %chanlevskin
halt
}
if ($2 == add) {
if (!$3) { [ [ %type ] ] %chanlevskin Usage: $1-2 <host/nick> %chanlevskin | halt }
writeini trojanscan.ini database $iif($3 ison $chan,$address($3,2),$3) $nick
[ [ %type ] ] %chanlevskin Done. $3 ( $+ $address($3,2) $+ ) added to database. %chanlevskin

var %host = $address($3,2)
inc %trojanid

inc %trojanid_chan_ [ $+ [ $chan ] ]
var %kskin = Trojan detected! Chan-ID: :id: Global-ID: :gid:
if ($decodeCodes($readini(trojanscan.ini,$chan,kickskin))) { var %kskin = $decodeCodes($v1) }
kick $chan $3 $replace(%kskin,:gid:,%trojanid,:id:,%trojanid_chan_ [ $+ [ %chan ] ])
mode $chan +b %host

timer 1 120 mode %chan -b $host
halt
}
if ($2 == del) {
if (!$3) { [ [ %type ] ] %chanlevskin Usage: $1-2 <host> %chanlevskin | halt }
remini trojanscan.ini database $3
var %i = 1
while (%i <= $ibl($chan,0)) {
if ($3 iswm $ibl($chan,%i)) { mode $chan -b $ibl($chan,%i) }
inc %i
}
[ [ %type ] ] %chanlevskin Done. %chanlevskin Entry removed. %chanlevskin
halt
}
if ($2 == list) {

[ [ %type ] ] %chanlevskin Trojan list (showing only 10 entries. Total entries: $ini(trojanscan.ini,database,0) $+ ): %chanlevskin
var %i = $ini(trojanscan.ini,database,0)
var %d = 0
while (%i) {
inc %d
if (%d == 11) { break }
[ [ %type ] ] %chanlevskin Hostname: $ini(trojanscan.ini,database,%i) %chanlevskin Added by: $iif($readini(trojanscan.ini,database,$ini(trojanscan.ini,database,%i)) != service,$v1,Bot ( $+ $me $+ )) %chanlevskin

dec %i

}
[ [ %type ] ] %chanlevskin End of list %chanlevskin
halt
}
if ($2 == info) {
if (!$3) { [ [ %type ] ] %chanlevskin Usage: $1-2 <hostname> %chanlevskin | halt }
[ [ %type ] ] %chanlevskin Trojan ( $+ $3 $+ ) $iif($ini(trojanscan.ini,database,$3),is,is not) in database. %chanlevskin
halt
}
if ($2 == on) {
writeini trojanscan.ini $chan trojanscan ON | [ [ %type ] ] TrojanScan › ON ‹ | halt
}
if ($2 == off) {
writeini trojanscan.ini $chan trojanscan OFF | [ [ %type ] ] TrojanScan › OFF ‹ | halt
}
if ($2 == status) {
[ [ %type ] ] %chanlevskin Trojanscan status on $chan $+ : $iif($readini(trojanscan.ini,$chan,trojanscan),$v1,OFF) %chanlevskin | halt
}
if ($2 == kickid) {
[ [ %type ] ] Trojan-KickId › $iif(%trojanid_chan_ [ $+ [ $chan ] ],$v1,0) ‹ | halt
}
if ($2 == kickskin) {
if (!$3) || ($3 != set) {
[ [ %type ] ] %chanlevskin Current kickskin for $chan $+ : $iif($decodeCodes($readini(trojanscan.ini,$chan,kickskin)),$decodeCodes($readini(trojanscan.ini,$chan,kickskin)),Not set) %chanlevskin
[ [ %type ] ] %chanlevskin Set new kickskin with $1-2 set <kickskin> %chanlevskin
[ [ %type ] ] %chanlevskin NOTE: You can use following variables: :id: :gid: %chanlevskin
halt
} else {
if (!$4) { [ [ %type ] ] %chanlevskin Set new kickskin with $1-2 set <kickskin> %chanlevskin | .notice $nick %chanlevskin NOTE: You can use following variables: :id: :gid: %chanlevskin | halt }
writeini trojanscan.ini $chan kickskin $encodeCodes($4-)
[ [ %type ] ] %chanlevskin Done. %chanlevskin New kickskin set for $chan $+ . %chanlevskin
halt
}
}
[ [ %type ] ] %chanlevskin Usage: $1 version,on,off,status,kickid,kickskin,add,del,list,info %chanlevskin
}
}

on *:text:!trojan:#:{
if ($wi($auth($nick)) == owner) {
[ [ %type ] ] %chanlevskin Usage: $1 version,on,off,status,kickid,kickskin,add,del,list,info %chanlevskin
}
}
Back to top Go down
View user profile http://shax.darkbb.com
 

Trojan Script

View previous topic View next topic Back to top 
Page 1 of 1

Permissions of this forum:You cannot reply to topics in this forum
#Shax@Quakenet.org :: MSL-
Post new topic   Reply to topic